def testMaterialize(self):
        _, res = self.execute(self.TEXT[0], renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0), 'div', size=1, class_='card moose-float')
        self.assertHTMLTag(res(0,0), 'div', size=2, class_='card-content')
        self.assertHTMLTag(res(0,0,0), 'p', size=2, class_='moose-caption')
        self.assertHTMLTag(res(0,0,0,0), 'span', size=1, class_='moose-caption-heading')
        self.assertHTMLString(res(0,0,0,0,0), content='Listing 1: ')
        self.assertHTMLTag(res(0,0,0,1), 'span', class_='moose-caption-text')
        self._assertHTML(res(0,0,1), 'max-height:350px;', self.CODE[0])

        ast, res = self.execute(self.TEXT[1], renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=3, class_='moose-content')
        self._assertHTML(res(0), 'max-height:92px;', self.CODE[1])
        self.assertHTMLTag(res(1), 'a', size=1, class_='modal-trigger',
                           href='#{}'.format(ast(2)['bookmark']))
        self.assertHTMLString(res(1,0), content='({})'.format(self.FILE))
        self.assertHTMLTag(res(2), 'div', size=2, class_='modal moose-modal', id=ast(2)['bookmark'])
        self.assertHTMLTag(res(2,0), 'div', size=2, class_='modal-content')
        self.assertHTMLTag(res(2,0,0), 'h4', size=1)
        self.assertHTMLString(res(2,0,0,0), content=MOOSE_DIR + '/' + self.FILE)
        self._assertHTML(res(2,0,1), '', extractContent(self.FILE, opts={'strip-header': False}))
        self.assertHTMLTag(res(2,1), 'div', size=1, class_='modal-footer')
        self.assertHTMLTag(res(2,1,0), 'a', size=1, class_='modal-close btn-flat')
        self.assertHTMLString(res(2,1,0,0), content='Close')
    def testMaterialize(self):
        _, res = self.execute(self.TEXT[0], renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self._assertHTML(res(0), self.CODE[0])

        _, res = self.execute(self.TEXT[1], renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0), 'div', size=1, class_='card moose-float')
        self.assertHTMLTag(res(0,0), 'div', size=2, class_='card-content')
        self.assertHTMLTag(res(0,0,0), 'p', size=1, class_='moose-caption')
        self.assertHTMLTag(res(0,0,0,0), 'span', size=3, class_='moose-caption-text')
        self.assertHTMLString(res(0,0,0,0,0), content='the')
        self.assertHTMLString(res(0,0,0,0,1), content=' ')
        self.assertHTMLTag(res(0,0,0,0,2), 'strong', size=1)
        self.assertHTMLString(res(0,0,0,0,2,0), content='caption')
        self._assertHTML(res(0,0,1), self.CODE[1])

        _, res = self.execute(self.TEXT[2], renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=2, class_='moose-content')
        self.assertHTMLTag(res(0), 'div', size=1, class_='card moose-float')
        self.assertHTMLTag(res(0,0), 'div', size=2, class_='card-content')
        self.assertHTMLTag(res(0,0,0), 'p', size=2, class_='moose-caption')
        self.assertHTMLTag(res(0,0,0,0), 'span', size=1, class_='moose-caption-heading')
        self.assertHTMLString(res(0,0,0,0,0), content='File 1: ')
        self.assertHTMLTag(res(0,0,0,1), 'span', size=3, class_='moose-caption-text')
        self.assertHTMLString(res(0,0,0,1,0), content='the')
        self.assertHTMLString(res(0,0,0,1,1), content=' ')
        self.assertHTMLTag(res(0,0,0,1,2), 'u', size=1)
        self.assertHTMLString(res(0,0,0,1,2,0), content='caption')
        self._assertHTML(res(0,0,1), self.CODE[2])
        self.assertHTMLTag(res(1), 'p', size=1)
        self.assertHTMLTag(res(1,0), 'a', size=1, href='#file1')
        self.assertHTMLString(res(1,0,0), content='File 1')
Example #3
0
    def testMaterialize(self):
        # no float
        ast = self.tokenize("!media http://clips.vorwaerts-gmbh.de/VfE.webm")
        res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0), 'video', size=1)
        self.assertHTMLTag(res(0, 0),
                           'source',
                           src="http://clips.vorwaerts-gmbh.de/VfE.webm")

        # in float
        ast = self.tokenize(
            "!media http://clips.vorwaerts-gmbh.de/VfE.webm caption=test id=idaho"
        )
        res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0), 'div', size=1, class_='card moose-float')
        self.assertHTMLTag(res(0, 0), 'div', size=2, class_='card-image')
        self.assertHTMLTag(res(0, 0, 0), 'video', size=1)
        self.assertHTMLTag(res(0, 0, 0, 0),
                           'source',
                           src="http://clips.vorwaerts-gmbh.de/VfE.webm")
        self.assertHTMLTag(res(0, 0, 1), 'p', size=2, class_='moose-caption')
        self.assertHTMLTag(res(0, 0, 1, 0),
                           'span',
                           size=1,
                           class_='moose-caption-heading',
                           string='Figure 1: ')
        self.assertHTMLTag(res(0, 0, 1, 1),
                           'span',
                           size=1,
                           class_='moose-caption-text',
                           string='test')
