Example #1
0
 def test_lcs_recursive(self):
     for _ in range(1000):
         s1 = random_string(10)
         s2 = random_string(10)
         # print(s1, s2)
         # print(lcs_naive(s1, s2))
         # print(lcs_recur(s1, s2))
         self.assertEqual(lcs_naive(s1, s2), lcs_recur(s1, s2))
Example #2
0
    def test_lsnr(self):
        self.assertEqual(lsnr(''), lsnr_naive(''))
        self.assertEqual(lsnr('a'), lsnr_naive('a'))
        self.assertEqual(lsnr('abcde'), lsnr_naive('abcde'))
        self.assertEqual(lsnr('abcdeabc'), lsnr_naive('abcdeabc'))
        self.assertEqual(lsnr('aabcdebc'), lsnr_naive('aabcdebc'))
        self.assertEqual(lsnr('ababcdec'), lsnr_naive('ababcdec'))
        self.assertEqual(lsnr('abcabcde'), lsnr_naive('abcabcde'))
        self.assertEqual(lsnr('abcdeaxzy'), lsnr_naive('abcdeaxzy'))

        for _ in range(10000):
            s = random_string(30)
            print(s)
            print(lsnr(s))
            self.assertEqual(lsnr(s), lsnr_naive(s))
Example #3
0
 def test_is_subsequence(self):
     for _ in range(1000):
         s1 = random_string(10)
         print(s1)
         for sub in subsequence(s1):
             self.assertEqual(True, is_subsequence(sub, s1))
 def test__lcsubst_recur(self):
     for _ in range(1000):
         s1 = random_string(10)
         s2 = random_string(10)
         print(s1, s2)
         self.assertEqual(lcsubst_naive(s1, s2), lcsubst_recur(s1, s2))