def test_open_custom_date(self): def test_info(info): self.assertEquals(info.is_open, True) self.assertEquals(info.operator_host, "") self.assertEquals(info.operator_username, "") self.assertEquals(info.operator_key, "") self.assertEquals(info.today, custom_ts.date()) self.assertEquals(info.start, custom_ts) self.assertEquals(info.end, None) self.assertCountEqual(info.models.keys(), ["Backup", "ECMWF", "CosmoI7", "CosmoI2"]) self.assertModelEquals(info.models["Backup"], "Backup", "SIMC;lm7_ope_f", 2) self.assertModelEquals(info.models["ECMWF"], "ECMWF", "ECMWF;IDD", 3) self.assertModelEquals(info.models["CosmoI7"], "CosmoI7", "CINECA;lm7_ope_f", 3) self.assertModelEquals(info.models["CosmoI2"], "CosmoI2", "CINECA;lm28_ope_f", 2) self.assertEquals(info.runs.ts, test_now) self.assertRunEquals(info.runs[1], "CosmoI2", 10, 0) self.assertRunEquals(info.runs[2], "CosmoI7", 10, 0) self.assertRunEquals(info.runs[3], "ECMWF", 10, 0) self.assertRunEquals(info.sel_runs.d0, "CosmoI2", 10, 0) self.assertRunEquals(info.sel_runs.d1, "CosmoI7", 10, 0) self.assertRunEquals(info.sel_runs.d2, "ECMWF", 10, 0) self.assertEquals(info.sel_runs_comments, "") with test_override_now(test_now): custom_ts = test_now + datetime.timedelta(days=1) info = Info.open_new(ts_now=custom_ts) test_info(info) # Test that serialization preserves everything buf = info.to_bytes() info = info.from_bytes(buf) test_info(info)
def test_close_and_load(self): info = Info.open_new() info.close() buf = info.to_bytes() info1 = Info.from_bytes(buf)