Пример #1
0
 def resolve(self,
             request: TestCaseHelpRequest) -> SectionContentsConstructor:
     item = request.item
     if item is TestCaseHelpItem.CLI_SYNTAX:
         return ProgramDocumentationSectionContentsConstructor(
             TestCaseCliSyntaxDocumentation())
     if item is TestCaseHelpItem.SPECIFICATION:
         return tc_specification.as_section_contents_constructor(
             self._contents)
     if item is TestCaseHelpItem.INSTRUCTION_SET:
         return instruction_set.InstructionSetPerPhaseRenderer(
             self._contents)
     if item is TestCaseHelpItem.PHASE:
         assert isinstance(
             request.data,
             TestCasePhaseDocumentation), 'Must be a TestCasePhaseDoc'
         return sections.contents_from_article_contents(
             TestCasePhaseDocumentationConstructor(request.data))
     if item is TestCaseHelpItem.PHASE_INSTRUCTION_LIST:
         section_documentation = request.data
         assert isinstance(
             section_documentation,
             SectionDocumentation), 'Must be a SectionDocumentation'
         return instruction_set_constructor(
             section_documentation.instruction_set,
             instruction_group_by=section_documentation.instruction_group_by
         )
     if item is TestCaseHelpItem.INSTRUCTION:
         return with_or_without_name(
             request.do_include_name_in_output, request.name,
             render_instruction.InstructionDocArticleContentsConstructor(
                 request.data))
     if item is TestCaseHelpItem.INSTRUCTION_SEARCH:
         return InstructionSearchConstructor(request.name, request.data)
     raise ValueError('Invalid %s: %s' % (str(TestCaseHelpItem), str(item)))
Пример #2
0
def root(header: str) -> SectionHierarchyGenerator:
    return h.with_fixed_root_target(
        PredefinedHelpContentsPartReference(
            HelpPredefinedContentsPart.SYMBOL_CLI),
        h.leaf(
            header,
            ProgramDocumentationSectionContentsConstructor(
                SymbolCliSyntaxDocumentation())))
Пример #3
0
 def test(self):
     # ARRANGE #
     constructor = ProgramDocumentationSectionContentsConstructor(TestCaseCliSyntaxDocumentation())
     cross_ref_text_constructor = CrossReferenceTextConstructorTestImpl()
     # ACT #
     actual = constructor.apply(ConstructionEnvironment(cross_ref_text_constructor))
     # ASSERT #
     struct_check.is_section_contents.apply(self, actual)
Пример #4
0
 def renderer_for(self, request: MainProgramHelpRequest) -> SectionContentsConstructor:
     from exactly_lib.help.program_modes.main_program import render
     item = request.item
     if item is MainProgramHelpItem.PROGRAM:
         return render.OverviewConstructor()
     if item is MainProgramHelpItem.HELP:
         return ProgramDocumentationSectionContentsConstructor(HelpCliSyntaxDocumentation())
     raise ValueError('Invalid %s: %s' % (str(MainProgramHelpItem), str(item)))
Пример #5
0
    def resolve(self,
                request: TestSuiteHelpRequest) -> SectionContentsConstructor:
        item = request.item
        if item is TestSuiteHelpItem.CLI_SYNTAX:
            return ProgramDocumentationSectionContentsConstructor(
                TestSuiteCliSyntaxDocumentation())
        if item is TestSuiteHelpItem.SPECIFICATION:
            return main.specification_constructor(self._contents)
        if item is TestSuiteHelpItem.SECTION:
            assert isinstance(
                request.data,
                TestSuiteSectionDocumentation), 'Must be a TestSuiteSectionDoc'
            return sections.contents_from_article_contents(
                TestSuiteSectionDocumentationConstructor(request.data))

        if item is TestSuiteHelpItem.INSTRUCTION:
            return with_or_without_name(
                request.do_include_name_in_output, request.name,
                render_instruction.InstructionDocArticleContentsConstructor(
                    request.data))
        raise ValueError('Invalid %s: %s' %
                         (str(TestSuiteHelpItem), str(item)))
Пример #6
0
 def resolve(self,
             request: SymbolHelpRequest) -> SectionContentsConstructor:
     return ProgramDocumentationSectionContentsConstructor(
         SymbolCliSyntaxDocumentation())
Пример #7
0
def root(header: str) -> h.SectionHierarchyGenerator:
    return h.leaf(
        header,
        ProgramDocumentationSectionContentsConstructor(
            HelpCliSyntaxDocumentation()))
Пример #8
0
 def apply(self,
           environment: ConstructionEnvironment) -> doc.SectionContents:
     renderer = ProgramDocumentationSectionContentsConstructor(
         MainCliSyntaxDocumentation())
     return renderer.apply(environment)