Example #1
0
 def testDietWithInfFlagging(self):
     tdf = TicDatFactory(**dietSchema())
     dat = tdf.copy_tic_dat(dietData())
     tdf.set_infinity_io_flag(999999999)
     file_one = os.path.join(_scratchDir, "dietInfFlag.xls")
     file_two = os.path.join(_scratchDir, "dietInfFlag.xlsx")
     tdf.xls.write_file(dat, file_one)
     tdf.xls.write_file(dat, file_two)
     dat_1 = tdf.xls.create_tic_dat(file_one)
     dat_2 = tdf.xls.create_tic_dat(file_two)
     self.assertTrue(tdf._same_data(dat, dat_1))
     self.assertTrue(tdf._same_data(dat, dat_2))
     tdf = tdf.clone()
     dat_1 = tdf.xls.create_tic_dat(file_one)
     self.assertTrue(tdf._same_data(dat, dat_1))
     tdf = TicDatFactory(**dietSchema())
     dat_1 = tdf.xls.create_tic_dat(file_one)
     dat_2 = tdf.xls.create_tic_dat(file_two)
     self.assertFalse(tdf._same_data(dat, dat_1))
     self.assertFalse(tdf._same_data(dat, dat_2))
     self.assertTrue(
         {_.categories["protein"]["maxNutrition"]
          for _ in [dat_1, dat_2]} == {999999999})
     for _ in [dat_1, dat_2]:
         _.categories["protein"]["maxNutrition"] = float("inf")
     self.assertTrue(tdf._same_data(dat, dat_1))
     self.assertTrue(tdf._same_data(dat, dat_2))
Example #2
0
    def testNulls(self):
        tdf = TicDatFactory(table=[["field one"], ["field two"]])
        dat = tdf.TicDat(table=[[None, 100], [200, "this"], ["that", 300],
                                [300, None], [400, "that"]])
        file_path = os.path.join(_scratchDir, "nulls.accdb")
        tdf.mdb.write_file(dat, file_path)
        dat_1 = tdf.mdb.create_tic_dat(file_path)
        self.assertTrue(tdf._same_data(dat, dat_1))

        tdf = TicDatFactory(table=[["field one"], ["field two"]])
        for f in ["field one", "field two"]:
            tdf.set_data_type("table", f, max=float("inf"), inclusive_max=True)
        tdf.set_infinity_io_flag(None)
        dat_inf = tdf.TicDat(
            table=[[float("inf"), 100], [200, "this"], ["that", 300],
                   [300, float("inf")], [400, "that"]])
        dat_1 = tdf.mdb.create_tic_dat(file_path)
        self.assertTrue(tdf._same_data(dat_inf, dat_1))
        tdf.mdb.write_file(dat_inf, makeCleanPath(file_path))
        dat_1 = tdf.mdb.create_tic_dat(file_path)
        self.assertTrue(tdf._same_data(dat_inf, dat_1))

        tdf = TicDatFactory(table=[["field one"], ["field two"]])
        for f in ["field one", "field two"]:
            tdf.set_data_type("table",
                              f,
                              min=-float("inf"),
                              inclusive_min=True)
        tdf.set_infinity_io_flag(None)
        dat_1 = tdf.mdb.create_tic_dat(file_path)
        self.assertFalse(tdf._same_data(dat_inf, dat_1))
        dat_inf = tdf.TicDat(
            table=[[float("-inf"), 100], [200, "this"], ["that", 300],
                   [300, -float("inf")], [400, "that"]])
        self.assertTrue(tdf._same_data(dat_inf, dat_1))
