Skip to content

Commit 1fe01b0

Browse files
author
wookienz
committed
answers to date
1 parent 3685a39 commit 1fe01b0

11 files changed

+159
-158
lines changed

python2/koans/about_asserts.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,34 +15,34 @@ def test_assert_truth(self):
1515
#
1616
# http://bit.ly/about_asserts
1717

18-
self.assertTrue(False) # This should be true
18+
self.assertTrue(True) # This should be true
1919

2020
def test_assert_with_message(self):
2121
"""
2222
Enlightenment may be more easily achieved with appropriate messages.
2323
"""
24-
self.assertTrue(False, "This should be true -- Please fix this")
24+
self.assertTrue(True, "This should be true -- Please fix this")
2525

2626
def test_fill_in_values(self):
2727
"""
2828
Sometimes we will ask you to fill in the values
2929
"""
30-
self.assertEqual(__, 1 + 1)
30+
self.assertEqual(2, 1 + 1)
3131

3232
def test_assert_equality(self):
3333
"""
3434
To understand reality, we must compare our expectations against
3535
reality.
3636
"""
37-
expected_value = __
37+
expected_value = 2
3838
actual_value = 1 + 1
3939
self.assertTrue(expected_value == actual_value)
4040

4141
def test_a_better_way_of_asserting_equality(self):
4242
"""
4343
Some ways of asserting equality are better than others.
4444
"""
45-
expected_value = __
45+
expected_value = 2
4646
actual_value = 1 + 1
4747

4848
self.assertEqual(expected_value, actual_value)
@@ -53,7 +53,7 @@ def test_that_unittest_asserts_work_the_same_way_as_python_asserts(self):
5353
"""
5454

5555
# This throws an AssertionError exception
56-
assert False
56+
assert True
5757

5858
def test_that_sometimes_we_need_to_know_the_class_type(self):
5959
"""
@@ -72,7 +72,7 @@ def test_that_sometimes_we_need_to_know_the_class_type(self):
7272
#
7373
# See for yourself:
7474

75-
self.assertEqual(__, "naval".__class__) # It's str, not <type 'str'>
75+
self.assertEqual(str, "naval".__class__) # It's str, not <type 'str'>
7676

7777
# Need an illustration? More reading can be found here:
7878
#

python2/koans/about_control_statements.py

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ def test_if_then_else_statements(self):
1111
result = 'true value'
1212
else:
1313
result = 'false value'
14-
self.assertEqual(__, result)
14+
self.assertEqual('true value', result)
1515

1616
def test_if_then_statements(self):
1717
result = 'default value'
1818
if True:
1919
result = 'true value'
20-
self.assertEqual(__, result)
20+
self.assertEqual('true value', result)
2121

2222
def test_if_then_elif_else_statements(self):
2323
if False:
@@ -26,15 +26,15 @@ def test_if_then_elif_else_statements(self):
2626
result = 'true value'
2727
else:
2828
result = 'default value'
29-
self.assertEqual(__, result)
29+
self.assertEqual('true value', result)
3030

3131
def test_while_statement(self):
3232
i = 1
3333
result = 1
3434
while i <= 10:
3535
result = result * i
3636
i += 1
37-
self.assertEqual(__, result)
37+
self.assertEqual(3628800, result)
3838

3939
def test_break_statement(self):
4040
i = 1
@@ -43,7 +43,7 @@ def test_break_statement(self):
4343
if i > 10: break
4444
result = result * i
4545
i += 1
46-
self.assertEqual(__, result)
46+
self.assertEqual(3628800, result)
4747

4848
def test_continue_statement(self):
4949
i = 0
@@ -52,14 +52,14 @@ def test_continue_statement(self):
5252
i += 1
5353
if (i % 2) == 0: continue
5454
result.append(i)
55-
self.assertEqual(__, result)
55+
self.assertEqual([1,3,5,7,9], result)
5656

5757
def test_for_statement(self):
5858
phrase = ["fish", "and", "chips"]
5959
result = []
6060
for item in phrase:
6161
result.append(item.upper())
62-
self.assertEqual([__, __, __], result)
62+
self.assertEqual(['FISH', 'AND', 'CHIPS'], result)
6363