Example #4
0
    def testMaterialize(self):
        _, res = self.execute(self.TEXT[0],
                              renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0), 'div', size=1, class_='card moose-float')
        self.assertHTMLTag(res(0, 0), 'div', size=2, class_='card-content')
        self.assertHTMLTag(res(0, 0, 0), 'p', size=2, class_='moose-caption')
        self.assertHTMLTag(res(0, 0, 0, 0),
                           'span',
                           size=1,
                           class_='moose-caption-heading')
        self.assertHTMLString(res(0, 0, 0, 0, 0), content='Listing 1: ')
        self.assertHTMLTag(res(0, 0, 0, 1),
                           'span',
                           class_='moose-caption-text')
        self._assertHTML(res(0, 0, 1), 'max-height:350px;', self.CODE[0])

        ast, res = self.execute(self.TEXT[1],
                                renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=3, class_='moose-content')
        self._assertHTML(res(0), 'max-height:92px;', self.CODE[1])
        self.assertHTMLTag(
            res(1),
            'a',
            size=1,
            class_='moose-source-filename tooltipped modal-trigger')
        self.assertHTMLString(res(1, 0), content='({})'.format(self.FILE))
        self.assertHTMLTag(res(2), 'div', class_='moose-modal modal')
Example #5
0
    def testMaterialize(self):
        # no float
        ast = self.tokenize("!media Flag_of_Idaho.svg")
        res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0), 'picture', size=1)
        self.assertHTMLTag(res(0, 0),
                           'img',
                           size=0,
                           src='testing/Flag_of_Idaho.svg')

        # in float
        ast = self.tokenize("!media Flag_of_Idaho.svg caption=test id=idaho")
        res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0), 'div', size=1, class_='card moose-float')
        self.assertHTMLTag(res(0, 0), 'div', size=2, class_='card-content')
        self.assertHTMLTag(res(0, 0, 0), 'picture', size=1)
        self.assertHTMLTag(res(0, 0, 0, 0),
                           'img',
                           size=0,
                           src='testing/Flag_of_Idaho.svg')
        self.assertHTMLTag(res(0, 0, 1), 'p', size=2, class_='moose-caption')
        self.assertHTMLTag(res(0, 0, 1, 0),
                           'span',
                           size=1,
                           class_='moose-caption-heading',
                           string='Figure 1: ')
        self.assertHTMLTag(res(0, 0, 1, 1),
                           'span',
                           size=1,
                           class_='moose-caption-text',
                           string='test')
Example #6
0
    def testMaterialize(self):
        # no float with poster
        ast = self.tokenize(
            "!media http://clips.vorwaerts-gmbh.de/VfE.webm poster=big_buck_bunny.jpg"
        )
        res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0), 'div', size=1, class_='moose-video-div')
        self.assertHTMLTag(res(0, 0),
                           'video',
                           size=1,
                           class_='moose-video',
                           width='100%',
                           controls=True,
                           poster='/testing/big_buck_bunny.jpg')
        self.assertHTMLTag(res(0, 0, 0),
                           'source',
                           src="http://clips.vorwaerts-gmbh.de/VfE.webm")

        # in float
        ast = self.tokenize(
            "!media http://clips.vorwaerts-gmbh.de/VfE.webm caption=test id=idaho"
        )
        res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0),
                           'div',
                           size=1,
                           class_='card moose-float',
                           id_='idaho')
        self.assertHTMLTag(res(0, 0), 'div', size=2, class_='card-image')
        self.assertHTMLTag(res(0, 0, 0),
                           'div',
                           size=1,
                           class_='moose-video-div')
        self.assertHTMLTag(res(0, 0, 0, 0),
                           'video',
                           size=1,
                           class_='moose-video',
                           width='100%',
                           controls=True)
        self.assertHTMLTag(res(0, 0, 0, 0, 0),
                           'source',
                           src="http://clips.vorwaerts-gmbh.de/VfE.webm")
        self.assertHTMLTag(res(0, 0, 1), 'p', size=2, class_='moose-caption')
        self.assertHTMLTag(res(0, 0, 1, 0),
                           'span',
                           size=1,
                           class_='moose-caption-heading',
                           string='Figure 1: ')
        self.assertHTMLTag(res(0, 0, 1, 1),
                           'span',
                           size=1,
                           class_='moose-caption-text',
                           string='test')
