コード例 #1
0
 def test_unhandled_message_received(self):
     original = UnhandledMessageReceived(
         phone_number="123456789",
         user_profile=UserProfile(validated=True),
         message="blabla")
     serialized = original.dict()
     deserialized = event_from_dict(serialized)
     self._make_base_assertions(original, deserialized)
コード例 #2
0
 def test_menu_requested(self):
     original = MenuRequested(
         phone_number="123456789",
         user_profile=UserProfile(validated=True),
     )
     serialized = original.dict()
     deserialized = event_from_dict(serialized)
     self._make_base_assertions(original, deserialized)
コード例 #3
0
 def test_opted_out(self):
     original = OptedOut("123456789",
                         user_profile=UserProfile(True),
                         drill_instance_id=uuid.uuid4())
     serialized = original.to_dict()
     deserialized: OptedOut = event_from_dict(serialized)  # type: ignore
     self._make_base_assertions(original, deserialized)
     self.assertEqual(original.drill_instance_id,
                      deserialized.drill_instance_id)
コード例 #4
0
 def test_send_adhoc_message(self):
     original = AdHocMessageSent(
         phone_number="123456789",
         user_profile=UserProfile(validated=True),
         sms=SMS(body="foobar"),
     )
     serialized = original.dict()
     deserialized = event_from_dict(serialized)
     self._make_base_assertions(original, deserialized)
コード例 #5
0
 def test_user_validated(self):
     original = UserValidated(
         "123456789",
         user_profile=UserProfile(True),
         code_validation_payload=CodeValidationPayload(valid=True,
                                                       is_demo=True),
     )
     serialized = original.to_dict()
     deserialized = event_from_dict(serialized)
     self._make_base_assertions(original, deserialized)
コード例 #6
0
 def test_drill_completed(self):
     original = DrillCompleted(phone_number="12345678",
                               user_profile=UserProfile(True),
                               drill_instance_id=uuid.uuid4())
     serialized = original.to_dict()
     deserialized: DrillCompleted = event_from_dict(
         serialized)  # type: ignore
     self._make_base_assertions(original, deserialized)
     self.assertEqual(original.drill_instance_id,
                      deserialized.drill_instance_id)
コード例 #7
0
 def test_language_change_drill_requested(self):
     original = LanguageChangeDrillRequested(
         phone_number="123456789",
         user_profile=UserProfile(validated=True),
         abandoned_drill_instance_id="11111111-1111-1111-1111-111111111111",
     )
     serialized = original.dict()
     deserialized = event_from_dict(serialized)
     self._make_base_assertions(original, deserialized)
     self.assertEqual(
         deserialized.abandoned_drill_instance_id,
         uuid.UUID("11111111-1111-1111-1111-111111111111"),
     )
コード例 #8
0
 def test_advanced_to_next_prompt(self):
     original = AdvancedToNextPrompt(
         phone_number="123456789",
         user_profile=UserProfile(True),
         prompt=self.prompt,
         drill_instance_id=uuid.uuid4(),
     )
     serialized = original.to_dict()
     deserialized: AdvancedToNextPrompt = event_from_dict(
         serialized)  # type: ignore
     self._make_base_assertions(original, deserialized)
     self.assertEqual(original.prompt.slug, deserialized.prompt.slug)
     self.assertEqual(original.drill_instance_id,
                      deserialized.drill_instance_id)
コード例 #9
0
 def test_completed_prompt(self):
     original = CompletedPrompt(
         phone_number="123456789",
         user_profile=UserProfile(True),
         prompt=self.prompt,
         response="hello",
         drill_instance_id=uuid.uuid4(),
     )
     serialized = original.to_dict()
     deserialized: CompletedPrompt = event_from_dict(
         serialized)  # type: ignore
     self._make_base_assertions(original, deserialized)
     self.assertEqual(original.prompt.slug, deserialized.prompt.slug)
     self.assertEqual(original.response, deserialized.response)
     self.assertEqual(original.drill_instance_id,
                      deserialized.drill_instance_id)
コード例 #10
0
 def test_drill_started(self):
     original = DrillStarted(
         phone_number="12345678",
         user_profile=UserProfile(True),
         drill=self.drill,
         first_prompt=self.prompt,
         drill_instance_id=uuid.uuid4(),
     )
     serialized = original.to_dict()
     deserialized: DrillStarted = event_from_dict(
         serialized)  # type: ignore
     self._make_base_assertions(original, deserialized)
     self.assertEqual(original.drill.name, deserialized.drill.name)
     self.assertEqual(original.drill_instance_id,
                      deserialized.drill_instance_id)
     self.assertEqual(original.first_prompt.slug,
                      deserialized.first_prompt.slug)
コード例 #11
0
 def test_failed_prompt(self):
     original = FailedPrompt(
         phone_number="123456789",
         user_profile=UserProfile(True),
         prompt=self.prompt,
         response="hello",
         abandoned=True,
         drill_instance_id=uuid.uuid4(),
     )
     serialized = original.to_dict()
     deserialized: FailedPrompt = event_from_dict(
         serialized)  # type: ignore
     self._make_base_assertions(original, deserialized)
     self.assertEqual(original.prompt.slug, deserialized.prompt.slug)
     for original_message, deserialized_message in zip(
             original.prompt.messages, deserialized.prompt.messages):
         self.assertEqual(original_message.text, deserialized_message.text)
         self.assertEqual(original_message.media_url,
                          deserialized_message.media_url)
     self.assertEqual(original.response, deserialized.response)
     self.assertEqual(original.abandoned, deserialized.abandoned)
     self.assertEqual(original.drill_instance_id,
                      deserialized.drill_instance_id)
コード例 #12
0
 def test_next_drill_requested(self):
     original = NextDrillRequested("123456789",
                                   user_profile=UserProfile(True))
     serialized = original.to_dict()
     deserialized = event_from_dict(serialized)
     self._make_base_assertions(original, deserialized)
コード例 #13
0
 def test_user_validation_failed(self):
     original = UserValidationFailed("123456789",
                                     user_profile=UserProfile(True))
     serialized = original.to_dict()
     deserialized = event_from_dict(serialized)
     self._make_base_assertions(original, deserialized)
コード例 #14
0
 def test_reminder_triggered(self):
     original = ReminderTriggered("123456789",
                                  user_profile=UserProfile(True))
     serialized = original.to_dict()
     deserialized = event_from_dict(serialized)
     self._make_base_assertions(original, deserialized)
コード例 #15
0
 def test_thank_you_received(self):
     original = ThankYouReceived(phone_number="123456789",
                                 user_profile=UserProfile(validated=True))
     serialized = original.dict()
     deserialized = event_from_dict(serialized)
     self._make_base_assertions(original, deserialized)