comparison tests/unit/test_event_controller.py @ 7:1b1296559c31

add test event controller
author Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
date Fri, 17 Sep 2021 17:42:54 +0200
parents
children 6541622b6127
comparison
equal deleted inserted replaced
6:db2ce7097ff3 7:1b1296559c31
1 from unittest import TestCase
2 from dependencies.python.event_controller import *
3
4
5 class TestUnwrapStringParameters(TestCase):
6
7 @staticmethod
8 def create_event(query_string_parameter):
9 event = {
10 "resource": "/sentiment",
11 "path": "/sentiment",
12 "httpMethod": "GET",
13 "isBase64Encoded": False,
14 "queryStringParameters": query_string_parameter
15 }
16
17 return event
18
19 def test_unwrap_sentiment_string_parameters(self):
20 test_cases = {
21 '1': None,
22 '2': {'twitterUser': ''},
23 '3': {'twitterUser': 'dennisconcep'},
24 '4': {'numberOfTweets': ''},
25 '5': {'numberOfTweets': '50'},
26 '6': {'twitterUser': 'dennisconcep', 'numberOfTweets': '50'}
27 }
28
29 expected_results = {
30 '1': {'twitterUser': 'Twitter', 'numberOfTweets': '100'},
31 '2': {'twitterUser': 'Twitter', 'numberOfTweets': '100'},
32 '3': {'twitterUser': 'dennisconcep', 'numberOfTweets': '100'},
33 '4': {'twitterUser': 'Twitter', 'numberOfTweets': '100'},
34 '5': {'twitterUser': 'Twitter', 'numberOfTweets': '50'},
35 '6': {'twitterUser': 'dennisconcep', 'numberOfTweets': '50'}
36 }
37
38 for test_number in test_cases:
39 event = self.create_event(test_cases[test_number])
40 twitter_user, number_of_tweets = unwrap_sentiment_string_parameters(event)
41 expected_twitter_user = expected_results[test_number]['twitterUser']
42 expected_number_of_tweets = expected_results[test_number]['numberOfTweets']
43
44 self.assertEqual(twitter_user, expected_twitter_user)
45 self.assertEqual(number_of_tweets, expected_number_of_tweets)