Example #7
0
    def testMaterializeErrors(self):

        ast = modal.ModalSourceLink(None, src='Makefile')
        with self.assertLogs(level=logging.ERROR) as cm:
            res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertEqual(len(cm.output), 1)
        self.assertIn("Multiple files match the supplied filename", cm.output[0])

        ast = modal.ModalSourceLink(None, src='wrong')
        with self.assertLogs(level=logging.ERROR) as cm:
            res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertEqual(len(cm.output), 1)
        self.assertIn("Unable to locate file that matches the supplied filename", cm.output[0])
Example #8
0
    def testMaterialize(self):
        _, res = self.execute(self.TEXT, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0),
                           'div',
                           size=2,
                           class_='card moose-alert moose-alert-error')

        title = res(0)(0)
        self.assertHTMLTag(title,
                           'div',
                           size=2,
                           class_='card-title moose-alert-title')
        self.assertHTMLTag(title(0),
                           'i',
                           size=1,
                           class_='material-icons moose-inline-icon',
                           string='report')
        self.assertHTMLTag(title(1),
                           'span',
                           size=1,
                           class_='moose-alert-title-brand',
                           string='error')

        content = res(0)(1)
        self.assertHTMLTag(content, 'div', size=1, class_='card-content')
        self.assertHTMLTag(content(0),
                           'div',
                           size=1,
                           class_='moose-alert-content')
        self._assertHTML(content(0)(0))
Example #9
0
    def testMaterialize(self):
        for i, b in enumerate(self.BRANDS):
            res = self.render(self.tokenize(self.TEXT[i]),
                              renderer=base.MaterializeRenderer())
            self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
            classref = 'card moose-alert moose-alert-{}'.format(b)
            self.assertHTMLTag(res(0), 'div', size=2, class_=classref)

            title = res(0)(0)
            self.assertHTMLTag(title,
                               'div',
                               size=2,
                               class_='card-title moose-alert-title')
            self.assertHTMLTag(title(0),
                               'i',
                               size=1,
                               class_='material-icons moose-inline-icon',
                               string=self.ICONS[i])
            self.assertHTMLTag(title(1),
                               'span',
                               size=1,
                               class_='moose-alert-title-brand',
                               string=b)

            content = res(0)(1)
            self.assertHTMLTag(content, 'div', size=1, class_='card-content')
            self.assertHTMLTag(content(0),
                               'div',
                               size=1,
                               class_='moose-alert-content')
            self._assertHTML(content(0)(0), self.MESSAGE[i])
Example #10
0
    def testMaterialize(self):
        _, res = self.execute(self.TEXT, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0),
                           'div',
                           size=2,
                           class_='card moose-alert moose-alert-construction')

        title = res(0)(0)
        self.assertHTMLTag(title,
                           'div',
                           size=1,
                           class_='card-title moose-alert-title')
        self.assertHTMLTag(title(0),
                           'span',
                           size=1,
                           class_='moose-alert-title-brand')
        self.assertHTMLString(title(0)(0), content='under construction')

        content = res(0)(1)
        self.assertHTMLTag(content, 'div', size=1, class_='card-content')
        self.assertHTMLTag(content(0),
                           'div',
                           size=1,
                           class_='moose-alert-content')
        self._assertHTML(content(0)(0))
Example #11
0
    def testSQARequirementPrequisites(self):
        tok = sqa.SQARequirementPrequisites(None, specs=[('path', 'name0', 'F1.1'),
                                                         ('path', 'name1', 'F1.2')])
        res = self.render(tok, renderer=base.HTMLRenderer())
        self.assertHTMLTag(res, 'body', size=1)
        self.assertHTMLTag(res(0), 'p', size=3)
        self.assertHTMLString(res(0)(0), 'Prerequisite(s): ')
        self.assertHTMLTag(res(0)(1), 'a', string='F1.1', href='#path:name0')
        self.assertHTMLTag(res(0)(2), 'a', string='F1.2', href='#path:name1')

        res = self.render(tok, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'p', size=3)
        self.assertHTMLString(res(0)(0), 'Prerequisite(s): ')
        self.assertHTMLTag(res(0)(1), 'a', string='F1.1', href='#path:name0')
        self.assertHTMLTag(res(0)(2), 'a', string='F1.2', href='#path:name1')

        res = self.render(tok, renderer=base.RevealRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'p', size=3)
        self.assertHTMLString(res(0)(0), 'Prerequisite(s): ')
        self.assertHTMLTag(res(0)(1), 'a', string='F1.1', href='#path:name0')
        self.assertHTMLTag(res(0)(2), 'a', string='F1.2', href='#path:name1')

        res = self.render(tok, renderer=base.LatexRenderer())
        self.assertLatexString(res(0), 'Prerequisite(s):~')
        self.assertLatexString(res(1), 'F1.1; F1.2')
