def test_debug(self): mock_device = MockDevice() base_dir = tempfile.mkdtemp() try: fuzzer = Fuzzer( mock_device, u'mock-package1', u'mock-target2', output=base_dir, debug=True) fuzzer.start(['-some-lf-arg=value']) finally: shutil.rmtree(base_dir) self.assertIn( ' '.join( mock_device.get_ssh_cmd( [ 'ssh', '::1', 'run', fuzzer.url(), '-artifact_prefix=data/', '-some-lf-arg=value', '-jobs=1', '-dict=pkg/data/mock-target2/dictionary', 'data/corpus/', '-handle_segv=0', '-handle_bus=0', '-handle_ill=0', '-handle_fpe=0', '-handle_abrt=0', ])), mock_device.host.history)
def test_run(self): mock_device = MockDevice() fuzzer = Fuzzer(mock_device, u'mock-package1', u'mock-target2') fuzzer.run(['-some-lf-arg=value']) self.assertEqual( mock_device.last, 'ssh -F ' + mock_device.host.ssh_config + ' ::1 run ' + fuzzer.url() + ' -artifact_prefix=data -some-lf-arg=value')
def test_merge(self): mock_device = MockDevice() fuzzer = Fuzzer(mock_device, u'mock-package1', u'mock-target2') fuzzer.merge(['-some-lf-arg=value']) self.assertEqual( mock_device.last, 'ssh -F ' + mock_device.host.ssh_config + ' ::1 run ' + fuzzer.url() + ' -artifact_prefix=data -merge=1' + ' -merge_control_file=data/.mergefile -some-lf-arg=value data/corpus' + ' data/corpus.prev')
def test_repro(self): mock_device = MockDevice() fuzzer = Fuzzer(mock_device, u'mock-package1', u'mock-target2') artifacts = ['data/' + artifact for artifact in fuzzer.list_artifacts()] fuzzer.repro(['-some-lf-arg=value']) self.assertEqual( mock_device.last, 'ssh -F ' + mock_device.host.ssh_config + ' ::1 run ' + fuzzer.url() + ' -artifact_prefix=data ' + '-some-lf-arg=value ' + ' '.join(artifacts))
def test_run(self): mock_device = MockDevice() fuzzer = Fuzzer(mock_device, u'mock-package1', u'mock-target2') fuzzer.run(['-some-lf-arg=value']) self.assertIn( ' '.join( mock_device.get_ssh_cmd([ 'ssh', '::1', 'run', fuzzer.url(), '-artifact_prefix=data', '-some-lf-arg=value' ])), mock_device.history)
def test_merge(self): mock_device = MockDevice() fuzzer = Fuzzer(mock_device, u'mock-package1', u'mock-target2') fuzzer.merge(['-some-lf-arg=value']) self.assertIn( ' '.join( mock_device.get_ssh_cmd([ 'ssh', '::1', 'run', fuzzer.url(), '-artifact_prefix=data/', '-merge=1', '-merge_control_file=data/.mergefile', '-some-lf-arg=value data/corpus/', 'data/corpus.prev/' ])), mock_device.history)
def test_repro(self): mock_device = MockDevice() fuzzer = Fuzzer(mock_device, u'mock-package1', u'mock-target2') artifacts = ['data/' + artifact for artifact in fuzzer.list_artifacts()] fuzzer.repro(['-some-lf-arg=value']) self.assertIn( ' '.join( mock_device.get_ssh_cmd( [ 'ssh', '::1', 'run', fuzzer.url(), '-artifact_prefix=data/', '-some-lf-arg=value' ] + artifacts)), mock_device.host.history)
def test_start(self): mock_device = MockDevice() base_dir = tempfile.mkdtemp() try: fuzzer = Fuzzer(mock_device, u'mock-package1', u'mock-target2', output=base_dir) fuzzer.start(['-some-lf-arg=value']) finally: shutil.rmtree(base_dir) self.assertIn( ' '.join( mock_device.get_ssh_cmd([ 'ssh', '::1', 'run', fuzzer.url(), '-artifact_prefix=data/', '-some-lf-arg=value', '-jobs=1', 'data/corpus/', ])), mock_device.host.history)