def testGetData(self):
     data = [("a", "aa"), ("b", "bb")]
     records = RecordIORecordsZipped()
     records.insert(data[0])
     records.insert(data[1])
     records = RecordIORecordsZipped(records.get_data())
     self.assertEqual(list(records), data)
 def testDelete(self):
     records = RecordIORecordsZipped()
     self.insertABC(records)
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b", ))
     records = RecordIORecordsZipped(records.get_data())
     self.assertEqual({
         "a": ("aa", ),
         "c": ("cc", )
     }, self.getResult(records))
 def testInsertSplitDataSmallToBig(self):
     records = RecordIORecordsZipped()
     self.insertABC(records)
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b", 0, 3, 3, "bb"))
     records.insert(("b", 1, 3, 3, "bb"))
     records.insert(("b", 2, 3, 3, "bb"))
     records = RecordIORecordsZipped(records.get_data())
     self.assertEqual(
         [("a", "aa"), ("b", 0, 3, 3, "bb"), ("b", 1, 3, 3, "bb"), ("b", 2, 3, 3, "bb"), ("c", "cc")], list(records)
     )
Exemplo n.º 4
0
 def init(self):
     """Initializes internal values."""
     if not hasattr(self, "records_"):
         if self.compressed:
             self.records_ = RecordIORecordsZipped(self.data)
         else:
             self.records_ = RecordIORecords(self.data)
         self.loHi_ = RecordIOShard.lo_hi_from_key(self.key().name())
 def testDelete(self):
     records = RecordIORecordsZipped()
     self.insertABC(records)
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b",))
     records = RecordIORecordsZipped(records.get_data())
     self.assertEqual({"a": ("aa",), "c": ("cc",)}, self.getResult(records))
 def testGetData(self):
     data = [("a", "aa"), ("b", "bb")]
     records = RecordIORecordsZipped()
     records.insert(data[0])
     records.insert(data[1])
     records = RecordIORecordsZipped(records.get_data())
     self.assertEqual(list(records), data)
 def testSplit(self):
     records = RecordIORecordsZipped()
     self.insertABC(records)
     records.insert(("d", test_helper.uncompressableString(ZIP_CHUNKS / 2)))
     records.insert(("e", test_helper.uncompressableString(ZIP_CHUNKS)))
     lo, hi, middle = records.split()
     lo = RecordIORecordsZipped(lo)
     hi = RecordIORecordsZipped(hi)
     self.assertEqual(middle[0], "e")
     self.assertEqual(["a", "b", "c", "d"], list(sorted(self.getResult(lo).keys())))
     self.assertEqual({"a": ("aa",), "b": ("bb",), "c": ("cc",)}, self.getResult(lo.read(("",), ("d",))))
     self.assertEqual(["e"], self.getResult(hi).keys())
 def testInsertGetAndRead(self):
     records = RecordIORecordsZipped()
     self.insertABC(records)
     self.assertEqual(len(records), 3)
     self.assertEqual({"a": ("aa",), "b": ("bb",), "c": ("cc",)}, self.getResult(records))
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b", "new"))
     self.assertEqual(len(records), 3)
     self.assertEqual(records["b"], ("b", "new"))
     self.assertTrue("a" in records)
     self.assertFalse("z" in records)
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b", "bb"))
     self.assertEqual({"a": ("aa",), "b": ("bb",), "c": ("cc",)}, self.getResult(records.read()))
     self.assertEqual({"a": ("aa",), "b": ("bb",), "c": ("cc",)}, self.getResult(records.read(("",), ("d",))))
     self.assertEqual({"b": ("bb",)}, self.getResult(records.read(("b",), ("c",))))
 def testInsertNotDeleted(self):
     records = RecordIORecordsZipped()
     records.insert(("a", "aa"))
     records.insert(("b", 0, 3, 3, "bb"))
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b", 0, 2, 2, "bb"))
     other = RecordIORecordsZipped(records.get_data())
     self.assertEqual([("a", "aa"), ("b", 0, 2, 2, "bb")], list(other))
     self.assertEqual([("b", 1, 3, 3), ("b", 2, 3, 3)], list(records.not_deleted()))
 def testInsertSplitDataSmallToBig(self):
     records = RecordIORecordsZipped()
     self.insertABC(records)
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b", 0, 3, 3, "bb"))
     records.insert(("b", 1, 3, 3, "bb"))
     records.insert(("b", 2, 3, 3, "bb"))
     records = RecordIORecordsZipped(records.get_data())
     self.assertEqual([("a", "aa"), ("b", 0, 3, 3, "bb"),
                       ("b", 1, 3, 3, "bb"), ("b", 2, 3, 3, "bb"),
                       ("c", "cc")], list(records))
 def testSplit(self):
     records = RecordIORecordsZipped()
     self.insertABC(records)
     records.insert(("d", test_helper.uncompressableString(ZIP_CHUNKS / 2)))
     records.insert(("e", test_helper.uncompressableString(ZIP_CHUNKS)))
     lo, hi, middle = records.split()
     lo = RecordIORecordsZipped(lo)
     hi = RecordIORecordsZipped(hi)
     self.assertEqual(middle[0], "e")
     self.assertEqual(["a", "b", "c", "d"],
                      list(sorted(self.getResult(lo).keys())))
     self.assertEqual({
         "a": ("aa", ),
         "b": ("bb", ),
         "c": ("cc", )
     }, self.getResult(lo.read(("", ), ("d", ))))
     self.assertEqual(["e"], self.getResult(hi).keys())
 def testInsertGetAndRead(self):
     records = RecordIORecordsZipped()
     self.insertABC(records)
     self.assertEqual(len(records), 3)
     self.assertEqual({
         "a": ("aa", ),
         "b": ("bb", ),
         "c": ("cc", )
     }, self.getResult(records))
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b", "new"))
     self.assertEqual(len(records), 3)
     self.assertEqual(records["b"], ("b", "new"))
     self.assertTrue("a" in records)
     self.assertFalse("z" in records)
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b", "bb"))
     self.assertEqual({
         "a": ("aa", ),
         "b": ("bb", ),
         "c": ("cc", )
     }, self.getResult(records.read()))
     self.assertEqual({
         "a": ("aa", ),
         "b": ("bb", ),
         "c": ("cc", )
     }, self.getResult(records.read(("", ), ("d", ))))
     self.assertEqual({"b": ("bb", )},
                      self.getResult(records.read(("b", ), ("c", ))))
 def testInsertNotDeleted(self):
     records = RecordIORecordsZipped()
     records.insert(("a", "aa"))
     records.insert(("b", 0, 3, 3, "bb"))
     records = RecordIORecordsZipped(records.get_data())
     records.insert(("b", 0, 2, 2, "bb"))
     other = RecordIORecordsZipped(records.get_data())
     self.assertEqual([("a", "aa"), ("b", 0, 2, 2, "bb")], list(other))
     self.assertEqual([('b', 1, 3, 3), ('b', 2, 3, 3)],
                      list(records.not_deleted()))