def test_reset(self): with LogDir() as log_dir: KM.init('key', to_stderr=False, log_dir=log_dir) KM.identify('id') KM.log_query('Query') self.assertEqual(KM._key, 'key') self.assertEqual(KM._id, 'id') self.assertEqual( KM._logs, {'query': os.path.join(log_dir, 'kissmetrics_query.log')}) KM.reset() self.assertEqual(KM._key, None) self.assertEqual(KM._id, None) self.assertEqual(KM._logs, {})
def test_send_logged_queries(self): host = 'example.com' line = '/type?foo=1&bar=2' with LogDir() as log_dir: KM.init('key', host=host, log_dir=log_dir) # Write line to the query log KM.log_query(line) # Expect that line to be requested urlopen = self.mocker.replace('urllib2.urlopen') urlopen('http://%s%s' % (host, line)) self.mocker.result(None) with self.mocker: KM.send_logged_queries() self.assertFalse(os.path.exists(KM.log_name('query'))) self.assertFalse(os.path.exists(KM.log_name('send')))
def test_reset(self): with LogDir() as log_dir: KM.init('key', to_stderr=False, log_dir=log_dir) KM.identify('id') KM.log_query('Query') self.assertEqual(KM._key, 'key') self.assertEqual(KM._id, 'id') self.assertEqual( KM._logs, {'query': os.path.join(log_dir, 'kissmetrics_query.log')} ) KM.reset() self.assertEqual(KM._key, None) self.assertEqual(KM._id, None) self.assertEqual(KM._logs, {})
def test_log_query(self): with LogDir() as log_dir: KM.init('key', to_stderr=False, log_dir=log_dir) KM.log_query('Query') with self.get_log('query') as log: self.assertEndsWith(log.read(), 'Query\n')