Пример #1
0
 def test_get_pkg_def_url(self, mock_reverse):
     mock_reverse.return_value = 'test_url'
     services_table = tables.ServicesTable(None)
     self.assertEqual('test_url',
                      services_table.get_pkg_def_url())
     mock_reverse.assert_called_once_with(
         'horizon:app-catalog:packages:index')
Пример #2
0
    def test_get_row_actions(self, mock_api, mock_reverse, mock_get_env_attrs,
                             _):
        mock_api.extract_actions_list.return_value = [{
            'name': 'foo_bar',
            'title': 'Foo Bar',
            'id': 'foo_id'
        }, {
            'name': 'baz_qux',
            'title': 'Baz Qux',
            'id': 'baz_id'
        }]
        mock_reverse.return_value = 'test_url'

        mock_get_env_attrs.return_value = (consts.STATUS_ID_READY, None)
        mock_api.Session.get_if_available.return_value = 'session_id'
        services_table = tables.ServicesTable(None)
        services_table.kwargs = {'environment_id': 'foo_env_id'}

        mock_datum = mock.MagicMock()
        service = {'?': {'id': 'comp_id'}}
        mock_datum.__getitem__.side_effect = lambda key: service[key]
        actions = services_table.get_row_actions(mock_datum)
        custom_actions = []

        self.assertGreater(len(actions), 0)
        for action in actions:
            if action.__class__.__name__ == 'CustomAction':
                custom_actions.append(action)
        custom_actions = sorted(custom_actions, key=lambda action: action.name)
        self.assertEqual(2, len(custom_actions))

        self.assertEqual('baz_qux', custom_actions[0].name)
        self.assertEqual('Baz Qux', custom_actions[0].verbose_name)
        self.assertEqual('foo_bar', custom_actions[1].name)
        self.assertEqual('Foo Bar', custom_actions[1].verbose_name)
Пример #3
0
    def test_actions_allowed(self, mock_api):
        services_table = tables.ServicesTable(None)
        mock_api.environment_get.return_value = mock.Mock(
            status=consts.STATUS_ID_READY)
        services_table.kwargs = {'environment_id': 'foo_env_id'}
        self.assertTrue(services_table.actions_allowed())

        mock_api.environment_get.return_value = mock.Mock(
            status=consts.STATUS_ID_DEPLOYING)
        self.assertFalse(services_table.actions_allowed())
        mock_api.environment_get.assert_called_with(None, 'foo_env_id')
Пример #4
0
    def test_get_row_actions_with_no_action_allowed_status(
            self, mock_api, mock_reverse, mock_get_env_attrs):
        mock_api.extract_actions_list.return_value = [
            {'name': 'foo_bar', 'title': 'Foo Bar', 'id': 'foo_id'},
            {'name': 'baz_qux', 'title': 'Baz Qux', 'id': 'baz_id'}
        ]
        mock_reverse.return_value = 'test_url'

        mock_get_env_attrs.return_value = (consts.STATUS_ID_DEPLOYING, None)
        services_table = tables.ServicesTable(None)
        services_table.kwargs = {'environment_id': 'foo_env_id'}

        mock_datum = mock.MagicMock()
        actions = services_table.get_row_actions(mock_datum)
        self.assertEqual([], actions)
Пример #5
0
    def test_get_apps_list(self, mock_pkg_api):
        foo_app = mock.Mock()
        foo_app.to_dict.return_value = {'foo': 'bar'}
        baz_app = mock.Mock()
        baz_app.to_dict.return_value = {'baz': 'qux'}
        mock_pkg_api.package_list.return_value = (
            [foo_app, baz_app], True
        )
        services_table = tables.ServicesTable(None)
        services_table.request = None
        services_table._more = False
        expected = [{'foo': 'bar'}, {'baz': 'qux'}]

        result = services_table.get_apps_list()
        for entry in expected:
            self.assertIn(entry, result)
        mock_pkg_api.package_list.assert_called_once_with(
            None, filters={'type': 'Application', 'catalog': True})
Пример #6
0
 def test_get_repo_url(self):
     services_table = tables.ServicesTable(None)
     self.assertEqual(pkg_consts.DISPLAY_MURANO_REPO_URL,
                      services_table.get_repo_url())
Пример #7
0
 def test_categories_list(self, mock_catalog_views):
     mock_catalog_views.get_categories_list.return_value = []
     services_table = tables.ServicesTable(None)
     services_table.request = None
     self.assertEqual([], services_table.get_categories_list())
     mock_catalog_views.get_categories_list.assert_called_once_with(None)
Пример #8
0
 def test_get_object_id(self):
     test_datum = {'?': {'id': 'foo'}}
     services_table = tables.ServicesTable(None)
     self.assertEqual('foo', services_table.get_object_id(test_datum))