| #!/usr/bin/env python3 |
| |
| # Copyright 2021 The ChromiumOS Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| """Unit tests for mass_seccomp_editor.py""" |
| |
| import unittest |
| from unittest import mock |
| |
| import mass_seccomp_editor |
| |
| BASE_SECCOMP_CONTENTS = """ |
| fstat: 1 |
| poll: 1 |
| foobar: 1 |
| """ |
| |
| TEST_FP = 'foo' |
| |
| |
| class TestMassSeccompEditor(unittest.TestCase): |
| """Test the mass_seccomp_editor.""" |
| |
| def test_check_missing_sycalls(self): |
| """Test we can find missing syscalls.""" |
| with mock.patch('builtins.open', |
| mock.mock_open(read_data=BASE_SECCOMP_CONTENTS)): |
| out = mass_seccomp_editor.check_missing_syscalls( |
| ['fstat', 'dup', 'fizzbuzz'], TEST_FP) |
| self.assertEqual(out, set(['dup', 'fizzbuzz'])) |
| |
| |
| if __name__ == '__main__': |
| unittest.main() |