def test_generate_image_beacon_timestamp(self): # make sure using a timestamp works keen.project_id = "5004ded1163d66114f000000" api_key = "2e79c6ec1d0145be8891bf668599c79a" keen.write_key = scoped_keys.encrypt(api_key, {"allowed_operations": ["write"]}) event_collection = "python_test" event_data = {"a": "b"} timestamp = datetime.datetime.utcnow() data = self.base64_encode( json.dumps({ "a": "b", "keen": { "timestamp": timestamp.isoformat() } })) url = keen.generate_image_beacon(event_collection, event_data, timestamp=timestamp) expected = "https://api.keen.io/3.0/projects/{0}/events/{1}?api_key={2}&data={3}".format( keen.project_id, self.url_escape(event_collection), keen.write_key.decode(sys.getdefaultencoding()), data) self.assert_equal(expected, url)
def test_generate_image_beacon(self): keen.project_id = "5004ded1163d66114f000000" api_key = "2e79c6ec1d0145be8891bf668599c79a" keen.write_key = scoped_keys.encrypt(api_key, {"allowed_operations": ["write"]}) event_collection = "python_test hello!?" event_data = {"a": "b"} data = self.base64_encode(json.dumps(event_data)) # module level should work url = keen.generate_image_beacon(event_collection, event_data) expected = "https://api.keen.io/3.0/projects/{0}/events/{1}?api_key={2}&data={3}".format( keen.project_id, self.url_escape(event_collection), keen.write_key.decode(sys.getdefaultencoding()), data ) self.assert_equal(expected, url) # so should instance level client = KeenClient(keen.project_id, write_key=keen.write_key, read_key=None) url = client.generate_image_beacon(event_collection, event_data) self.assert_equal(expected, url) # make sure URL works response = requests.get(url) self.assert_equal(200, response.status_code) self.assert_equal(b"GIF89a\x01\x00\x01\x00\x80\x01\x00\xff\xff\xff\x00\x00\x00!\xf9\x04\x01\n\x00\x01\x00,\x00\x00\x00\x00\x01\x00\x01\x00\x00\x02\x02L\x01\x00;", response.content)
def test_generate_image_beacon(self): keen.project_id = "5004ded1163d66114f000000" api_key = "2e79c6ec1d0145be8891bf668599c79a" keen.write_key = scoped_keys.encrypt(api_key, {"allowed_operations": ["write"]}) event_collection = "python_test hello!?" event_data = {"a": "b"} data = self.base64_encode(json.dumps(event_data)) # module level should work url = keen.generate_image_beacon(event_collection, event_data) expected = "https://api.keen.io/3.0/projects/{0}/events/{1}?api_key={2}&data={3}".format( keen.project_id, self.url_escape(event_collection), keen.write_key.decode(sys.getdefaultencoding()), data) self.assert_equal(expected, url) # so should instance level client = KeenClient(keen.project_id, write_key=keen.write_key, read_key=None) url = client.generate_image_beacon(event_collection, event_data) self.assert_equal(expected, url) # make sure URL works response = requests.get(url) self.assert_equal(200, response.status_code) self.assert_equal( b"GIF89a\x01\x00\x01\x00\x80\x01\x00\xff\xff\xff\x00\x00\x00!\xf9\x04\x01\n\x00\x01\x00,\x00\x00\x00\x00\x01\x00\x01\x00\x00\x02\x02L\x01\x00;", response.content)
def test_generate_image_beacon_timestamp(self, post): # make sure using a timestamp works event_collection = "python_test" event_data = {"a": "b"} timestamp = datetime.datetime.utcnow() data = self.base64_encode(json.dumps({"a": "b", "keen": {"timestamp": timestamp.isoformat()}})) url = keen.generate_image_beacon(event_collection, event_data, timestamp=timestamp) expected = "https://api.keen.io/3.0/projects/{0}/events/{1}?api_key={2}&data={3}".format( keen.project_id, self.url_escape(event_collection), keen.write_key.decode(sys.getdefaultencoding()), data ) self.assert_equal(expected, url)
def test_generate_image_beacon(self, post): event_collection = "python_test hello!?" event_data = {"a": "b"} data = self.base64_encode(json.dumps(event_data)) # module level should work url = keen.generate_image_beacon(event_collection, event_data) expected = "https://api.keen.io/3.0/projects/{0}/events/{1}?api_key={2}&data={3}".format( keen.project_id, self.url_escape(event_collection), keen.write_key.decode(sys.getdefaultencoding()), data ) self.assert_equal(expected, url) # so should instance level client = KeenClient(keen.project_id, write_key=keen.write_key, read_key=None) url = client.generate_image_beacon(event_collection, event_data) self.assert_equal(expected, url)
def test_generate_image_beacon_timestamp(self): # make sure using a timestamp works keen.project_id = "5004ded1163d66114f000000" api_key = "2e79c6ec1d0145be8891bf668599c79a" keen.write_key = scoped_keys.encrypt(api_key, {"allowed_operations": ["write"]}) event_collection = "python_test" event_data = {"a": "b"} timestamp = datetime.datetime.utcnow() data = self.base64_encode(json.dumps({"a": "b", "keen": {"timestamp": timestamp.isoformat()}})) url = keen.generate_image_beacon(event_collection, event_data, timestamp=timestamp) expected = "https://api.keen.io/3.0/projects/{0}/events/{1}?api_key={2}&data={3}".format( keen.project_id, self.url_escape(event_collection), keen.write_key.decode(sys.getdefaultencoding()), data ) self.assert_equal(expected, url)