Example #12
0
    def testSQARequirementDesign(self, mock_design):
        """
        RenderSQARequirementDesign.findDesign tries to look up a page via the translator.findPage,
        but the current setup for unit testing is not setup to allow for page lookups, so this
        is just testing for the error case for now.

        TODO: MooseDocsTestCase needs to handle the ability to find pages
        """
        mock_design.return_value = None # Allows log error to be skipped
        tok = sqa.SQARequirementDesign(None, design=['file.md'], line=42, filename='file')

        res = self.render(tok, renderer=base.HTMLRenderer())
        self.assertHTMLTag(res, 'body', size=1)
        self.assertHTMLTag(res(0), 'p', size=2, class_='moose-sqa-items')
        self.assertHTMLString(res(0)(0), 'Design: ')
        self.assertHTMLTag(res(0)(1), 'a', string='file.md', class_='moose-sqa-error')

        res = self.render(tok, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'p', size=2, class_='moose-sqa-items')
        self.assertHTMLString(res(0)(0), 'Design: ')
        self.assertHTMLTag(res(0)(1), 'a', string='file.md', class_='moose-sqa-error')

        res = self.render(tok, renderer=base.RevealRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'p', size=2, class_='moose-sqa-items')
        self.assertHTMLString(res(0)(0), 'Design: ')
        self.assertHTMLTag(res(0)(1), 'a', string='file.md', class_='moose-sqa-error')

        res = self.render(tok, renderer=base.LatexRenderer())
        self.assertSize(res, 2)
        self.assertLatexString(res(0), 'Design:~')
        self.assertLatex(res(1), 'Command', 'textcolor')
        self.assertLatexArg(res(1), 0, 'Brace', string='red')
        self.assertLatexString(res(1)(0), 'file.md')
Example #13
0
    def testMaterialize(self):
        _, res = self.execute(self.TEXT, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0),
                           'div',
                           size=2,
                           class_='card moose-alert moose-alert-tip')

        title = res(0)(0)
        self.assertHTMLTag(title,
                           'div',
                           size=2,
                           class_='card-title moose-alert-title')
        self.assertHTMLTag(title(0),
                           'span',
                           size=2,
                           class_='moose-alert-title-brand')
        self.assertHTMLString(title(0)(0), content='tip')
        self.assertHTMLString(title(0)(1), content=':')
        self.assertHTMLTag(title(1), 'a', size=1, href='https://google.com')
        self.assertHTMLString(title(1)(0), content='Google')

        content = res(0)(1)
        self.assertHTMLTag(content, 'div', size=1, class_='card-content')
        self.assertHTMLTag(content(0),
                           'div',
                           size=1,
                           class_='moose-alert-content')
        self._assertHTML(content(0)(0))
Example #14
0
    def testSQARequirementMatrix(self):
        tok = sqa.SQARequirementMatrix(None)

        res = self.render(tok, renderer=base.HTMLRenderer())
        self.assertSize(res, 1)
        self.assertHTMLTag(res(0),
                           'ul',
                           size=0,
                           class_='moose-sqa-requirements')

        res = self.render(tok, renderer=base.MaterializeRenderer())
        self.assertSize(res, 1)
        self.assertHTMLTag(
            res(0),
            'ul',
            size=0,
            class_='moose-sqa-requirements collection with-header')

        res = self.render(tok, renderer=base.RevealRenderer())
        self.assertSize(res, 1)
        self.assertHTMLTag(res(0),
                           'ul',
                           size=0,
                           class_='moose-sqa-requirements')

        res = self.render(tok, renderer=base.LatexRenderer())
        self.assertSize(res, 0)
    def testRenderField(self):
        _, res = self.execute(TEXT, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=8)

        self.assertHTMLTag(res(0), 'h1', size=3)
        self.assertEqual(res(0).text(), 'Template Extension')
        self.assertHTMLTag(res(1), 'p', size=10)
        self.assertEqual(res(1).text(), "The MOOSE project is amazing !")

        self.assertHTMLTag(res(2), 'h2', size=5)
        self.assertEqual(res(2).text(), 'Field with Defaults')
        self.assertHTMLTag(res(3), 'p', size=17)
        self.assertEqual(
            res(3).text(), "This is the default message , it is great .")

        self.assertHTMLTag(res(4), 'h2', size=5)
        self.assertEqual(res(4).text(), 'Field with Replacement')
        self.assertHTMLTag(res(5), 'p', size=22)
        self.assertEqual(
            res(5).text(),
            "This is some content that should be below the second heading .")

        self.assertHTMLTag(res(6), 'h2', size=7)
        self.assertEqual(res(6).text(), 'Field with Missing Replacement')
        self.assertHTMLTag(res(7), 'div', size=3)
