def test_bus_to_xlsx_a(self) -> None: f1 = Frame.from_dict(dict(a=(1, 2), b=(3, 4)), index=('x', 'y'), name='f1') f2 = Frame.from_dict(dict(c=(1, 2, 3), b=(4, 5, 6)), index=('x', 'y', 'z'), name='f2') f3 = Frame.from_dict(dict(d=(10, 20), b=(50, 60)), index=('p', 'q'), name='f3') config = StoreConfigMap.from_config( StoreConfig(index_depth=1, columns_depth=1, include_columns=True, include_index=True)) b1 = Bus.from_frames((f1, f2, f3), config=config) with temp_file('.xlsx') as fp: b1.to_xlsx(fp) b2 = Bus.from_xlsx(fp, config=config) tuple(b2.items()) # force loading all for frame in (f1, f2, f3): self.assertEqualFrames(frame, b2[frame.name])
def test_bus_to_xlsx_f(self) -> None: f = Frame.from_records([ [np.datetime64('1983-02-20 05:34:18.763'), np.datetime64('2020-08-01')], [np.datetime64('1975-03-20 05:20:18.001'), np.datetime64('2020-07-31')] ], columns=(date(2020, 7, 31), date(2020, 8, 1)), index=(datetime(2020, 7, 31, 14, 20, 8), datetime(2017, 4, 28, 2, 30, 2)), name='frame') b1 = Bus.from_frames([f]) with temp_file('.xlsx') as fp: b1.to_xlsx(fp) config = StoreConfig(include_index=True, index_depth=1) b2 = Bus.from_xlsx(fp, config=config) tuple(b2.items()) # force loading all self.assertEqual(b2['frame'].index.values.tolist(), [datetime(2020, 7, 31, 14, 20, 8), datetime(2017, 4, 28, 2, 30, 2)]) self.assertEqual(b2['frame'].index.values.tolist(), [datetime(2020, 7, 31, 14, 20, 8), datetime(2017, 4, 28, 2, 30, 2)]) self.assertEqual(b2['frame'].values.tolist(), [[datetime(1983, 2, 20, 5, 34, 18, 763000), datetime(2020, 8, 1, 0, 0)], [datetime(1975, 3, 20, 5, 20, 18, 1000), datetime(2020, 7, 31, 0, 0)]] )
def test_bus_to_xlsx_c(self) -> None: ''' Test manipulating a file behind the Bus. ''' f1 = Frame.from_dict( dict(a=(1,2,3)), index=('x', 'y', 'z'), name='f1') f2 = Frame.from_dict( dict(x=(10,20,30)), index=('q', 'r', 's'), name='f2') b1 = Bus.from_frames((f1,),) with temp_file('.xlsx') as fp: b1.to_xlsx(fp) b2 = Bus.from_xlsx(fp) f2.to_xlsx(fp) with self.assertRaises(StoreFileMutation): tuple(b2.items())
def test_bus_to_xlsx_b(self) -> None: f1 = Frame.from_dict(dict(a=(1, 2, 3)), index=('x', 'y', 'z'), name='f1') f2 = Frame.from_dict(dict(A=(10, 20, 30)), index=('q', 'r', 's'), name='f2') config = StoreConfig(include_index=True, index_depth=1) b1 = Bus.from_frames((f1, f2), config=config) with temp_file('.xlsx') as fp: b1.to_xlsx(fp) b2 = Bus.from_xlsx(fp, config=config) tuple(b2.items()) # force loading all for frame in (f1, f2): self.assertEqualFrames(frame, b2[frame.name])
def test_bus_to_xlsx_a(self) -> None: f1 = Frame.from_dict(dict(a=(1, 2), b=(3, 4)), index=('x', 'y'), name='f1') f2 = Frame.from_dict(dict(c=(1, 2, 3), b=(4, 5, 6)), index=('x', 'y', 'z'), name='f2') f3 = Frame.from_dict(dict(d=(10, 20), b=(50, 60)), index=('p', 'q'), name='f3') b1 = Bus.from_frames((f1, f2, f3)) with temp_file('.xlsx') as fp: b1.to_xlsx(fp) b2 = Bus.from_xlsx(fp) tuple(b2.items()) # force loading all for frame in (f1, f2, f3): self.assertEqualFrames(frame, b2[frame.name])
def test_bus_mloc_b(self) -> None: f1 = Frame.from_dict(dict(a=(1, 2, 3)), index=('x', 'y', 'z'), name='f1') f2 = Frame.from_dict(dict(x=(10, 20, 30)), index=('q', 'r', 's'), name='f2') config = StoreConfigMap.from_config(StoreConfig(index_depth=1)) b1 = Bus.from_frames((f1, f2), config=config) with temp_file('.xlsx') as fp: b1.to_xlsx(fp) b2 = Bus.from_xlsx(fp, config=config) # only show memory locations for loaded Frames self.assertTrue(b2.iloc[1].equals(f2)) self.assertEqual( (b2.mloc == None).to_pairs(), #pylint: disable=C0121 (('f1', True), ('f2', False)))