Example #1
0
    def test_extensions_with_group(self):
        metadata = ZafMetadata(all_extensions, [], Mock(), 'zaf',
                               self.extension_manager, self.metadata_filter)
        extensions = metadata.extensions_with_group('group')
        self.assertEqual(extensions[0].name, 'ext1')
        self.assertEqual(extensions[1].name, 'ext2')

        self.assertEqual(metadata.extensions_with_group('invalid group'), [])
Example #2
0
    def setUp(self):
        extension_manager = Mock()

        def command_extensions(command, *args, **kwargs):
            if command.name == 'c1':
                return [Ext2]
            else:
                return []

        extension_manager.command_extensions.side_effect = command_extensions
        extension_manager.framework_extensions.return_value = [Ext1]

        self.docgen_filter = DocFilter(True, True, True)
        self.metadata = ZafMetadata(all_extensions, all_components, Mock(),
                                    'zaf', extension_manager, MetadataFilter())
Example #3
0
 def test_extension_extension_classes(self):
     extensions = ZafMetadata(all_extensions, [], Mock(), 'zaf',
                              self.extension_manager,
                              self.metadata_filter).extensions
     self.assertEqual(extensions[0].extension_classes, [Ext1])
     self.assertEqual(extensions[1].extension_classes, [Ext2])
     self.assertEqual(extensions[2].extension_classes, [Ext3])
Example #4
0
 def test_message_extension_name(self):
     messages = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                            self.extension_manager,
                            self.metadata_filter).messages
     self.assertEqual(messages[0].extension_names, ['ext1'])
     self.assertEqual(messages[1].extension_names, ['ext2'])
     self.assertEqual(messages[2].extension_names, ['ext1', 'ext2'])
Example #5
0
 def test_extension_config_option_ids(self):
     extensions = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                              self.extension_manager,
                              self.metadata_filter).extensions
     self.assertEqual(extensions[0].config_option_ids[0]._option_id, path)
     self.assertEqual(extensions[1].config_option_ids[0]._option_id, bools)
     self.assertEqual(extensions[1].config_option_ids[1]._option_id, entity)
Example #6
0
 def test_command_short_description(self):
     commands = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                            self.extension_manager,
                            self.metadata_filter).commands
     self.assertEqual(commands[1].short_description, 'c1 description')
     self.assertEqual(commands[2].short_description,
                      'c2 description\nc2 description continue')
Example #7
0
 def test_extension_class_description(self):
     extension_classes = ZafMetadata(all_extensions, all_components, Mock(),
                                     'zaf', self.extension_manager,
                                     self.metadata_filter).extension_classes
     self.assertEqual(extension_classes[0].description,
                      'ext1 description.\n\next1 extended description')
     self.assertEqual(extension_classes[1].description, 'No description')
Example #8
0
 def test_metadata_commands(self):
     commands = ZafMetadata(all_extensions, [], Mock(), 'zaf',
                            self.extension_manager,
                            self.metadata_filter).commands
     self.assertEqual(commands[0]._command.name, 'zaf')
     self.assertEqual(commands[1]._command, c1)
     self.assertEqual(commands[2]._command, c2)
Example #9
0
 def test_extension_commands(self):
     extensions = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                              self.extension_manager,
                              self.metadata_filter).extensions
     self.assertEqual(extensions[0].commands[0]._command, c1)
     self.assertEqual(extensions[0].commands[1]._command, c2)
     self.assertEqual(extensions[1].commands, [])
Example #10
0
 def test_command_extended_by(self):
     commands = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                            self.extension_manager,
                            self.metadata_filter).commands
     self.assertEqual(commands[0].extension_names, [])
     self.assertEqual(commands[1].extension_names, ['ext2'])
     self.assertEqual(commands[2].extension_names, [])
     self.assertEqual(commands[3].extension_names, [])
Example #11
0
 def test_command_extension_class(self):
     commands = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                            self.extension_manager,
                            self.metadata_filter).commands
     self.assertIsNone(commands[0].extension_class)
     self.assertEqual(commands[1].extension_class, Ext1)
     self.assertEqual(commands[2].extension_class, Ext1)
     self.assertEqual(commands[3].extension_class, Ext3)
Example #12
0
 def test_command_short_name(self):
     commands = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                            self.extension_manager,
                            self.metadata_filter).commands
     self.assertEqual(commands[0].short_name, 'zaf')
     self.assertEqual(commands[1].short_name, 'c1')
     self.assertEqual(commands[2].short_name, 'c2')
     self.assertEqual(commands[3].short_name, 'c3')
Example #13
0
 def test_extension_class_module(self):
     extension_classes = ZafMetadata(all_extensions, all_components, Mock(),
                                     'zaf', self.extension_manager,
                                     self.metadata_filter).extension_classes
     self.assertEqual(extension_classes[0].module.__name__,
                      'zaf.application.test.utils')
     self.assertEqual(extension_classes[1].module.__name__,
                      'zaf.application.test.utils')