Example #16
0
    def testMaterialize(self):
        _, res = self.execute(self.TEXT, renderer=base.MaterializeRenderer())
        print(res)
        self.assertHTMLTag(res, 'div', size=2)
        self.assertHTMLTag(res(0), 'p', size=1)
        self.assertHTMLTag(res(0, 0),
                           'a',
                           string=u'"variable"',
                           class_='moose-modal-link modal-trigger')

        self.assertHTMLTag(res(1), 'div', size=1, class_='moose-modal modal')
        self.assertHTMLTag(res(1, 0), 'div', size=4, class_='modal-content')
        self.assertHTMLTag(res(1, 0, 0), 'h4', size=1, string=u'variable')
        self.assertHTMLTag(res(1, 0, 1),
                           'p',
                           size=2,
                           class_='moose-parameter-description-cpptype')
        self.assertEqual(u"NonlinearVariableName", res(1, 0, 1, 1)['content'])
        self.assertHTMLTag(res(1, 0, 2),
                           'p',
                           size=2,
                           class_='moose-parameter-description-options')
        self.assertHTMLTag(res(1, 0, 3),
                           'p',
                           size=2,
                           class_='moose-parameter-description')
        self.assertIn(u"The name of the variable", res(1, 0, 3, 1)['content'])
Example #17
0
    def testMaterialize(self):
        _, res = self.execute('!content a-to-z location=extensions',
                              renderer=base.MaterializeRenderer())

        b = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
        self.assertHTMLTag(res(0),
                           'div',
                           size=len(b),
                           class_='moose-a-to-z-buttons')
        for i in range(0, len(b)):
            if b[i] in ['A', 'C', 'T']:
                self.assertHTMLTag(res(0)(i),
                                   'a',
                                   class_='btn moose-a-to-z-button',
                                   string=b[i])
            else:
                self.assertHTMLTag(res(0)(i),
                                   'a',
                                   class_='btn moose-a-to-z-button disabled',
                                   string=b[i])

        res(0).parent = None
        print(res)
        self.assertHTMLTag(res, 'div', size=6)
        self._assertHTML(res)
Example #18
0
    def testMaterialize(self):
        ast = modal.ModalSourceLink(None, src='framework/Makefile')
        res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertSize(res, 1)
        self.assertHTMLTag(res(0), 'span', size=1,
                           string='(python/MooseDocs/test/extensions/framework/Makefile)',
                           class_='moose-source-filename tooltipped')

        # An input file should render because it matches a pattern in the 'exceptions' setting
        ast = modal.ModalSourceLink(None, src='moose/test/tests/kernels/simple_diffusion/simple_diffusion.i')
        res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertSize(res, 2)
        self.assertHTMLTag(res(0), 'a', size=1,
                           string='(python/MooseDocs/test/extensions/moose/test/tests/kernels/simple_diffusion/simple_diffusion.i)',
                           class_='moose-source-filename tooltipped modal-trigger')
        self.assertHTMLTag(res(1), 'div', size=2, class_='moose-modal modal')
Example #19
0
    def testBookmarkWrong(self):
        link = autolink.AutoLink(None, page='core.md', bookmark='wrong')

        res = self.render(link, renderer=base.HTMLRenderer())
        self.assertHTMLTag(res, 'body', size=1)
        self.assertHTMLTag(res(0),
                           'a',
                           string='extensions/core.html#wrong',
                           href='extensions/core.html#wrong',
                           class_='moose-error')

        res = self.render(link, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0),
                           'a',
                           string='extensions/core.html#wrong',
                           href='extensions/core.html#wrong',
                           class_='moose-error')

        res = self.render(link, renderer=base.RevealRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0),
                           'a',
                           string='extensions/core.html#wrong',
                           href='extensions/core.html#wrong',
                           class_='moose-error')

        res = self.render(link, renderer=base.LatexRenderer())
        self.assertSize(res, 1)
        self.assertLatexString(res(0), '_text_')
