def setUp(self):
        inline, par, sr = Mock(), Mock(), Mock()
        inline.get_layer_pairs.return_value = []
        par.apply_layers.side_effect = lambda x: x
        sr.get_layer_pairs.return_value = []

        self.builder = PreambleHTMLBuilder(inline, par, sr)
 def test_human_label(self):
     self.assertEqual(
         'FR #111_22',
         PreambleHTMLBuilder.human_label({'label': ['111_22']}))
     self.assertEqual(
         'Section III.A.ii.4',
         PreambleHTMLBuilder.human_label({
             'label': ['111_22', 'III', 'A', 'ii', '4', 'p1', 'p8']}))
Beispiel #3
0
def generate_html_tree(subtree, request, id_prefix=None):
    """Use the HTMLBuilder to generate a version of this subtree with
    appropriate markup. Currently, includes no layers"""
    layer_creator = LayerCreator()
    doc_id = "-".join(subtree["label"])
    layer_creator.add_layers(utils.layer_names(request), "preamble", doc_id, sectional=True)
    builder = PreambleHTMLBuilder(
        *layer_creator.get_appliers(), id_prefix=id_prefix, index_prefix=[0, subtree.get("lft")]
    )
    builder.tree = subtree
    builder.generate_html()

    return {"node": builder.tree, "markup_page_type": "reg-section"}
Beispiel #4
0
def generate_html_tree(subtree, request):
    """Use the HTMLBuilder to generate a version of this subtree with
    appropriate markup. Currently, includes no layers"""
    layer_creator = LayerCreator()
    doc_id = '-'.join(subtree['label'])
    layer_creator.add_layers(utils.layer_names(request), 'preamble',
                             doc_id, sectional=True)
    builder = PreambleHTMLBuilder(*layer_creator.get_appliers())
    builder.tree = subtree
    builder.generate_html()

    return {'node': builder.tree,
            'markup_page_type': 'reg-section'}
Beispiel #5
0
def generate_html_tree(subtree, request, id_prefix=None):
    """Use the HTMLBuilder to generate a version of this subtree with
    appropriate markup. Currently, includes no layers"""
    doc_id = '-'.join(subtree['label'])
    layers = list(generator.layers(
        utils.layer_names(request), 'preamble', doc_id, sectional=True))
    builder = PreambleHTMLBuilder(layers, id_prefix=id_prefix,
                                  index_prefix=[0, subtree.get('lft')])
    builder.tree = subtree
    builder.generate_html()

    return {'node': builder.tree,
            'markup_page_type': 'reg-section'}
class PreambleHTMLBuilderTest(TestCase):
    def setUp(self):
        inline, par, sr = Mock(), Mock(), Mock()
        inline.get_layer_pairs.return_value = []
        par.apply_layers.side_effect = lambda x: x
        sr.get_layer_pairs.return_value = []

        self.builder = PreambleHTMLBuilder(inline, par, sr)

    def test_human_label(self):
        self.assertEqual(
            'FR #111_22',
            PreambleHTMLBuilder.human_label({'label': ['111_22']}))
        self.assertEqual(
            'Section III.A.ii.4',
            PreambleHTMLBuilder.human_label({
                'label': ['111_22', 'III', 'A', 'ii', '4'],
                'indexes': [2, 0, 1, 3],
            }),
        )
        self.assertEqual(
            'Section III.A.ii.4 Paragraph 3.5',
            PreambleHTMLBuilder.human_label({
                'label': ['111_22', 'III', 'A', 'ii', '4', 'p3', 'p7'],
                'indexes': [2, 0, 1, 3, 2, 4]
            }),
        )

    def test_accepts_comment(self):
        """All of the preamble can be commented on. Some of it is called
        out"""
        node = {
            'label': ['ABCD_123', 'II', 'B', 'p4'],
            'text': 'Something',
            'node_type': 'preamble',
            'children': []
        }
        self.builder.process_node(node)
        self.assertTrue(node.get('accepts_comments'))
        self.assertFalse(node.get('comments_calledout'))

        node = {
            'title': 'B. Has a title',
            'label': ['ABCD_123', 'II', 'B'],
            'text': 'Something',
            'node_type': 'preamble',
            'children': []
        }
        self.builder.process_node(node)
        self.assertTrue(node.get('accepts_comments'))
        self.assertTrue(node.get('comments_calledout'))
Beispiel #7
0
def generate_html_tree(subtree, request, id_prefix=None):
    """Use the HTMLBuilder to generate a version of this subtree with
    appropriate markup. Currently, includes no layers"""
    layer_creator = LayerCreator()
    doc_id = '-'.join(subtree['label'])
    layer_creator.add_layers(utils.layer_names(request),
                             'preamble',
                             doc_id,
                             sectional=True)
    builder = PreambleHTMLBuilder(*layer_creator.get_appliers(),
                                  id_prefix=id_prefix)
    builder.tree = subtree
    builder.generate_html()

    return {'node': builder.tree, 'markup_page_type': 'reg-section'}
    def setUp(self):
        inline, par, sr = Mock(), Mock(), Mock()
        inline.get_layer_pairs.return_value = []
        par.apply_layers.side_effect = lambda x: x
        sr.get_layer_pairs.return_value = []

        self.builder = PreambleHTMLBuilder(inline, par, sr)
