Example #1
0
    def test_unknown_field(self):
        bie = ImportEvent(file_name="fn")
        bie.save()

        ie = TreeImportEvent(file_name='file',
                             owner=self.user,
                             base_import_event=bie)
        ie.save()

        base_rows = TreeImportRow.objects.count()

        c = self.write_csv([['address','name','age','point x','point y'],
                            ['123 Beach St','a','b','5','5'],
                            ['222 Main St','a','b','8','8']])

        create_rows_for_event(ie, c)
        rslt = ie.validate_main_file()

        self.assertFalse(rslt)

        ierrors = json.loads(ie.errors)

        # Should be x/y point error
        self.assertTrue(len(ierrors), 1)
        etpl = (ierrors[0]['code'], ierrors[0]['msg'], False)

        self.assertEqual(etpl, errors.UNMATCHED_FIELDS)
        self.assertEqual(set(ierrors[0]['data']), set(['name','age']))
Example #2
0
    def test_missing_point_field(self):
        bie = ImportEvent(file_name="fn")
        bie.save()

        ie = TreeImportEvent(file_name='file',
                             owner=self.user,
                             base_import_event=bie)
        ie.save()

        base_rows = TreeImportRow.objects.count()

        c = self.write_csv([['address','plot width','plot_length'],
                            ['123 Beach St','5','5'],
                            ['222 Main St','8','8']])

        create_rows_for_event(ie, c)
        rslt = ie.validate_main_file()

        self.assertFalse(rslt)

        ierrors = json.loads(ie.errors)

        # Should be x/y point error
        self.assertTrue(len(ierrors), 1)
        etpl = (ierrors[0]['code'], ierrors[0]['msg'], True)

        self.assertEqual(etpl, errors.MISSING_POINTS)
Example #3
0
    def test_empty_file_error(self):
        bie = ImportEvent(file_name="fn")
        bie.save()

        ie = TreeImportEvent(file_name='file',
                             owner=self.user,
                             base_import_event=bie)
        ie.save()

        base_rows = TreeImportRow.objects.count()

        c = self.write_csv([['header_field1','header_fields2','header_field3']])

        create_rows_for_event(ie, c)
        rslt = ie.validate_main_file()

        # No rows added and validation failed
        self.assertEqual(TreeImportRow.objects.count(), base_rows)
        self.assertFalse(rslt)

        ierrors = json.loads(ie.errors)

        # The only error is a bad file error
        self.assertTrue(len(ierrors), 1)
        etpl = (ierrors[0]['code'], ierrors[0]['msg'], True)

        self.assertEqual(etpl, errors.EMPTY_FILE)
Example #4
0
    def test_unknown_field(self):
        bie = ImportEvent(file_name="fn")
        bie.save()

        ie = TreeImportEvent(file_name='file',
                             owner=self.user,
                             base_import_event=bie)
        ie.save()

        base_rows = TreeImportRow.objects.count()

        c = self.write_csv([['address', 'name', 'age', 'point x', 'point y'],
                            ['123 Beach St', 'a', 'b', '5', '5'],
                            ['222 Main St', 'a', 'b', '8', '8']])

        create_rows_for_event(ie, c)
        rslt = ie.validate_main_file()

        self.assertFalse(rslt)

        ierrors = json.loads(ie.errors)

        # Should be x/y point error
        self.assertTrue(len(ierrors), 1)
        etpl = (ierrors[0]['code'], ierrors[0]['msg'], False)

        self.assertEqual(etpl, errors.UNMATCHED_FIELDS)
        self.assertEqual(set(ierrors[0]['data']), set(['name', 'age']))
Example #5
0
    def test_missing_point_field(self):
        bie = ImportEvent(file_name="fn")
        bie.save()

        ie = TreeImportEvent(file_name='file',
                             owner=self.user,
                             base_import_event=bie)
        ie.save()

        base_rows = TreeImportRow.objects.count()

        c = self.write_csv([['address', 'plot width', 'plot_length'],
                            ['123 Beach St', '5', '5'],
                            ['222 Main St', '8', '8']])

        create_rows_for_event(ie, c)
        rslt = ie.validate_main_file()

        self.assertFalse(rslt)

        ierrors = json.loads(ie.errors)

        # Should be x/y point error
        self.assertTrue(len(ierrors), 1)
        etpl = (ierrors[0]['code'], ierrors[0]['msg'], True)

        self.assertEqual(etpl, errors.MISSING_POINTS)
Example #6
0
    def test_empty_file_error(self):
        bie = ImportEvent(file_name="fn")
        bie.save()

        ie = TreeImportEvent(file_name='file',
                             owner=self.user,
                             base_import_event=bie)
        ie.save()

        base_rows = TreeImportRow.objects.count()

        c = self.write_csv(
            [['header_field1', 'header_fields2', 'header_field3']])

        create_rows_for_event(ie, c)
        rslt = ie.validate_main_file()

        # No rows added and validation failed
        self.assertEqual(TreeImportRow.objects.count(), base_rows)
        self.assertFalse(rslt)

        ierrors = json.loads(ie.errors)

        # The only error is a bad file error
        self.assertTrue(len(ierrors), 1)
        etpl = (ierrors[0]['code'], ierrors[0]['msg'], True)

        self.assertEqual(etpl, errors.EMPTY_FILE)