Example #3
0
    def testBooleansAndNulls(self):
        tdf = TicDatFactory(table=[["field one"], ["field two"]])
        dat = tdf.TicDat(table=[[None, 100], [200, True], [False, 300],
                                [300, None], [400, False]])
        file_one = os.path.join(_scratchDir, "boolDefaults_1.json")
        file_two = os.path.join(_scratchDir, "boolDefaults_2.json")
        tdf.json.write_file(dat, file_one, verbose=True)
        tdf.json.write_file(dat, file_two, verbose=False)
        dat_1 = tdf.json.create_tic_dat(file_one)
        dat_2 = tdf.json.create_tic_dat(file_two)
        self.assertTrue(tdf._same_data(dat, dat_1))
        self.assertTrue(tdf._same_data(dat, dat_2))

        tdf = TicDatFactory(table=[["field one"], ["field two"]])
        for f in ["field one", "field two"]:
            tdf.set_data_type("table", f, max=float("inf"), inclusive_max=True)
        tdf.set_infinity_io_flag(None)
        dat_inf = tdf.TicDat(
            table=[[float("inf"), 100], [200, True], [False, 300],
                   [300, float("inf")], [400, False]])
        dat_1 = tdf.json.create_tic_dat(file_one)
        dat_2 = tdf.json.create_tic_dat(file_two)
        self.assertTrue(tdf._same_data(dat_inf, dat_1))
        self.assertTrue(tdf._same_data(dat_inf, dat_2))
        tdf.json.write_file(dat_inf,
                            file_one,
                            verbose=True,
                            allow_overwrite=True)
        tdf.json.write_file(dat_inf,
                            file_two,
                            verbose=False,
                            allow_overwrite=True)
        dat_1 = tdf.json.create_tic_dat(file_one)
        dat_2 = tdf.json.create_tic_dat(file_two)
        self.assertTrue(tdf._same_data(dat_inf, dat_1))
        self.assertTrue(tdf._same_data(dat_inf, dat_2))

        tdf = TicDatFactory(table=[["field one"], ["field two"]])
        for f in ["field one", "field two"]:
            tdf.set_data_type("table",
                              f,
                              min=-float("inf"),
                              inclusive_min=True)
        tdf.set_infinity_io_flag(None)
        dat_1 = tdf.json.create_tic_dat(file_one)
        dat_2 = tdf.json.create_tic_dat(file_two)
        self.assertFalse(tdf._same_data(dat_inf, dat_1))
        self.assertFalse(tdf._same_data(dat_inf, dat_2))
        dat_inf = tdf.TicDat(
            table=[[float("-inf"), 100], [200, True], [False, 300],
                   [300, -float("inf")], [400, False]])
        self.assertTrue(tdf._same_data(dat_inf, dat_1))
        self.assertTrue(tdf._same_data(dat_inf, dat_2))
Example #4
0
 def testDietWithInfFlagging(self):
     tdf = TicDatFactory(**dietSchema())
     dat = tdf.copy_tic_dat(dietData())
     tdf.set_infinity_io_flag(999999999)
     path = os.path.join(_scratchDir, "dietInfFlag")
     tdf.csv.write_directory(dat, path)
     dat_1 = tdf.csv.create_tic_dat(path)
     self.assertTrue(tdf._same_data(dat, dat_1))
     tdf = tdf.clone()
     dat_1 = tdf.csv.create_tic_dat(path)
     self.assertTrue(tdf._same_data(dat, dat_1))
     tdf = TicDatFactory(**dietSchema())
     dat_1 = tdf.csv.create_tic_dat(path)
     self.assertFalse(tdf._same_data(dat, dat_1))
Example #5
0
 def testDietWithInfFlagging(self):
     tdf = TicDatFactory(**dietSchema())
     dat = tdf.copy_tic_dat(dietData())
     tdf.set_infinity_io_flag(999999999)
     file_one = os.path.join(_scratchDir, "dietInfFlag.sql")
     file_two = os.path.join(_scratchDir, "dietInfFlag.db")
     tdf.sql.write_sql_file(dat, file_one)
     tdf.sql.write_db_data(dat, file_two)
     dat_1 = tdf.sql.create_tic_dat_from_sql(file_one)
     dat_2 = tdf.sql.create_tic_dat(file_two)
     self.assertTrue(tdf._same_data(dat, dat_1))
     self.assertTrue(tdf._same_data(dat, dat_2))
     tdf = tdf.clone()
     dat_1 = tdf.sql.create_tic_dat_from_sql(file_one)
     self.assertTrue(tdf._same_data(dat, dat_1))
     tdf = TicDatFactory(**dietSchema())
     dat_1 = tdf.sql.create_tic_dat_from_sql(file_one)
     self.assertFalse(tdf._same_data(dat, dat_1))
Example #6
0
 def testDietWithInfFlagging(self):
     tdf = TicDatFactory(**dietSchema())
     dat = tdf.copy_tic_dat(dietData())
     tdf.set_infinity_io_flag(999999999)
     file_one = os.path.join(_scratchDir, "dietInfFlag_1.json")
     file_two = os.path.join(_scratchDir, "dietInfFlag_2.json")
     tdf.json.write_file(dat, file_one, verbose=True)
     tdf.json.write_file(dat, file_two, verbose=False)
     dat_1 = tdf.json.create_tic_dat(file_one)
     dat_2 = tdf.json.create_tic_dat(file_two)
     self.assertTrue(tdf._same_data(dat, dat_1))
     self.assertTrue(tdf._same_data(dat, dat_2))
     tdf = tdf.clone()
     dat_1 = tdf.json.create_tic_dat(file_one)
     self.assertTrue(tdf._same_data(dat, dat_1))
     tdf = TicDatFactory(**dietSchema())
     dat_1 = tdf.json.create_tic_dat(file_one)
     self.assertFalse(tdf._same_data(dat, dat_1))