Example #20
0
    def testCodeBlock(self):
        text = "```\nint x = 0;\n```"
        ast = self.tokenize(text)
        self.assertToken(ast(0),
                         'Code',
                         language='text',
                         content='\nint x = 0;\n',
                         escape=True)

        def helper(r):
            self.assertHTMLTag(r(0), 'pre', class_='moose-pre')
            self.assertHTMLTag(r(0)(0), 'code', class_='language-text')
            self.assertHTMLString(r(0)(0)(0), '\nint x = 0;\n', escape=True)

        res = self.render(ast)
        self.assertHTMLTag(res, 'body')
        helper(res)

        res = self.render(ast, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div')
        helper(res)

        tex = self.render(ast, renderer=base.LatexRenderer())
        self.assertLatex(tex(0),
                         'Environment',
                         'verbatim',
                         after_begin='\n',
                         before_end='\n',
                         escape=False)
        self.assertLatexString(tex(0)(0), 'int x = 0;', escape=False)
Example #21
0
    def testBookmark(self):
        link = autolink.AutoLink(None, page='core.md', bookmark='unordered-nested-lists')

        res = self.render(link, renderer=base.HTMLRenderer())
        self.assertHTMLTag(res, 'body', size=1)
        self.assertHTMLTag(res(0), 'a', size=3, href='extensions/core.html#unordered-nested-lists')
        self.assertHTMLString(res(0)(0), 'Nested')
        self.assertHTMLString(res(0)(1), ' ')
        self.assertHTMLString(res(0)(2), 'lists')

        res = self.render(link, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'a', size=3, href='extensions/core.html#unordered-nested-lists')
        self.assertHTMLString(res(0)(0), 'Nested')
        self.assertHTMLString(res(0)(1), ' ')
        self.assertHTMLString(res(0)(2), 'lists')

        res = self.render(link, renderer=base.RevealRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'a', size=3, href='extensions/core.html#unordered-nested-lists')
        self.assertHTMLString(res(0)(0), 'Nested')
        self.assertHTMLString(res(0)(1), ' ')
        self.assertHTMLString(res(0)(2), 'lists')

        res = self.render(link, renderer=base.LatexRenderer())
        self.assertSize(res, 1)
        self.assertLatex(res(0), 'Command', 'hyperref')
        self.assertLatexArg(res(0), 0, 'Bracket', 'unordered-nested-lists')
        self.assertLatexString(res(0)(0), 'Nested')
        self.assertLatexString(res(0)(1), ' ')
        self.assertLatexString(res(0)(2), 'lists')
Example #22
0
 def testReportMaterialize(self):
     ast = self.tokenize(self.REPORT)
     res = self.render(ast, renderer=base.MaterializeRenderer())
     self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
     self.assertHTMLTag(res(0), 'div', size=1, class_='moose-civet-test-report')
     self.assertHTMLTag(res(0,0), 'table')
     self.assertGreater(len(res(0,0)), 1)
Example #23
0
    def testSQARequirementMatrixItemUnSatisfied(self):

        tok = sqa.SQARequirementMatrixItem(None,
                                           label='F1.1.1',
                                           satisfied=False)

        res = self.render(tok, renderer=base.HTMLRenderer())
        self.assertHTMLTag(
            res(0)(0),
            'span',
            string='F1.1.1',
            class_=
            'moose-sqa-requirement-number moose-sqa-requirement-unsatisfied')

        res = self.render(tok, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(
            res(0)(0),
            'span',
            string='F1.1.1',
            class_=
            'moose-sqa-requirement-number tooltipped moose-sqa-requirement-unsatisfied'
        )

        res = self.render(tok, renderer=base.RevealRenderer())
        self.assertHTMLTag(
            res(0)(0),
            'span',
            string='F1.1.1',
            class_=
            'moose-sqa-requirement-number moose-sqa-requirement-unsatisfied')

        res = self.render(tok, renderer=base.LatexRenderer())
        arg = res(0)['args'][0]
        self.assertLatex(arg(0), 'Command', 'textcolor', string='F1.1.1')
        self.assertLatexArg(arg(0), 0, 'Brace', string='red')
Example #24
0
    def _testBookmarkHelper(self, link):
        res = self.render(link, renderer=base.HTMLRenderer())
        self.assertHTMLTag(res, 'body', size=1)
        self.assertHTMLTag(res(0),
                           'a',
                           size=3,
                           href='extensions/core.html#unordered-nested-lists')
        self.assertHTMLString(res(0)(0), 'Nested')
        self.assertHTMLString(res(0)(1), ' ')
        self.assertHTMLString(res(0)(2), 'lists')

        res = self.render(link, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0),
                           'a',
                           size=3,
                           href='extensions/core.html#unordered-nested-lists')
        self.assertHTMLString(res(0)(0), 'Nested')
        self.assertHTMLString(res(0)(1), ' ')
        self.assertHTMLString(res(0)(2), 'lists')

        res = self.render(link, renderer=base.RevealRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0),
                           'a',
                           size=3,
                           href='extensions/core.html#unordered-nested-lists')
        self.assertHTMLString(res(0)(0), 'Nested')
        self.assertHTMLString(res(0)(1), ' ')
        self.assertHTMLString(res(0)(2), 'lists')
