Ejemplo n.º 1
0
    def from_json_file(self, f):
        logger.debug('Test resource: %s' % f)

        case = Case.from_json_file(f)
        case.full_clean()
        case.save()

        self.assertGreaterEqual(len(case.text), 300,
                                'Case text is too short: %s' % case.text)

        logger.debug('Test OK: %s' % case)
Ejemplo n.º 2
0
    def test_raise_error_from_json_file(self):

        directory = os.path.join(RESOURCE_DIR, 'invalid_cases')
        for f in os.listdir(directory):
            f = os.path.join(directory, f)

            logger.debug('Test resource: %s' % f)

            try:
                Case.from_json_file(f)
                raise ValueError('ProcessingError not raised with %s' % f)
            except ProcessingError:
                pass
Ejemplo n.º 3
0
    def test_extract_law_and_case_refs_2(self):
        unprocessed = Case.from_json_file(
            os.path.join(RESOURCE_DIR, 'extract_refs/2.json'))
        case = ExtractRefs(law_refs=True, case_refs=True).process(unprocessed)

        # TODO Old validated value: 56
        self.assertEqual(62, len(case.reference_markers),
                         'Invalid number of references')
Ejemplo n.º 4
0
    def test_extract_law_refs_1(self):
        unprocessed = Case.from_json_file(
            os.path.join(RESOURCE_DIR, 'extract_refs/1.json'))
        case = ExtractRefs(law_refs=True, case_refs=False).process(unprocessed)

        # TODO Validate test - old value: 33
        self.assertEqual(33, len(case.reference_markers),
                         'Invalid number of references')
Ejemplo n.º 5
0
    def test_case_serializable(self):
        # TODO >> With post processing FS
        f = os.path.join(RESOURCE_DIR, 'serialized_case.json')

        a = Case(file_number='ABC/123', date=date(year=2000, month=10, day=2))
        a_json = a.to_json(f)

        b = Case.from_json_file(f)
        b_json = b.to_json()

        self.assertEqual(a_json, b_json)
Ejemplo n.º 6
0
    def test_case_serializable(self):
        # TODO >> With post processing FS
        file_path = os.path.join(settings.WORKING_DIR, 'serialized_case.json')
        a = Case(file_number='ABC/123', date=date(year=2000, month=10, day=2))
        a.save()
        a_json = a.to_json(file_path)

        b = Case.from_json_file(file_path)
        b_json = b.to_json()

        # Clean up again
        os.remove(file_path)

        # Compare
        self.assertEqual(a_json, b_json)
Ejemplo n.º 7
0
    def test_extract_law_and_case_refs_3(
            self):  # TODO Requires more law book BauGB
        """
        Assert:

        (vgl. Schl.-Holst. OVG, Urteil vom 19.01.2012 - 1 LB 11/11 -, juris [Rn. 23 f.])
        (vgl. OVG NRW, Urteil vom 10.10.1996 - 7 A 4185/95 -, juris [Rn. 68])
        (vgl. BVerwG, Beschluss vom 12.11.1987 - 4 B 216/87 -, juris [Rn. 2]; VGH BW, Urteil vom 10.01.2007 - 3 S 1251/06 -, juris [Rn. 25])
        (so BVerfG in std. Rspr., vgl. z.B. BVerfG, Beschluss vom 23.07.2003 –- 2 BvR 624/01 -, juris [Rn. 16 f.])

        :return:
        """
        unprocessed = Case.from_json_file(
            os.path.join(RESOURCE_DIR, 'extract_refs/3.json'))
        case = ExtractRefs(law_refs=True, case_refs=True).process(unprocessed)

        self.assertEqual(5, len(case.reference_markers),
                         'Invalid number of references')
Ejemplo n.º 8
0
    def test_extract_case_refs_from_juris(self):
        fixtures = [
            {
                'file': '1.json',
                'ref_count': 8,  # TODO verify number
            },
            {
                'file': '2.json',
                'ref_count': 5,  # TODO verify number
            },
            {
                'file': '3.json',
                'ref_count': 5,  # Correct number
            }
        ]

        for f in fixtures:
            unprocessed = Case.from_json_file(
                os.path.join(RESOURCE_DIR, 'extract_refs/juris/' + f['file']))
            case = ExtractRefs(law_refs=False,
                               case_refs=True).process(unprocessed)

            self.assertEqual(f['ref_count'], len(case.reference_markers),
                             'Invalid number of references: %s' % f)