Example #14
0
 def test_extension_messages(self):
     extensions = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                              self.extension_manager,
                              self.metadata_filter).extensions
     self.assertEqual(extensions[0].messages[0]._message_id, m1)
     self.assertEqual(extensions[0].messages[1]._message_id, m3)
     self.assertEqual(extensions[1].messages[0]._message_id, m2)
     self.assertEqual(extensions[1].messages[1]._message_id, m3)
Example #15
0
 def test_component_description(self):
     components = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                              self.extension_manager,
                              self.metadata_filter).components
     self.assertEqual(components[0].description,
                      'comp1 description\n\ncomp1 extended description')
     self.assertEqual(components[1].description,
                      'comp2 description\n\ncomp2 extended description')
Example #16
0
 def test_metadata_endpoints(self):
     endpoints = ZafMetadata(all_extensions, [], Mock(), 'zaf',
                             self.extension_manager,
                             self.metadata_filter).endpoints
     self.assertEqual(endpoints[0]._endpoint_id, e1)
     self.assertEqual(endpoints[0]._messages, [m1, m3])
     self.assertEqual(endpoints[1]._endpoint_id, e2)
     self.assertEqual(endpoints[1]._messages, [m2, m3])
Example #17
0
 def test_metadata_config_option_ids(self):
     config_option_ids = ZafMetadata(all_extensions, [], Mock(), 'zaf',
                                     self.extension_manager,
                                     self.metadata_filter).config_option_ids
     self.assertEqual(config_option_ids[0]._option_id, all_contexts)
     self.assertEqual(config_option_ids[1]._option_id, bools)
     self.assertEqual(config_option_ids[2]._option_id, extendable_context)
     self.assertEqual(config_option_ids[3]._option_id, path)
     self.assertEqual(config_option_ids[4]._option_id, entity)
Example #18
0
 def test_metadata_messages(self):
     messages = ZafMetadata(all_extensions, [], Mock(), 'zaf',
                            self.extension_manager,
                            self.metadata_filter).messages
     self.assertEqual(messages[0]._message_id, m1)
     self.assertEqual(messages[0]._endpoints, [e1])
     self.assertEqual(messages[1]._message_id, m2)
     self.assertEqual(messages[1]._endpoints, [e2])
     self.assertEqual(messages[2]._message_id, m3)
     self.assertEqual(messages[2]._endpoints, [e1, e2])
Example #19
0
 def test_config_option_id_types(self):
     config_option_ids = ZafMetadata(all_extensions, all_components, Mock(),
                                     'zaf', self.extension_manager,
                                     self.metadata_filter).config_option_ids
     self.assertEqual(config_option_ids[0].type_string, 'str')
     self.assertEqual(config_option_ids[1].type_string, 'bool')
     self.assertEqual(config_option_ids[2].type_string, 'str')
     self.assertEqual(config_option_ids[3].type_string,
                      'Path(exists=False)')
     self.assertEqual(config_option_ids[4].type_string, 'Entity')
Example #20
0
 def test_messages_endpoints(self):
     messages = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                            self.extension_manager,
                            self.metadata_filter).messages
     self.assertEqual(messages[0].endpoints[0].endpoint_id, e1)
     self.assertEqual(len(messages[0].endpoints), 1)
     self.assertEqual(messages[1].endpoints[0].endpoint_id, e2)
     self.assertEqual(len(messages[1].endpoints), 1)
     self.assertEqual(messages[2].endpoints[0].endpoint_id, e1)
     self.assertEqual(messages[2].endpoints[1].endpoint_id, e2)
     self.assertEqual(len(messages[2].endpoints), 2)
Example #21
0
 def test_command_config_option_ids(self):
     commands = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                            self.extension_manager,
                            self.metadata_filter).commands
     self.assertEqual(commands[1].config_option_ids[0]._option_id, bools)
     self.assertEqual(commands[1].config_option_ids[1]._option_id,
                      extendable_context)
     self.assertEqual(len(commands[1].config_option_ids), 2)
     self.assertEqual(commands[2].config_option_ids[0]._option_id, path)
     self.assertEqual(commands[2].config_option_ids[1]._option_id, entity)
     self.assertEqual(len(commands[2].config_option_ids), 2)
Example #22
0
 def test_metadata_extensions(self):
     extensions = ZafMetadata(all_extensions, [], Mock(), 'zaf',
                              self.extension_manager,
                              self.metadata_filter).extensions
     self.assertEqual(extensions[0].name, 'ext1')
     self.assertEqual(extensions[0].groups, ['group'])
     self.assertEqual(extensions[0].extension_classes[0]._extension_class,
                      Ext1)
     self.assertEqual(extensions[1].name, 'ext2')
     self.assertEqual(extensions[1].groups, ['group'])
     self.assertEqual(extensions[1].extension_classes[0]._extension_class,
                      Ext2)
Example #23
0
    def test_config_option_ids_extension_classes(self):
        config_option_ids = ZafMetadata(
            all_extensions, all_components, Mock(), 'zaf',
            self.extension_manager, self.metadata_filter)._config_option_ids

        self.assertEqual(config_option_ids[all_contexts].extension_classes,
                         [Ext3])
        self.assertEqual(config_option_ids[bools].extension_classes, [Ext2])
        self.assertEqual(
            config_option_ids[extendable_context].extension_classes, [Ext3])
        self.assertEqual(config_option_ids[path].extension_classes, [Ext1])
        self.assertEqual(config_option_ids[entity].extension_classes, [Ext2])