6464
def test_for_statement_with_tuples(self):
6565
round_table = [
@@ -73,7 +73,8 @@ def test_for_statement_with_tuples(self):
7373
result.append("Contestant: '" + knight + \
7474
"' Answer: '" + answer + "'")
7575

76-
text = __
76+
text = "Contestant: 'Robin' Answer: 'Blue! I mean Green!'"
77+
7778

7879
self.assertMatch(text, result[2])
7980

python2/koans/about_dictionaries.py

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,47 +13,47 @@ def test_creating_dictionaries(self):
1313
empty_dict = dict()
1414
self.assertEqual(dict, type(empty_dict))
1515
self.assertEqual(dict(), empty_dict)
16-
self.assertEqual(__, len(empty_dict))
16+
self.assertEqual(0, len(empty_dict))
1717

1818
def test_dictionary_literals(self):
1919
empty_dict = {}
2020
self.assertEqual(dict, type(empty_dict))
2121
babel_fish = {'one': 'uno', 'two': 'dos'}
22-
self.assertEqual(__, len(babel_fish))
22+
self.assertEqual(2, len(babel_fish))
2323

2424
def test_accessing_dictionaries(self):
2525
babel_fish = {'one': 'uno', 'two': 'dos'}
26-
self.assertEqual(__, babel_fish['one'])
27-
self.assertEqual(__, babel_fish['two'])
26+
self.assertEqual('uno', babel_fish['one'])
27+
self.assertEqual('dos', babel_fish['two'])
2828

2929
def test_changing_dictionaries(self):
3030
babel_fish = {'one': 'uno', 'two': 'dos'}
3131
babel_fish['one'] = 'eins'
3232

33-
expected = {'two': 'dos', 'one': __}
33+
expected = {'two': 'dos', 'one': 'eins'}
3434
self.assertEqual(expected, babel_fish)
3535

3636
def test_dictionary_is_unordered(self):
3737
dict1 = {'one': 'uno', 'two': 'dos'}
3838
dict2 = {'two': 'dos', 'one': 'uno'}
3939

40-
self.assertEqual(____, dict1 == dict2)
40+
self.assertEqual(True, dict1 == dict2)
4141

4242
def test_dictionary_keys_and_values(self):
4343
babel_fish = {'one': 'uno', 'two': 'dos'}
44-
self.assertEqual(__, len(babel_fish.keys()))
45-
self.assertEqual(__, len(babel_fish.values()))
46-
self.assertEqual(__, 'one' in babel_fish.keys())
47-
self.assertEqual(__, 'two' in babel_fish.values())
48-
self.assertEqual(__, 'uno' in babel_fish.keys())
49-
self.assertEqual(__, 'dos' in babel_fish.values())
44+
self.assertEqual(2, len(babel_fish.keys()))
45+
self.assertEqual(2, len(babel_fish.values()))
46+
self.assertEqual(True, 'one' in babel_fish.keys())
47+
self.assertEqual(False, 'two' in babel_fish.values())
48+
self.assertEqual(False, 'uno' in babel_fish.keys())
49+
self.assertEqual(True, 'dos' in babel_fish.values())
5050

5151
def test_making_a_dictionary_from_a_sequence_of_keys(self):
5252
cards = {}.fromkeys(
5353
('red warrior', 'green elf', 'blue valkyrie', 'yellow dwarf',
5454
'confused looking zebra'),
5555
42)
5656

57-
self.assertEqual(__, len(cards))
58-
self.assertEqual(__, cards['green elf'])
59-
self.assertEqual(__, cards['yellow dwarf'])
57+
self.assertEqual(5, len(cards))
58+
self.assertEqual(42 , cards['green elf'])
59+
self.assertEqual(42, cards['yellow dwarf'])

python2/koans/about_list_assignments.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,21 @@
1111
class AboutListAssignments(Koan):
1212
def test_non_parallel_assignment(self):
1313
names = ["John", "Smith"]
14-
self.assertEqual(__, names)
14+
self.assertEqual(['John','Smith'], names)
1515

1616
def test_parallel_assignments(self):
1717
first_name, last_name = ["John", "Smith"]
18-
self.assertEqual(__, first_name)
19-
self.assertEqual(__, last_name)
18+
self.assertEqual('John', first_name)
19+
self.assertEqual('Smith', last_name)
2020

2121
def test_parallel_assignments_with_sublists(self):
2222
first_name, last_name = [["Willie", "Rae"], "Johnson"]
23-
self.assertEqual(__, first_name)
24-
self.assertEqual(__, last_name)
23+
self.assertEqual(['Willie','Rae'], first_name)
24+
self.assertEqual('Johnson', last_name)
2525

2626
def test_swapping_with_parallel_assignment(self):
2727
first_name = "Roy"
2828
last_name = "Rob"
2929
first_name, last_name = last_name, first_name
30-
self.assertEqual(__, first_name)
31-
self.assertEqual(__, last_name)
30+
self.assertEqual('Rob', first_name)
31+
self.assertEqual('Roy', last_name)

python2/koans/about_lists.py

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ class AboutLists(Koan):
1212
def test_creating_lists(self):
1313
empty_list = list()
1414
self.assertEqual(list, type(empty_list))
15-
self.assertEqual(__, len(empty_list))
15+
self.assertEqual(0, len(empty_list))
1616

1717
def test_list_literals(self):
1818
nums = list()
@@ -22,68 +22,68 @@ def test_list_literals(self):
2222
self.assertEqual([1], nums)
2323

2424
nums[1:] = [2]
25-
self.assertEqual([1, __], nums)
25+
self.assertEqual([1, 2], nums)
2626

2727
nums.append(333)
28-
self.assertEqual([1, 2, __], nums)
28+
self.assertEqual([1, 2, 333], nums)
2929

3030
def test_accessing_list_elements(self):
3131
noms = ['peanut', 'butter', 'and', 'jelly']
3232

33-
self.assertEqual(__, noms[0])
34-
self.assertEqual(__, noms[3])
35-
self.assertEqual(__, noms[-1])
36-
self.assertEqual(__, noms[-3])
33+
self.assertEqual('peanut', noms[0])
34+
self.assertEqual('jelly', noms[3])
35+
self.assertEqual('jelly', noms[-1])
36+
self.assertEqual('butter', noms[-3])
3737

3838
def test_slicing_lists(self):
3939
noms = ['peanut', 'butter', 'and', 'jelly']
4040

41-
self.assertEqual(__, noms[0:1])
42-
self.assertEqual(__, noms[0:2])
43-
self.assertEqual(__, noms[2:2])
44-
self.assertEqual(__, noms[2:20])
45-
self.assertEqual(__, noms[4:0])
46-
self.assertEqual(__, noms[4:100])
47-
self.assertEqual(__, noms[5:0])
41+
self.assertEqual(['peanut'], noms[0:1])
42+
self.assertEqual(['peanut','butter'], noms[0:2])
43+
self.assertEqual([], noms[2:2])
44+
self.assertEqual(['and','jelly'], noms[2:20])
45+
self.assertEqual([], noms[4:0])
46+
self.assertEqual([], noms[4:100])
47+
self.assertEqual([], noms[5:0])
4848

4949
def test_slicing_to_the_edge(self):
5050
noms = ['peanut', 'butter', 'and', 'jelly']
5151

52-
self.assertEqual(__, noms[2:])
53-
self.assertEqual(__, noms[:2])
52+
self.assertEqual(['and','jelly'], noms[2:])
53+
self.assertEqual(['peanut','butter'], noms[:2])
5454

5555
def test_lists_and_ranges(self):
5656
self.assertEqual(list, type(range(5)))
57-
self.assertEqual(__, range(5))
58-
self.assertEqual(__, range(5, 9))
57+
self.assertEqual([0,1,2,3,4], range(5))
58+
self.assertEqual([5,6,7,8], range(5, 9))
5959

6060
def test_ranges_with_steps(self):
61-
self.assertEqual(__, range(0, 8, 2))
62-
self.assertEqual(__, range(1, 8, 3))
63-
self.assertEqual(__, range(5, -7, -4))
64-
self.assertEqual(__, range(5, -8, -4))
61+
self.assertEqual([0,2,4,6], range(0, 8, 2))
62+
self.assertEqual([1,4,7], range(1, 8, 3))
63+
self.assertEqual([5,1,-3], range(5, -7, -4))
64+
self.assertEqual([5,1,-3,-7], range(5, -8, -4))
6565

6666
def test_insertions(self):
6767
knight = ['you', 'shall', 'pass']
6868
knight.insert(2, 'not')
69-
self.assertEqual(__, knight)
69+
self.assertEqual(['you','shall','not','pass'], knight)
7070

7171
knight.insert(0, 'Arthur')
72-
self.assertEqual(__, knight)
72+
self.assertEqual(['Arthur','you','shall','not','pass'], knight)
7373

7474
def test_popping_lists(self):
7575
stack = [10, 20, 30, 40]
7676
stack.append('last')
7777

78-
self.assertEqual(__, stack)
78+
self.assertEqual([10,20,30,40,'last'], stack)
7979

8080
popped_value = stack.pop()
81-
self.assertEqual(__, popped_value)
82-
self.assertEqual(__, stack)
81+
self.assertEqual('last', popped_value)
82+
self.assertEqual([10,20,30,40], stack)
8383

8484
popped_value = stack.pop(1)
85-
self.assertEqual(__, popped_value)
86-
self.assertEqual(__, stack)
85+
self.assertEqual(20, popped_value)
86+
self.assertEqual([10,30,40], stack)
8787

8888
# Notice that there is a "pop" but no "push" in python?
8989

@@ -99,8 +99,8 @@ def test_use_deques_for_making_queues(self):
9999
queue = deque([1, 2])
100100
queue.append('last')
101101

102-
self.assertEqual(__, list(queue))
102+
self.assertEqual([1,2,'last'], list(queue))
103103

104104
popped_value = queue.popleft()
105-
self.assertEqual(__, popped_value)
106-
self.assertEqual(__, list(queue))
105+
self.assertEqual(1, popped_value)
106+
self.assertEqual([2,'last'], list(queue))

0 commit comments

Comments
 (0)