test_pytest_plugin_editor_test.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. """
  2. Copyright (c) Contributors to the Open 3D Engine Project.
  3. For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. SPDX-License-Identifier: Apache-2.0 OR MIT
  5. """
  6. import pytest
  7. import unittest.mock as mock
  8. import unittest
  9. import ly_test_tools._internal.pytest_plugin.multi_testing as multi_testing
  10. pytestmark = pytest.mark.SUITE_smoke
  11. class TestEditorTest(unittest.TestCase):
  12. @mock.patch('inspect.isclass', mock.MagicMock(return_value=True))
  13. def test_PytestPycollectMakeitem_ValidArgs_CallsCorrectly(self):
  14. mock_collector = mock.MagicMock()
  15. mock_name = mock.MagicMock()
  16. mock_obj = mock.MagicMock()
  17. mock_base = mock.MagicMock()
  18. mock_obj.__bases__ = [mock_base]
  19. multi_testing.pytest_pycollect_makeitem(mock_collector, mock_name, mock_obj)
  20. mock_base.pytest_multitest_makeitem.assert_called_once_with(mock_collector, mock_name, mock_obj)
  21. def test_PytestCollectionModifyitem_OneValidClass_CallsOnce(self):
  22. mock_item = mock.MagicMock()
  23. mock_class = mock.MagicMock()
  24. mock_class.pytest_custom_modify_items = mock.MagicMock()
  25. mock_item.instance.__class__ = mock_class
  26. mock_session = mock.MagicMock()
  27. mock_items = [mock_item, mock.MagicMock()]
  28. mock_config = mock.MagicMock()
  29. generator = multi_testing.pytest_collection_modifyitems(mock_session, mock_items, mock_config)
  30. for x in generator:
  31. pass
  32. assert mock_class.pytest_custom_modify_items.call_count == 1