Example #24
0
def create_metadata(filter=MetadataFilter()):
    extension_manager = Mock()

    def command_extensions(command, *args, **kwargs):
        if command.name == 'c1':
            return [Ext2]
        else:
            return []

    extension_manager.command_extensions.side_effect = command_extensions
    extension_manager.framework_extensions.return_value = [Ext1]

    return ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                       extension_manager, filter)
Example #25
0
 def test_component_method(self):
     components = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                              self.extension_manager,
                              self.metadata_filter).components
     self.assertEqual(components[0].methods[0].path,
                      'zaf.application.test.utils.Comp1Class.method')
Example #26
0
class TestDocGen(unittest.TestCase):
    maxDiff = None

    def setUp(self):
        extension_manager = Mock()

        def command_extensions(command, *args, **kwargs):
            if command.name == 'c1':
                return [Ext2]
            else:
                return []

        extension_manager.command_extensions.side_effect = command_extensions
        extension_manager.framework_extensions.return_value = [Ext1]

        self.docgen_filter = DocFilter(True, True, True)
        self.metadata = ZafMetadata(all_extensions, all_components, Mock(),
                                    'zaf', extension_manager, MetadataFilter())

    def test_generate_extension_rst(self):
        output = render_sphinx_template(
            'extension.rst',
            extension=self.metadata.extension_with_name('ext1'),
            metadata=self.metadata,
            filter=self.docgen_filter)
        self.assertEqual(output, extension.expected_rst_output)

    def test_generate_command_rst(self):
        output = render_sphinx_template('command.rst',
                                        command=self.metadata.commands[1],
                                        metadata=self.metadata,
                                        filter=self.docgen_filter)
        self.assertEqual(output, command.expected_rst_output)

    def test_generate_components_rst(self):
        output = render_sphinx_template('component.rst',
                                        component=self.metadata.components[0],
                                        metadata=self.metadata,
                                        filter=self.docgen_filter)
        self.assertEqual(output, component.expected_rst_output)

    def test_generate_extension_list_rst(self):
        output = render_sphinx_template('extension_list.rst',
                                        extensions=self.metadata.extensions,
                                        metadata=self.metadata,
                                        filter=self.docgen_filter)
        self.assertEqual(output, extension_list.expected_rst_output)

    def test_generate_command_list_rst(self):
        output = render_sphinx_template('command_list.rst',
                                        commands=self.metadata.commands,
                                        metadata=self.metadata,
                                        filter=self.docgen_filter)
        self.assertEqual(output, command_list.expected_rst_output)

    def test_generate_components_list_rst(self):
        output = render_sphinx_template('component_list.rst',
                                        components=self.metadata.components,
                                        metadata=self.metadata,
                                        filter=self.docgen_filter)
        self.assertEqual(output, component_list.expected_rst_output)

    def test_generate_config_option_ids_list_rst(self):
        output = render_sphinx_template(
            'config_option_id_list.rst',
            config_option_ids=self.metadata.config_option_ids,
            metadata=self.metadata,
            filter=self.docgen_filter)
        self.assertEqual(output, config_option_id_list.expected_rst_output)

    def test_generate_endpoints_list_rst(self):
        output = render_sphinx_template('endpoint_list.rst',
                                        endpoints=self.metadata.endpoints,
                                        metadata=self.metadata,
                                        filter=self.docgen_filter)
        self.assertEqual(output, endpoint_list.expected_rst_output)

    def test_generate_messages_list_rst(self):
        output = render_sphinx_template('message_list.rst',
                                        messages=self.metadata.messages,
                                        metadata=self.metadata,
                                        filter=self.docgen_filter)
        self.assertEqual(output, message_list.expected_rst_output)
Example #27
0
 def test_extension_with_name(self):
     metadata = ZafMetadata(all_extensions, [], Mock(), 'zaf',
                            self.extension_manager, self.metadata_filter)
     self.assertEqual(metadata.extension_with_name('ext1').name, 'ext1')
     self.assertEqual(metadata.extension_with_name('ext2').name, 'ext2')
Example #28
0
 def test_metadata_components(self):
     components = ZafMetadata([], all_components, Mock(), 'zaf',
                              self.extension_manager,
                              self.metadata_filter).components
     self.assertEqual(components[0]._component_info, comp1)
     self.assertEqual(components[1]._component_info, comp2)
Example #29
0
 def test_endpoint_extension_names(self):
     endpoints = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                             self.extension_manager,
                             self.metadata_filter).endpoints
     self.assertEqual(endpoints[0].extension_names, ['ext1'])
     self.assertEqual(endpoints[1].extension_names, ['ext2'])
Example #30
0
 def test_component_method_description(self):
     components = ZafMetadata(all_extensions, all_components, Mock(), 'zaf',
                              self.extension_manager,
                              self.metadata_filter).components
     self.assertEqual(components[0].methods[0].description, 'Do stuff.')