def test_read_write_hist_np_work_ok_for_normal_case(self): table = dt.DiceTable() table.add_die(1, dt.Die(3)) obj1 = create_plot_object(table) table.add_die(2, dt.Die(5)) obj2 = create_plot_object(table) hist = np.array([obj1, obj2]) fh.write_history_np(hist) msg, new_hist = fh.read_history_np() self.assertEqual(msg, 'ok') self.assertArrayEqual(hist, new_hist)
def test_read_np_returns_error_and_empty_if_corrupted_file(self): table = dt.DiceTable() table.add_die(1, dt.Die(3)) obj1 = create_plot_object(table) table.add_die(2, dt.Die(5)) obj2 = create_plot_object(table) hist = np.array([obj1, obj2]) fh.write_history_np(hist) #for differences between python2 and 3 try: with open('numpy_history.npy', 'r') as f: to_write = f.read()[:-1] except UnicodeDecodeError: with open('numpy_history.npy', 'r', errors='ignore') as f: to_write = f.read()[:-1] with open('numpy_history.npy', 'w') as f: f.write(to_write) msg, hist = fh.read_history_np() self.assertEqual(msg, 'error: file corrupted') self.assertArrayEqual(hist, np.array([], dtype=object))
def test_read_np_returns_ok_and_empty_if_hist_empty_and_correct_type(self): fh.write_history_np(np.array([], dtype=object)) msg, hist = fh.read_history_np() self.assertEqual(msg, 'ok: no history') self.assertArrayEqual(hist, np.array([], dtype=object))
def test_read_np_returns_error_and_empty_if_hist_empty_and_wrong_type(self): fh.write_history_np(np.array([])) msg, hist = fh.read_history_np() self.assertEqual(msg, 'error: wrong array type') self.assertArrayEqual(hist, np.array([], dtype=object))
def test_read_np_returns_error_and_empty_if_check_hist_has_error(self): fh.write_history_np(np.array([1, 2, 3])) msg, hist = fh.read_history_np() self.assertEqual(msg, 'error: not a dict') self.assertArrayEqual(hist, np.array([], dtype=object))
def write_history(self): fh.write_history_np(self.plot_history)
def write_history(self): '''overwrites graph history to 'numpy_history.npy' ''' fh.write_history_np(self._history)
def test_read_np_returns_error_and_empty_if_hist_empty_and_wrong_type( self): fh.write_history_np(np.array([])) msg, hist = fh.read_history_np() self.assertEqual(msg, 'error: wrong array type') self.assertArrayEqual(hist, np.array([], dtype=object))