def test_hash(self): x = numpy.matrix("[%s]" % ("1 2;3 4;5 6;7 8;9 10;" * 10).strip(";")) for slice_size in [30, 1, 3]: ds1 = DataSet(x, slice_size=slice_size) ds2 = DataSet(x, slice_size=slice_size) self.assertEqual(ds1.hash(), ds2.hash()) for i in range(0, len(ds1)): self.assertEqual(ds1.hash(i), ds2.hash(i)) slice1 = ds1.slice_from_hash(ds1.hash(i)).raw_data() slice2 = ds2.slice_from_hash(ds2.hash(i)).raw_data() slice12 = ds1.slice_from_hash(ds2.hash(i)).raw_data() slice21 = ds2.slice_from_hash(ds1.hash(i)).raw_data() self.assertTrue((slice1 == slice2).all()) self.assertTrue((slice12 == slice21).all()) self.assertTrue((slice1 == slice21).all())
def test_hash(self): ds1 = DataSet(range(0, 120)) ds2 = DataSet(range(0, 120)) self.assertEqual(ds1.hash(0), ds2.hash(0)) self.assertEqual(ds1.hash(1), ds2.hash(1)) self.assertEqual(ds1.hash(2), ds2.hash(2)) self.assertEqual(ds1.hash(3), ds2.hash(3)) ds1 = DataSet(range(0, 120), slice_size=1) ds2 = DataSet(range(0, 120), slice_size=1) for i in range(0, 120, 10): self.assertEqual(ds1.hash(i), ds2.hash(i))