예제 #1
0
    def test_attach_metadata_extra_fields(self, su, generator):
        su.return_value.interp.return_value = '200-Subpart-Interp'
        layer = {
            "200-2-b-3-i": [{
                'reference': '200-2-b-3-i-Interp',
                "text": "Some contents are here"
            }],
        }
        il = InterpretationsLayer(layer)
        il.partial_view = Mock()
        il.partial_view.return_value.content = 'content'

        node = {'label_id': '200-2-b-3-i'}
        il.attach_metadata(node)
        self.assertEqual(
            node['interp'], {
                'for_markup_id':
                '200-2-b-3-i',
                'for_label':
                '2(b)(3)(i)',
                'interps': [{
                    'label_id': '200-2-b-3-i-Interp',
                    'markup': 'content',
                    'section_id': '200-Subpart-Interp'
                }]
            })
 def test_preprocess_root(self, get_cache):
     node = {
         'text': 'tttt',
         'children': [],
         'node_type': 'regtext',
         'label': ['1234', '56', 'a']
     }
     il = InterpretationsLayer({})
     il.preprocess_root(node)
     self.assertEqual(il.root_interp_label, '1234-56-a-Interp')
    def test_apply_layer_section(self, su, piv):
        layer = {
            "200-2": [{
                "reference": "200-2-Interp",
                "text": "Some contents are here"
            }],
        }
        piv.as_view.return_value.return_value.content = 'content'
        il = InterpretationsLayer(layer)

        self.assertEqual('2', il.apply_layer('200-2')[1]['for_label'])
    def test_apply_layer_section(self, su, generator):
        layer = {
            "200-2": [{
                "reference": "200-2-Interp",
                "text": "Some contents are here"
            }],
        }
        il = InterpretationsLayer(layer)
        il.partial_view = Mock()
        il.partial_view.return_value.content = 'content'

        self.assertEqual('2', il.apply_layer('200-2')[1]['for_label'])
    def test_apply_layer_appendix(self, su, piv):
        layer = {
            "200-Q-5": [{
                "reference": "200-Q-5-Interp",
                "text": "Some contents are here"
            }],
        }
        il = InterpretationsLayer(layer)
        il.partial_view = Mock()
        il.partial_view.return_value.content = 'content'

        self.assertEqual('Appendix Q-5',
                         il.apply_layer('200-Q-5')[1]['for_label'])
예제 #6
0
    def test_attach_metadata_appendix(self, su, piv):
        layer = {
            "200-Q-5": [{
                "reference": "200-Q-5-Interp",
                "text": "Some contents are here"
            }],
        }
        il = InterpretationsLayer(layer)
        il.partial_view = Mock()
        il.partial_view.return_value.content = 'content'

        node = {'label_id': '200-Q-5'}
        il.attach_metadata(node)
        self.assertEqual('Appendix Q-5', node['interp']['for_label'])
예제 #7
0
    def test_attach_metadata_section(self, su, generator):
        layer = {
            "200-2": [{
                "reference": "200-2-Interp",
                "text": "Some contents are here"
            }],
        }
        il = InterpretationsLayer(layer)
        il.partial_view = Mock()
        il.partial_view.return_value.content = 'content'

        node = {'label_id': '200-2'}
        il.attach_metadata(node)
        self.assertEqual('2', node['interp']['for_label'])
    def test_apply_layer_cache(self, views, secturl, generator):
        il = InterpretationsLayer(
            {'1234-56-a': [{
                'reference': '1234-56-a-Interp'
            }]}, version='vvvv')
        il.root_interp_label = '1234-56-Interp'
        il.apply_layer('1234-56')
        self.assertFalse(generator.generator.get_tree_paragraph.called)

        il.apply_layer('1234-56-a')
        self.assertTrue(generator.generator.get_tree_paragraph.called)
        args = generator.generator.get_tree_paragraph.call_args[0]
        # Note that this is grabbing the section's interps
        self.assertEqual('1234-56-Interp', args[0])
        self.assertEqual('vvvv', args[1])
    def test_apply_layer_multiple_matches(self, su, piv):
        layer = {
            "200-2": [{
                "reference": "200-2-Interp",
                "text": "Some contents are here"
            }, {
                "reference": "200-2_3-Interp",
                "text": "Some more contents are here"
            }],
        }
        piv.as_view.return_value.return_value.content = 'content'
        il = InterpretationsLayer(layer)

        _, data = il.apply_layer('200-2')
        labels = [interp['label_id'] for interp in data['interps']]
        self.assertEqual(labels, ['200-2-Interp', '200-2_3-Interp'])
예제 #10
0
    def test_attach_metadata_cache(self, secturl, generator):
        il = InterpretationsLayer(
            {'1234-56-a': [{
                'reference': '1234-56-a-Interp'
            }]}, version='vvvv')
        il.root_interp_label = '1234-56-Interp'
        il.partial_view = Mock()
        il.partial_view.return_value.content = 'content'
        il.attach_metadata({'label_id': '1234-56'})
        self.assertFalse(generator.generator.get_tree_paragraph.called)

        il.attach_metadata({'label_id': '1234-56-a'})
        self.assertTrue(generator.generator.get_tree_paragraph.called)
        args = generator.generator.get_tree_paragraph.call_args[0]
        # Note that this is grabbing the section's interps
        self.assertEqual('1234-56-Interp', args[0])
        self.assertEqual('vvvv', args[1])
예제 #11
0
    def test_attach_metadata_multiple_matches(self, su, generator):
        layer = {
            "200-2": [{
                "reference": "200-2-Interp",
                "text": "Some contents are here"
            }, {
                "reference": "200-2_3-Interp",
                "text": "Some more contents are here"
            }],
        }
        il = InterpretationsLayer(layer)
        il.partial_view = Mock()
        il.partial_view.return_value.content = 'content'

        node = {'label_id': '200-2'}
        il.attach_metadata(node)
        labels = [interp['label_id'] for interp in node['interp']['interps']]
        self.assertEqual(labels, ['200-2-Interp', '200-2_3-Interp'])
    def test_apply_layer_section_different(self, su, piv):
        layer = {
            "200-2-a": [{
                "reference": "200-2-a-Interp",
                "text": "Some contents are here"
            }],
            "200-2-b": [{
                "reference": "200-2-a-Interp",
                "text": "Some contents are here"
            }],
        }
        piv.as_view.return_value.return_value.content = 'content'
        il = InterpretationsLayer(layer)

        _, result = il.apply_layer('200-2-a')
        self.assertEqual('2(a)', result['for_label'])

        _, result = il.apply_layer('200-2-b')
        self.assertEqual('2(b)', result['for_label'])
    def test_apply_layer_extra_fields(self, su, piv):
        su.return_value.interp.return_value = '200-Subpart-Interp'
        layer = {
            "200-2-b-3-i": [{
                'reference': '200-2-b-3-i-Interp',
                "text": "Some contents are here"
            }],
        }
        piv.as_view.return_value.return_value.content = 'content'

        il = InterpretationsLayer(layer)

        self.assertEqual(il.apply_layer('200-2-b-3-i'), ('interp', {
            'for_markup_id':
            '200-2-b-3-i',
            'for_label':
            '2(b)(3)(i)',
            'interps': [{
                'label_id': '200-2-b-3-i-Interp',
                'markup': 'content',
                'section_id': '200-Subpart-Interp'
            }]
        }))