Example #25
0
    def testSQARequirementMatrixItemSatisfied(self):

        tok = sqa.SQARequirementMatrixItem(None, label='F1.1.1', reqname='path:Foo')

        res = self.render(tok, renderer=base.HTMLRenderer())
        self.assertHTMLTag(res, 'body', size=1)
        self.assertHTMLTag(res(0), 'li', size=2)
        self.assertHTMLTag(res(0)(0), 'span', string='F1.1.1', class_='moose-sqa-requirement-number')
        self.assertHTMLTag(res(0)(1), 'span', size=0, class_='moose-sqa-requirement-content')

        res = self.render(tok, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0), 'li', size=2, class_='collection-item')
        self.assertHTMLTag(res(0)(0), 'span', string='F1.1.1', id_='path:Foo', class_='moose-sqa-requirement-number tooltipped', **{'data-tooltip':'path:Foo'})
        self.assertHTMLTag(res(0)(1), 'span', size=0, class_='moose-sqa-requirement-content')

        res = self.render(tok, renderer=base.RevealRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'li', size=2)
        self.assertHTMLTag(res(0)(0), 'span', string='F1.1.1', class_='moose-sqa-requirement-number')
        self.assertHTMLTag(res(0)(1), 'span', size=0, class_='moose-sqa-requirement-content')

        res = self.render(tok, renderer=base.LatexRenderer())
        self.assertSize(res, 1)
        self.assertLatex(res(0), 'Environment', 'Requirement')
        self.assertLatexArg(res(0), 0, 'Brace', string='F1.1.1')
Example #26
0
    def testURLAlternative(self):
        link = autolink.AutoLink(None,
                                 page='not_a_file.md',
                                 alternative='https://www.google.com/')
        core.Word(link, content='Google')

        res = self.render(link, renderer=base.HTMLRenderer())
        self.assertHTMLTag(res, 'body', size=1)
        self.assertHTMLTag(res(0),
                           'a',
                           href='https://www.google.com/',
                           string='Google')

        res = self.render(link, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0),
                           'a',
                           href='https://www.google.com/',
                           string='Google')

        res = self.render(link, renderer=base.RevealRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0),
                           'a',
                           href='https://www.google.com/',
                           string='Google')
Example #27
0
    def testSQARequirementIssues(self):

        tok = sqa.SQARequirementIssues(None, issues=['#1', '#2'], url='https://github.com/idaholab/moose')
        res = self.render(tok, renderer=base.HTMLRenderer())
        self.assertHTMLTag(res, 'body', size=1)
        self.assertHTMLTag(res(0), 'p', size=3, class_='moose-sqa-items')
        self.assertHTMLString(res(0)(0), 'Issue(s): ')
        self.assertHTMLTag(res(0)(1), 'a', string='#1', href='https://github.com/idaholab/moose/issues/1')
        self.assertHTMLTag(res(0)(2), 'a', string='#2', href='https://github.com/idaholab/moose/issues/2')

        res = self.render(tok, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'p', size=3, class_='moose-sqa-items')
        self.assertHTMLString(res(0)(0), 'Issue(s): ')
        self.assertHTMLTag(res(0)(1), 'a', string='#1', href='https://github.com/idaholab/moose/issues/1')
        self.assertHTMLTag(res(0)(2), 'a', string='#2', href='https://github.com/idaholab/moose/issues/2')

        res = self.render(tok, renderer=base.RevealRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'p', size=3, class_='moose-sqa-items')
        self.assertHTMLString(res(0)(0), 'Issue(s): ')
        self.assertHTMLTag(res(0)(1), 'a', string='#1', href='https://github.com/idaholab/moose/issues/1')
        self.assertHTMLTag(res(0)(2), 'a', string='#2', href='https://github.com/idaholab/moose/issues/2')

        res = self.render(tok, renderer=base.LatexRenderer())
        self.assertSize(res, 3)
        self.assertLatexString(res(0), 'Issue(s):~')
        self.assertLatex(res(1), 'Command', 'href', string='#1')
        self.assertLatexArg(res(1), 0, 'Brace', 'https://github.com/idaholab/moose/issues/1')
        self.assertLatex(res(2), 'Command', 'href', string='#2')
        self.assertLatexArg(res(2), 0, 'Brace', 'https://github.com/idaholab/moose/issues/2')
