aboutsummaryrefslogtreecommitdiff
path: root/challenge-346/sgreen/python/test.py
diff options
context:
space:
mode:
authorSimon Green <mail@simon.green>2025-11-09 23:24:33 +1000
committerSimon Green <mail@simon.green>2025-11-09 23:24:33 +1000
commitbb0cfbfa8e457ccfa638562f4cd91293f4423aa0 (patch)
treef152ef64dcccd8ce6a2094d017d9b7bb035611cf /challenge-346/sgreen/python/test.py
parentf4f27bf66e78dacae8759f64053b36bd1995b34f (diff)
downloadperlweeklychallenge-club-bb0cfbfa8e457ccfa638562f4cd91293f4423aa0.tar.gz
perlweeklychallenge-club-bb0cfbfa8e457ccfa638562f4cd91293f4423aa0.tar.bz2
perlweeklychallenge-club-bb0cfbfa8e457ccfa638562f4cd91293f4423aa0.zip
sgreen solutions to challenge 346
Diffstat (limited to 'challenge-346/sgreen/python/test.py')
-rwxr-xr-xchallenge-346/sgreen/python/test.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/challenge-346/sgreen/python/test.py b/challenge-346/sgreen/python/test.py
new file mode 100755
index 0000000000..7651f10d7f
--- /dev/null
+++ b/challenge-346/sgreen/python/test.py
@@ -0,0 +1,28 @@
+#!/usr/bin/env python3
+
+import unittest
+ch_1 = __import__('ch-1')
+ch_2 = __import__('ch-2')
+
+
+class TestClass(unittest.TestCase):
+ def test_ch_1(self):
+ self.assertEqual(ch_1.longest_parenthesis('(()())'), 6)
+ self.assertEqual(ch_1.longest_parenthesis(')()())'), 4)
+ self.assertEqual(ch_1.longest_parenthesis('((()))()(((()'), 8)
+ self.assertEqual(ch_1.longest_parenthesis('))))((()('), 2)
+ self.assertEqual(ch_1.longest_parenthesis('()(()'), 2)
+
+ def test_ch_2(self):
+ self.assertEqual(ch_2.magic_expression(123, 6), ["1+2+3", "1*2*3"])
+ self.assertEqual(ch_2.magic_expression(105, 5), ["10-5", "1*0+5"])
+ self.assertEqual(ch_2.magic_expression(232, 8), ["2+3*2", "2*3+2"])
+ self.assertEqual(ch_2.magic_expression(1234, 10), ["1+2+3+4", "1*2*3+4"])
+ self.assertEqual(
+ ch_2.magic_expression(1001, 2),
+ ['1+0+0+1', '1+0-0+1', '1+0*0+1', '1-0+0+1', '1-0-0+1', '1-0*0+1']
+ )
+
+
+if __name__ == '__main__':
+ unittest.main()