Exemplo n.º 1
0
	def test_same_elems(self):
		diff = SequenceMatcher(a="abcdef", b="abcdef")
		self.assertIsInstance(diff.get_matching_elems(), list)
		elems = diff.get_matching_elems()
		self.assertEqual(len(elems), 1)
		self.assertIsInstance(elems[0].a, tuple)
		self.assertIsInstance(elems[0].b, tuple)
		self.assertEqual(elems[0].a, tuple("abcdef"))
		self.assertEqual(elems[0].b, tuple("abcdef"))
		
		self.assertIsInstance(diff.get_matching_elems_useOnce(), GeneratorType)
		elems = [i for i in diff.get_matching_elems_useOnce()]
		self.assertEqual(len(elems), 1)
		
		# check inner types
		self.assertIsInstance(elems[0].a, GeneratorType)
		self.assertIsInstance(elems[0].b, GeneratorType)
		
		self.assertIsInstance(diff.get_mismatching_elems(), list)
		elems = diff.get_mismatching_elems()
		self.assertEqual(len(elems), 0)
		
		self.assertIsInstance(diff.get_mismatching_elems_useOnce(), GeneratorType)
		elems = [i for i in diff.get_mismatching_elems_useOnce()]
		self.assertEqual(len(elems), 0)
Exemplo n.º 2
0
	def test_missing_elems(self):
		diff = SequenceMatcher(a="abcdefg", b="cefhi")
		self.assertIsInstance(diff.get_matching_elems(), list)
		elems = diff.get_matching_elems()
		self.assertEqual(len(elems), 2)
		
		self.assertIsInstance(elems[0].a, tuple)
		self.assertIsInstance(elems[0].b, tuple)
		self.assertEqual(elems[0].a, tuple("c"))
		self.assertEqual(elems[0].b, tuple("c"))
		self.assertEqual(elems[1].a, tuple("ef"))
		self.assertEqual(elems[1].b, tuple("ef"))
		
		self.assertIsInstance(diff.get_matching_elems_useOnce(), GeneratorType)
		elems = [i for i in diff.get_matching_elems_useOnce()]
		self.assertEqual(len(elems), 2)
		
		# check inner types
		self.assertIsInstance(elems[0].a, GeneratorType)
		self.assertIsInstance(elems[0].b, GeneratorType)
		
		
		self.assertIsInstance(diff.get_mismatching_elems(), list)
		elems = diff.get_mismatching_elems()
		print(elems)
		self.assertEqual(len(elems), 3)
		self.assertEqual(elems[0].a, tuple("ab"))
		self.assertEqual(elems[0].b, None)
		self.assertEqual(elems[1].a, tuple("d"))
		self.assertEqual(elems[1].b, None)
		self.assertEqual(elems[2].a, tuple("g"))
		self.assertEqual(elems[2].b, tuple("hi"))
		
		self.assertIsInstance(diff.get_mismatching_elems_useOnce(), GeneratorType)
		elems = [i for i in diff.get_mismatching_elems_useOnce()]
		self.assertEqual(len(elems), 3)