def test_prefixes(self): """Test iterator for letters in a string sequentially.""" prefix = prefixes('vanrossum') self.assertEqual(next(prefix), '') self.assertEqual(next(prefix), 'v') self.assertEqual(next(prefix), 'va') self.assertEqual(next(prefix), 'van') self.assertEqual(next(prefix), 'vanr') self.assertEqual(next(prefix), 'vanro') self.assertEqual(next(prefix), 'vanros') self.assertEqual(next(prefix), 'vanross') self.assertEqual(next(prefix), 'vanrossu') self.assertEqual(next(prefix), 'vanrossum')
def test_prefixes_produces_an_actual_generator(self): g = prefixes('ab') self.assertEqual(g.next(), '') self.assertEqual(g.next(), 'a') self.assertEqual(g.next(), 'ab') self.assertRaises(StopIteration, g.next)
def test_prefixes_produces_prefixes(self): self.assertEqual(list(prefixes('')), ['']) self.assertEqual(list(prefixes('a')), ['', 'a']) self.assertEqual(list(prefixes('ab')), ['', 'a', 'ab']) self.assertEqual(list(prefixes('abc')), ['', 'a', 'ab', 'abc'])
def test_prefixes_produces_an_actual_generator(self): g = prefixes("ab") self.assertEqual(g.next(), "") self.assertEqual(g.next(), "a") self.assertEqual(g.next(), "ab") self.assertRaises(StopIteration, g.next)
def test_prefixes_produces_prefixes(self): self.assertEqual(list(prefixes("")), [""]) self.assertEqual(list(prefixes("a")), ["", "a"]) self.assertEqual(list(prefixes("ab")), ["", "a", "ab"]) self.assertEqual(list(prefixes("abc")), ["", "a", "ab", "abc"])