aboutsummaryrefslogtreecommitdiff
path: root/challenge-333/roger-bell-west/python/ch-2.py
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-333/roger-bell-west/python/ch-2.py')
-rwxr-xr-xchallenge-333/roger-bell-west/python/ch-2.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/challenge-333/roger-bell-west/python/ch-2.py b/challenge-333/roger-bell-west/python/ch-2.py
new file mode 100755
index 0000000000..6d94cdcea9
--- /dev/null
+++ b/challenge-333/roger-bell-west/python/ch-2.py
@@ -0,0 +1,34 @@
+#! /usr/bin/python3
+
+def duplicatezeros(a):
+ b = []
+ for n in a:
+ b.append(n)
+ if len(a) == len(b):
+ break
+ if n == 0:
+ b.append(0)
+ if len(a) == len(b):
+ break
+ return b
+
+import unittest
+
+class TestDuplicatezeros(unittest.TestCase):
+
+ def test_ex1(self):
+ self.assertEqual(duplicatezeros([1, 0, 2, 3, 0, 4, 5, 0]), [1, 0, 0, 2, 3, 0, 0, 4], 'example 1')
+
+ def test_ex2(self):
+ self.assertEqual(duplicatezeros([1, 2, 3]), [1, 2, 3], 'example 2')
+
+ def test_ex3(self):
+ self.assertEqual(duplicatezeros([1, 2, 3, 0]), [1, 2, 3, 0], 'example 3')
+
+ def test_ex4(self):
+ self.assertEqual(duplicatezeros([0, 0, 1, 2]), [0, 0, 0, 0], 'example 4')
+
+ def test_ex5(self):
+ self.assertEqual(duplicatezeros([1, 2, 0, 3, 4]), [1, 2, 0, 0, 3], 'example 5')
+
+unittest.main()