コード例 #1
0
    def setUp(self):
        self.data = {
            "DC_PEC": "import numpy as np",
            "DC_SOLUTION": '''
try:
    x = max([1, 2, 'a'])
except TypeError as e:
    x = 'typeerror'
except ValueError:
    x = 'valueerror'
except (ZeroDivisionError, IOError) as e:
    x = e
except :
    x = 'someerror'
else :
    passed = True
finally:
    print('done')
            ''',
            "DC_SCT": '''
import collections
handlers = collections.OrderedDict()
handlers['TypeError'] = lambda: test_object_after_expression('x')
handlers['ValueError'] = lambda: test_object_after_expression('x')
handlers['ZeroDivisionError'] = lambda: test_object_after_expression('x', context_vals = ['anerror'])
handlers['IOError'] = lambda: test_object_after_expression('x', context_vals = ['anerror'])
handlers['all'] = lambda: test_object_after_expression('x')
test_try_except(index = 1,
                body = lambda: test_function("max"),
                handlers = handlers,
                orelse = lambda: test_object_after_expression('passed'),
                finalbody = lambda: test_function('print'))
            '''
        }

        self.SCT_NO_LAM = helper.remove_lambdas(self.data['DC_SCT'])
コード例 #2
0
 def test_fun_step2_no_lam(self):
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"])
     self.test_fun_step2()
コード例 #3
0
 def test_Fail_no_lam(self):
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"])
     self.test_Fail()
コード例 #4
0
 def test_Pass_no_lam(self):
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"])
     self.test_Pass()
コード例 #5
0
 def test_Pass_no_lam(self):
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"], with_args=True)
     self.test_Pass()
コード例 #6
0
ファイル: test_test_comp.py プロジェクト: datacamp/pythonwhat
 def test_pass_no_lam(self):
     self.data["DC_CODE"] = "[key + str(val) for key,val in x.items() if isinstance(key, str) if isinstance(val, str)]"
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"])
     sct_payload = helper.run(self.data)
     self.assertTrue(sct_payload['correct'])
コード例 #7
0
ファイル: test_test_comp.py プロジェクト: datacamp/pythonwhat
 def test_pass_mix_lam(self):
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"], count=2)
     self.test_pass()
コード例 #8
0
ファイル: test_test_comp.py プロジェクト: datacamp/pythonwhat
 def test_pass_no_lam(self):
     self.data["DC_CODE"] = "[[col for col in range(5)] for row in range(5)]"
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"])
     sct_payload = helper.run(self.data)
     self.assertTrue(sct_payload['correct'])
コード例 #9
0
 def test_Pass2_mix_lam(self):
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"], count=1)
     self.test_Pass2()
コード例 #10
0
 def test_Fail2_no_lam(self):
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"],
                                                 with_args=True)
     self.test_Fail2()
コード例 #11
0
 def test_Pass_exchain(self):
     self.data["DC_SCT"] = "Ex().\\" + helper.remove_lambdas(self.data["DC_SCT"])
     self.test_Pass()
コード例 #12
0
 def test_Fail_no_lam(self):
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"])
     self.test_Fail()
コード例 #13
0
 def test_Pass_no_lam(self):
     self.data["DC_SCT"] = helper.remove_lambdas(self.data["DC_SCT"])
     self.test_Pass()