Skip to content

Commit 87a6f2f

Browse files
author
Andy Trigg
committed
Completed the about_tuples.py koans
1 parent 5b6e7c4 commit 87a6f2f

1 file changed

Lines changed: 18 additions & 17 deletions

File tree

python3/koans/about_tuples.py

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@
33

44
from runner.koan import *
55

6+
67
class AboutTuples(Koan):
78
def test_creating_a_tuple(self):
8-
count_of_three = (1, 2, 5)
9-
self.assertEqual(__, count_of_three[2])
9+
count_of_three = (1, 2, 5)
10+
self.assertEqual(5, count_of_three[2])
1011

1112
def test_tuples_are_immutable_so_item_assignment_is_not_possible(self):
1213

@@ -19,11 +20,11 @@ def test_tuples_are_immutable_so_item_assignment_is_not_possible(self):
1920
# Note, assertRegex() uses regular expression pattern matching,
2021
# so you don't have to copy the whole message.
2122

22-
self.assertRegex(msg, __)
23+
self.assertRegex(msg, "object does not support item assignment")
2324

2425
def test_tuples_are_immutable_so_appending_is_not_possible(self):
25-
count_of_three = (1, 2, 5)
26-
with self.assertRaises(___): count_of_three.append("boom")
26+
count_of_three = (1, 2, 5)
27+
with self.assertRaises(AttributeError): count_of_three.append("boom")
2728

2829
# Tuples are less flexible than lists, but faster.
2930

@@ -34,34 +35,34 @@ def test_tuples_can_only_be_changed_through_replacement(self):
3435
list_count.append("boom")
3536
count_of_three = tuple(list_count)
3637

37-
self.assertEqual(__, count_of_three)
38+
self.assertEqual((1, 2, 5, "boom"), count_of_three)
3839

3940
def test_tuples_of_one_look_peculiar(self):
40-
self.assertEqual(__, (1).__class__)
41-
self.assertEqual(__, (1,).__class__)
42-
self.assertEqual(__, ("I'm a tuple",))
43-
self.assertEqual(__, ("Not a tuple"))
41+
self.assertEqual(int, (1).__class__)
42+
self.assertEqual(tuple, (1,).__class__)
43+
self.assertEqual(("I'm a tuple",), ("I'm a tuple",))
44+
self.assertEqual("Not a tuple", ("Not a tuple"))
4445

4546
def test_tuple_constructor_can_be_surprising(self):
46-
self.assertEqual(__, tuple("Surprise!"))
47+
self.assertEqual(('S', 'u', 'r', 'p', 'r', 'i', 's', 'e', '!'), tuple("Surprise!"))
4748

4849
def test_creating_empty_tuples(self):
49-
self.assertEqual(__ , ())
50-
self.assertEqual(__ , tuple()) #Sometimes less confusing
50+
self.assertEqual((), ())
51+
self.assertEqual((), tuple()) # Sometimes less confusing
5152

5253
def test_tuples_can_be_embedded(self):
5354
lat = (37, 14, 6, 'N')
5455
lon = (115, 48, 40, 'W')
5556
place = ('Area 51', lat, lon)
56-
self.assertEqual(__, place)
57+
self.assertEqual(('Area 51', (37, 14, 6, 'N'), (115, 48, 40, 'W')), place)
5758

5859
def test_tuples_are_good_for_representing_records(self):
5960
locations = [
6061
("Illuminati HQ", (38, 52, 15.56, 'N'), (77, 3, 21.46, 'W')),
6162
("Stargate B", (41, 10, 43.92, 'N'), (1, 49, 34.29, 'W')),
6263
]
6364

64-
locations.append( ("Cthulu", (26, 40, 1, 'N'), (70, 45, 7, 'W')) )
65+
locations.append(("Cthulu", (26, 40, 1, 'N'), (70, 45, 7, 'W')))
6566

66-
self.assertEqual(__, locations[2][0])
67-
self.assertEqual(__, locations[0][1][2])
67+
self.assertEqual("Cthulu", locations[2][0])
68+
self.assertEqual(15.56, locations[0][1][2])

0 commit comments

Comments
 (0)