예제 #1
0
 def test_ScriptRunner_encoding(self):
     out = StdOutCollector()
     ScriptRunner("# -*- coding: utf-8 -*-\nprint(1/2)", stdout=out, stderr=out)
     self.assertEqual(out.lines(), ["0.5"])
     out = StdOutCollector()
     ScriptRunner(u"# -*- coding: utf-8 -*-\nprint(1/2)", stdout=out, stderr=out)
     self.assertEqual(out.lines(), ["0.5"])
예제 #2
0
 def test_ScriptRunner_print_function(self):
     out = StdOutCollector()
     ScriptRunner("print 'hey!'", stdout=out, stderr=out)
     if PY3:
         self.assertEqual(out.lines()[-1], "SyntaxError: Missing parentheses in call to 'print'. Did you mean print('hey!')?")
     else:
         self.assertEqual(out.lines(), ["hey!"])
예제 #3
0
 def test_ScriptRunner_checkSyntaxOnly(self):
     out = StdOutCollector()
     ScriptRunner("print(aaaa)", stdout=out, stderr=out, checkSyntaxOnly=True)
     self.assertEqual(out.lines(), [])
     out = StdOutCollector()
     ScriptRunner("print('hello world!')", stdout=out, stderr=out, checkSyntaxOnly=False)
     self.assertEqual(out.lines(), ['hello world!'])
     out = StdOutCollector()
     ScriptRunner("print('hello world!')", stdout=out, stderr=out, checkSyntaxOnly=True)
     self.assertEqual(out.lines(), [])
     out = StdOutCollector()
     ScriptRunner("aaa bbb", stdout=out, stderr=out, checkSyntaxOnly=True)
     self.assertEqual(out.lines()[-1], 'SyntaxError: invalid syntax')
예제 #4
0
 def test_ScriptRunner_oldDivision(self):
     realGetDefault = drawBot.scriptTools.getDefault
     def mockedGetDefault(*args):
         return False
     drawBot.scriptTools.getDefault = mockedGetDefault
     try:
         out = StdOutCollector()
         ScriptRunner("print(1/2)", stdout=out, stderr=out)
         if PY3:
             self.assertEqual(out.lines(), ["0.5"])
         else:
             self.assertEqual(out.lines(), ["0"])
     finally:
         drawBot.scriptTools.getDefault = realGetDefault
예제 #5
0
파일: testMisc.py 프로젝트: typoman/drawbot
 def test_ScriptRunner_file(self):
     out = StdOutCollector()
     path = os.path.join(
         testDataDir, "scriptRunnerTest.py"
     )  # use an actual file, no not confuse coverage testing
     ScriptRunner("print(__file__)\nprint(__name__)",
                  stdout=out,
                  stderr=out,
                  path=path)
     self.assertEqual(out.lines(), [path, "__main__"])
예제 #6
0
 def test_ScriptRunner_oldDivision(self):
     realGetDefault = drawBot.scriptTools.getDefault
     def mockedGetDefault(*args):
         return False
     drawBot.scriptTools.getDefault = mockedGetDefault
     try:
         out = StdOutCollector()
         ScriptRunner("print(1/2)", stdout=out, stderr=out)
         self.assertEqual(out.lines(), ["0.5"])
     finally:
         drawBot.scriptTools.getDefault = realGetDefault
예제 #7
0
파일: testMisc.py 프로젝트: sahwar/drawbot
 def test_ScriptRunner_checkSyntaxOnly(self):
     out = StdOutCollector()
     ScriptRunner("print(aaaa)",
                  stdout=out,
                  stderr=out,
                  checkSyntaxOnly=True)
     self.assertEqual(out.lines(), [])
     out = StdOutCollector()
     ScriptRunner("print('hello world!')",
                  stdout=out,
                  stderr=out,
                  checkSyntaxOnly=False)
     self.assertEqual(out.lines(), ['hello world!'])
     out = StdOutCollector()
     ScriptRunner("print('hello world!')",
                  stdout=out,
                  stderr=out,
                  checkSyntaxOnly=True)
     self.assertEqual(out.lines(), [])
     out = StdOutCollector()
     ScriptRunner("aaa bbb", stdout=out, stderr=out, checkSyntaxOnly=True)
     self.assertEqual(out.lines()[-1], 'SyntaxError: invalid syntax')
예제 #8
0
 def test_ScriptRunner_StdOutCollector(self):
     out = StdOutCollector()
     ScriptRunner("print('hey!')", stdout=out, stderr=out)
     self.assertEqual(out.lines(), ["hey!"])
예제 #9
0
파일: testMisc.py 프로젝트: sahwar/drawbot
 def test_ScriptRunner_division(self):
     out = StdOutCollector()
     ScriptRunner("print(1/2)", stdout=out, stderr=out)
     self.assertEqual(out.lines(), ["0.5"])
예제 #10
0
파일: testMisc.py 프로젝트: sahwar/drawbot
 def test_ScriptRunner_fromPath(self):
     out = StdOutCollector()
     path = os.path.join(testDataDir, "scriptRunnerTest.py")
     ScriptRunner(path=path, stdout=out, stderr=out)
     self.assertEqual(out.lines(), [path, "__main__", u'\xc5benr\xe5'])
예제 #11
0
 def test_ScriptRunner_file(self):
     out = StdOutCollector()
     path = os.path.join(testDataDir, "scriptRunnerTest.py") # use an actual file, no not confuse coverage testing
     ScriptRunner("print(__file__)\nprint(__name__)", stdout=out, stderr=out, path=path)
     self.assertEqual(out.lines(), [path, "__main__"])
예제 #12
0
파일: testMisc.py 프로젝트: sahwar/drawbot
 def test_ScriptRunner_StdOutCollector(self):
     out = StdOutCollector()
     ScriptRunner("print('hey!')", stdout=out, stderr=out)
     self.assertEqual(out.lines(), ["hey!"])
예제 #13
0
 def test_ScriptRunner_namespace(self):
     out = StdOutCollector()
     ScriptRunner("print(aaaa)", stdout=out, stderr=out, namespace=dict(aaaa=123))
     self.assertEqual(out.lines(), ["123"])
예제 #14
0
 def test_ScriptRunner_fromPath(self):
     out = StdOutCollector()
     path = os.path.join(testDataDir, "scriptRunnerTest.py")
     ScriptRunner(path=path, stdout=out, stderr=out)
     self.assertEqual(out.lines(), [path, "__main__", u'\xc5benr\xe5'])
예제 #15
0
 def test_ScriptRunner_print_function(self):
     out = StdOutCollector()
     ScriptRunner("print 'hey!'", stdout=out, stderr=out)
     self.assertEqual(out.lines()[-1], "SyntaxError: Missing parentheses in call to 'print'. Did you mean print('hey!')?")
예제 #16
0
 def test_ScriptRunner_division(self):
     out = StdOutCollector()
     ScriptRunner("print(1/2)", stdout=out, stderr=out)
     self.assertEqual(out.lines(), ["0.5"])
예제 #17
0
 def test_ScriptRunner_namespace(self):
     out = StdOutCollector()
     ScriptRunner("print(aaaa)", stdout=out, stderr=out, namespace=dict(aaaa=123))
     self.assertEqual(out.lines(), ["123"])