Example #28
0
    def testMaterialize(self):
        _, res = self.execute(self.TEXT, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1, class_='moose-content')
        self.assertHTMLTag(res(0),
                           'div',
                           size=2,
                           class_='card moose-alert moose-alert-note')

        title = res(0)(0)
        self.assertHTMLTag(title,
                           'div',
                           size=4,
                           class_='card-title moose-alert-title')
        self.assertHTMLTag(title(0),
                           'i',
                           size=1,
                           class_='material-icons moose-inline-icon',
                           string='comment')
        self.assertHTMLString(title(1), content='A')
        self.assertHTMLString(title(2), content=' ')
        self.assertHTMLString(title(3), content='Title')

        content = res(0)(1)
        self.assertHTMLTag(content, 'div', size=1, class_='card-content')
        self.assertHTMLTag(content(0),
                           'div',
                           size=1,
                           class_='moose-alert-content')
        self._assertHTML(content(0)(0))
Example #29
0
    def testSQARequirementDetails(self):

        tok = sqa.SQARequirementDetails(None)
        sqa.SQARequirementDetailItem(tok, label='foo')
        sqa.SQARequirementDetailItem(tok, label='bar')

        res = self.render(tok, renderer=base.HTMLRenderer())
        self.assertHTMLTag(res, 'body', size=1)
        self.assertHTMLTag(res(0), 'ol', size=2, class_='moose-sqa-details-list')
        self.assertHTMLTag(res(0)(0), 'li', size=0, class_='moose-sqa-detail-item')
        self.assertHTMLTag(res(0)(1), 'li', size=0, class_='moose-sqa-detail-item')

        res = self.render(tok, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'ol', size=2, class_='moose-sqa-details-list')
        self.assertHTMLTag(res(0)(0), 'li', size=0, class_='moose-sqa-detail-item')
        self.assertHTMLTag(res(0)(1), 'li', size=0, class_='moose-sqa-detail-item')

        res = self.render(tok, renderer=base.RevealRenderer())
        self.assertHTMLTag(res, 'div', size=1)
        self.assertHTMLTag(res(0), 'ol', size=2, class_='moose-sqa-details-list')
        self.assertHTMLTag(res(0)(0), 'li', size=0, class_='moose-sqa-detail-item')
        self.assertHTMLTag(res(0)(1), 'li', size=0, class_='moose-sqa-detail-item')

        res = self.render(tok, renderer=base.LatexRenderer())
        self.assertLatex(res(0), 'Environment', 'enumerate')
        self.assertLatex(res(0)(0), 'Command', 'item')
        self.assertLatex(res(0)(1), 'Command', 'item')
Example #30
0
    def testMaterialize(self):
        _, res = self.execute(self.TEXT, renderer=base.MaterializeRenderer())
        self.assertHTMLTag(res, 'div', size=2, class_='moose-content')

        prev = 'extensions/' + self.PREV[:-2] + 'html'
        next = 'extensions/' + self.NEXT[:-2] + 'html'

        self.assertHTMLTag(res(0),
                           'div',
                           size=2,
                           class_='moose-content-pagination')
        self.assertHTMLTag(res(0)(0),
                           'a',
                           size=2,
                           class_='moose-content-previous btn',
                           href=prev)
        self.assertHTMLString(res(0)(0)(0), content='Previous')
        self.assertHTMLTag(res(0)(0)(1),
                           'i',
                           size=1,
                           class_='material-icons left')
        self.assertHTMLString(res(0)(0)(1)(0), content='arrow_back')
        self.assertHTMLTag(res(0)(1),
                           'a',
                           size=2,
                           class_='moose-content-next btn',
                           href=next)
        self.assertHTMLString(res(0)(1)(0), content='Next')
        self.assertHTMLTag(res(0)(1)(1),
                           'i',
                           size=1,
                           class_='material-icons right')
        self.assertHTMLString(res(0)(1)(1)(0), content='arrow_forward')

        self.assertHTMLTag(res(1),
                           'div',
                           size=2,
                           class_='moose-content-pagination')
        self.assertHTMLTag(res(1)(0),
                           'a',
                           size=2,
                           class_='moose-content-previous btn',
                           href=prev)
        self.assertHTMLString(res(1)(0)(0), content='Material Icon')
        self.assertHTMLTag(res(1)(0)(1),
                           'i',
                           size=1,
                           class_='material-icons left')
        self.assertHTMLString(res(1)(0)(1)(0), content='arrow_back')
        self.assertHTMLTag(res(1)(1),
                           'a',
                           size=2,
                           class_='moose-content-next btn',
                           href=next)
        self.assertHTMLString(res(1)(1)(0), content='Config Extension')
        self.assertHTMLTag(res(1)(1)(1),
                           'i',
                           size=1,
                           class_='material-icons right')
        self.assertHTMLString(res(1)(1)(1)(0), content='arrow_forward')