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 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 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 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())