def test_track_form_change_optional_none(self, mok_track_unstruct): mokEmitter = self.create_patch('snowplow_tracker.Emitter') e = mokEmitter() with ContractsDisabled(): mok_track_unstruct.side_effect = mocked_track_unstruct t = Tracker(e) t.track_form_change("testFormId", "testElemId", "INPUT", "testValue") expected = { "schema": FORM_CHANGE_SCHEMA, "data": { "formId": "testFormId", "elementId": "testElemId", "nodeName": "INPUT", "value": "testValue", } } callArgs = mok_track_unstruct.call_args_list[0][0] self.assertEqual(len(callArgs), 4) self.assertDictEqual(callArgs[0].to_json(), expected) self.assertTrue(callArgs[1] is None) self.assertTrue(callArgs[2] is None)
def test_track_form_change(self, mok_track_unstruct): mokEmitter = self.create_patch('snowplow_tracker.Emitter') e = mokEmitter() with ContractsDisabled(): mok_track_unstruct.side_effect = mocked_track_unstruct t = Tracker(e) ctx = SelfDescribingJson("test.context.schema", {"user": "******"}) evTstamp = 1399021242030 t.track_form_change("testFormId", "testElemId", "INPUT", "testValue", "text", ["testClass1", "testClass2"], context=[ctx], tstamp=evTstamp) expected = { "schema": FORM_CHANGE_SCHEMA, "data": { "formId": "testFormId", "elementId": "testElemId", "nodeName": "INPUT", "value": "testValue", "type": "text", "elementClasses": ["testClass1", "testClass2"] } } callArgs = mok_track_unstruct.call_args_list[0][0] self.assertEqual(len(callArgs), 4) self.assertDictEqual(callArgs[0].to_json(), expected) self.assertIs(callArgs[1][0], ctx) self.assertEqual(callArgs[2], evTstamp)