def test_pipeline_multi_modules(self): def test_func(bundle): bundle.data['func'] = True return bundle def test_func2(bundle): bundle.data['func2'] = True return bundle pipelines = dict() pipe = FakePipeline('multi') pipe.add_func(test_func) pipe.add_func(test_func2) pipelines['multi'] = pipe thread = self._start_server(pipelines=pipelines) client = ProcessClient(thread.server._transport) data = client.process_url(str(uuid.uuid4()), 'multi', dict(), 'fake://blank', autosave=False, wait_for_result=True) self._stop_server(client, thread) self.assertFalse('exceptions' in data) self.assertTrue('func' in data) self.assertTrue('func2' in data) self.assertTrue(data['func']) self.assertTrue(data['func'])
def test_pipeline_multi_modules(self): def test_func(bundle): bundle.data['func'] = True return bundle def test_func2(bundle): bundle.data['func2'] = True return bundle pipelines = dict() pipe = FakePipeline('multi') pipe.add_func(test_func) pipe.add_func(test_func2) pipelines['multi'] = pipe thread = self._start_server(pipelines=pipelines) client = ProcessClient(thread.server._transport) data = client.process_url(str(uuid.uuid4()), 'multi', dict(), 'fake://blank', autosave=False, wait_for_result=True) self._stop_server(client, thread) self.assertFalse('exceptions' in data) self.assertTrue('func' in data) self.assertTrue('func2' in data) self.assertTrue(data['func']) self.assertTrue(data['func'])
def test_pipeline_exceptions(self): def empty_func(bundle): raise Exception("test") pipelines = dict() pipelines['empty'] = FakePipeline('empty', empty_func) thread = self._start_server(pipelines=pipelines) client = ProcessClient(thread.server._transport) data = client.process_url(str(uuid.uuid4()), 'empty', dict(), 'fake://blank', autosave=False, wait_for_result=True) self._stop_server(client, thread) self.assertTrue('exceptions' in data) self.assertEqual(data['exceptions'][0]['name'], "Exception") self.assertEqual(data['exceptions'][0]['msg'], "test")
def test_pipeline_process(self): def empty_func(bundle): bundle.data['called'] = True return bundle pipelines = dict() pipelines['empty'] = FakePipeline('empty', empty_func) thread = self._start_server(pipelines=pipelines) client = ProcessClient(thread.server._transport) data = client.process_url(str(uuid.uuid4()), 'empty', dict(), 'fake://blank', autosave=False, wait_for_result=True) self._stop_server(client, thread) self.assertTrue('called' in data) self.assertTrue(data['called'])
def test_default(self): pipelines = dict() pipe = FakePipeline('hashing') pipe.add_module(HashModule(dict())) pipelines['hashing'] = pipe thread = self._start_server(pipelines=pipelines) client = ProcessClient(thread.server._transport) data = client.process_url(str(uuid.uuid4()), 'hashing', dict(), 'fake://blank', autosave=False, wait_for_result=True) self._stop_server(client, thread) self.assertTrue('hash-md5' in data) self.assertTrue('hash-sha1' in data) self.assertTrue('hash-sha256' in data) self.assertTrue('hash-sha512' in data)
def test_pipeline_exceptions(self): def empty_func(bundle): raise Exception("test") pipelines = dict() pipelines['empty'] = FakePipeline('empty', empty_func) thread = self._start_server(pipelines=pipelines) client = ProcessClient(thread.server._transport) data = client.process_url(str(uuid.uuid4()), 'empty', dict(), 'fake://blank', autosave=False, wait_for_result=True) self._stop_server(client, thread) self.assertTrue('exceptions' in data) self.assertEqual(data['exceptions'][0]['name'], "Exception") self.assertEqual(data['exceptions'][0]['msg'], "test")
def test_pipeline_process(self): def empty_func(bundle): bundle.data['called'] = True return bundle pipelines = dict() pipelines['empty'] = FakePipeline('empty', empty_func) thread = self._start_server(pipelines=pipelines) client = ProcessClient(thread.server._transport) data = client.process_url(str(uuid.uuid4()), 'empty', dict(), 'fake://blank', autosave=False, wait_for_result=True) self._stop_server(client, thread) self.assertTrue('called' in data) self.assertTrue(data['called'])
def test_prefix(self): pipelines = dict() pipe = FakePipeline('hashing') pipe.add_module(HashModule({'prefix': 'verify'})) pipelines['hashing'] = pipe thread = self._start_server(pipelines=pipelines) client = ProcessClient(thread.server._transport) data = client.process_url(str(uuid.uuid4()), 'hashing', dict(), 'fake://blank', autosave=False, wait_for_result=True) self._stop_server(client, thread) self.assertTrue('verify-hash-md5' in data) self.assertTrue('verify-hash-sha1' in data) self.assertTrue('verify-hash-sha256' in data) self.assertTrue('verify-hash-sha512' in data)