def generate_html_tree(subtree, request, id_prefix=None):
    """Use the HTMLBuilder to generate a version of this subtree with
    appropriate markup. Currently, includes no layers"""
    doc_id = '-'.join(subtree['label'])
    layers = list(
        generator.layers(utils.layer_names(request),
                         'preamble',
                         doc_id,
                         sectional=True))
    builder = PreambleHTMLBuilder(layers,
                                  id_prefix=id_prefix,
                                  index_prefix=[0, subtree.get('lft')])
    builder.tree = subtree
    builder.generate_html()

    return {'node': builder.tree, 'markup_page_type': 'reg-section'}
 def test_human_label(self):
     self.assertEqual(
         'FR #111_22',
         PreambleHTMLBuilder.human_label({'label': ['111_22']}))
     self.assertEqual(
         'Section III.A.ii.4',
         PreambleHTMLBuilder.human_label({
             'label': ['111_22', 'III', 'A', 'ii', '4'],
             'indexes': [2, 0, 1, 3],
         }),
     )
     self.assertEqual(
         'Section III.A.ii.4 Paragraph 3.5',
         PreambleHTMLBuilder.human_label({
             'label': ['111_22', 'III', 'A', 'ii', '4', 'p3', 'p7'],
             'indexes': [2, 0, 1, 3, 2, 4]
         }),
     )
 def test_human_label(self):
     self.assertEqual(
         'FR #111_22',
         PreambleHTMLBuilder.human_label({'label': ['111_22']}))
     self.assertEqual(
         'Section III.A.ii.4',
         PreambleHTMLBuilder.human_label({
             'label': ['111_22', 'III', 'A', 'ii', '4'],
             'indexes': [2, 0, 1, 3],
         }),
     )
     self.assertEqual(
         'Section III.A.ii.4 Paragraph 3.5',
         PreambleHTMLBuilder.human_label({
             'label': ['111_22', 'III', 'A', 'ii', '4', 'p3', 'p7'],
             'indexes': [2, 0, 1, 3, 2, 4]
         }),
     )
class PreambleHTMLBuilderTest(TestCase):
    def setUp(self):
        inline, par, sr = Mock(), Mock(), Mock()
        inline.get_layer_pairs.return_value = []
        par.apply_layers.side_effect = lambda x: x
        sr.get_layer_pairs.return_value = []

        self.builder = PreambleHTMLBuilder(inline, par, sr)

    def test_human_label(self):
        self.assertEqual(
            'FR #111_22',
            PreambleHTMLBuilder.human_label({'label': ['111_22']}))
        self.assertEqual(
            'Section III.A.ii.4',
            PreambleHTMLBuilder.human_label({
                'label': ['111_22', 'III', 'A', 'ii', '4'],
                'indexes': [2, 0, 1, 3],
            }),
        )
        self.assertEqual(
            'Section III.A.ii.4 Paragraph 3.5',
            PreambleHTMLBuilder.human_label({
                'label': ['111_22', 'III', 'A', 'ii', '4', 'p3', 'p7'],
                'indexes': [2, 0, 1, 3, 2, 4]
            }),
        )

    def test_accepts_comment(self):
        """All of the preamble can be commented on. Some of it is called
        out"""
        node = {'label': ['ABCD_123', 'II', 'B', 'p4'], 'text': 'Something',
                'node_type': 'preamble', 'children': []}
        self.builder.process_node(node)
        self.assertTrue(node.get('accepts_comments'))
        self.assertFalse(node.get('comments_calledout'))

        node = {'title': 'B. Has a title', 'label': ['ABCD_123', 'II', 'B'],
                'text': 'Something', 'node_type': 'preamble', 'children': []}
        self.builder.process_node(node)
        self.assertTrue(node.get('accepts_comments'))
        self.assertTrue(node.get('comments_calledout'))
def process_preamble_results(results):
    """Modify the results of a search over a notice preamble by adding a
    human-readable label, appropriate links, etc."""
    results = deepcopy(results)
    for result in results["results"]:
        result["header"] = PreambleHTMLBuilder.human_label(result)
        if "title" in result:
            result["header"] += " " + title(result["title"])
        result["section_id"] = "-".join([result["label"][0], "preamble"] + result["label"])
        result["url"] = "{}#{}".format(
            reverse("chrome_preamble", kwargs={"paragraphs": "/".join(result["label"][:2])}), "-".join(result["label"])
        )
    return results
def process_preamble_results(results):
    """Modify the results of a search over a notice preamble by adding a
    human-readable label, appropriate links, etc."""
    results = deepcopy(results)
    for result in results['results']:
        result['header'] = PreambleHTMLBuilder.human_label(result)
        if 'title' in result:
            result['header'] += ' ' + result['title']
        result['section_id'] = '-'.join(
            [result['label'][0], 'preamble'] + result['label'])
        result['url'] = '{}#{}'.format(
            reverse(
                'chrome_preamble',
                kwargs={'paragraphs': '/'.join(result['label'][:2])},
            ),
            '-'.join(result['label']),
        )
    return results
def process_preamble_results(results):
    """Modify the results of a search over a notice preamble by adding a
    human-readable label, appropriate links, etc."""
    results = deepcopy(results)
    for result in results['results']:
        result['header'] = PreambleHTMLBuilder.human_label(result)
        if 'title' in result:
            result['header'] += ' ' + result['title']
        result['section_id'] = '-'.join([result['label'][0], 'preamble'] +
                                        result['label'])
        result['url'] = '{}#{}'.format(
            reverse(
                'chrome_preamble',
                kwargs={'paragraphs': '/'.join(result['label'][:2])},
            ),
            '-'.join(result['label']),
        )
    return results
 def setUp(self):
     self.builder = PreambleHTMLBuilder()
 def setUp(self):
     self.builder = PreambleHTMLBuilder()