Esempio n. 1
0
 def testNumberedRedirect(self):
   pysh.run('python -c "import sys;'
            'print >> sys.stderr, \'error\';print \'out\'"'
            '> stdout.txt 2> stderr.txt',
            globals(), locals())
   self.assertEquals('error\n', file('stderr.txt').read())
   self.assertEquals('out\n', file('stdout.txt').read())
Esempio n. 2
0
 def testOrNotPyCmd(self):
   class Tmp(object):
     def process(self, args, input):
       raise Exception('Error!')
   tmp = Tmp()
   pysh.run('$tmp > out.txt || echo foo >> out.txt', globals(), locals())
   self.assertEquals('foo\n', file('out.txt').read())
Esempio n. 3
0
 def testOrPyCmd(self):
   class Tmp(object):
     def process(self, args, input):
       return ['tmp']
   tmp = Tmp()
   pysh.run('$tmp > out.txt || echo foo >> out.txt', globals(), locals())
   self.assertEquals('tmp\n', file('out.txt').read())
Esempio n. 4
0
 def testNumberedRedirect(self):
     pysh.run(
         'python -c "import sys;'
         'print >> sys.stderr, \'error\';print \'out\'"'
         '> stdout.txt 2> stderr.txt', globals(), locals())
     self.assertEquals('error\n', file('stderr.txt').read())
     self.assertEquals('out\n', file('stdout.txt').read())
Esempio n. 5
0
 def testPyCmdInVar(self):
   class Tmp(object):
     def process(self, args, input):
       return ['tmp', 19]
   tmp = Tmp()
   pysh.run('$tmp > out.txt', globals(), locals())
   self.assertEquals('tmp\n19\n', file('out.txt').read())
Esempio n. 6
0
    def testPyCmdInVar(self):
        class Tmp(object):
            def process(self, args, input):
                return ['tmp', 19]

        tmp = Tmp()
        pysh.run('$tmp > out.txt', globals(), locals())
        self.assertEquals('tmp\n19\n', file('out.txt').read())
Esempio n. 7
0
    def testOrPyCmd(self):
        class Tmp(object):
            def process(self, args, input):
                return ['tmp']

        tmp = Tmp()
        pysh.run('$tmp > out.txt || echo foo >> out.txt', globals(), locals())
        self.assertEquals('tmp\n', file('out.txt').read())
Esempio n. 8
0
    def testOrNotPyCmd(self):
        class Tmp(object):
            def process(self, args, input):
                raise Exception('Error!')

        tmp = Tmp()
        pysh.run('$tmp > out.txt || echo foo >> out.txt', globals(), locals())
        self.assertEquals('foo\n', file('out.txt').read())
Esempio n. 9
0
 def testReturnCodeMulti(self):
     rc = pysh.run(
         '(rc0 <- echo foo >> /dev/null) && '
         '(rc1 <- echo bar >> /dev/null)', globals(), locals())
     self.assertEquals(2, len(rc))
     self.assertEquals(0, rc['rc0'])
     self.assertEquals(0, rc['rc1'])
Esempio n. 10
0
 def testReadCvsCmd(self):
   pysh.run('echo \'a,b,"c,"\' > in.txt', globals(), locals())
   pysh.run('echo \'e,"f","""g"""\' >> in.txt', globals(), locals())
   pysh.run('cat in.txt | readcsv |'
            'map ${lambda row: row[2]} > out.txt',
            globals(), locals())
   self.assertEquals('c,\n"g"\n', file('out.txt').read())
Esempio n. 11
0
 def testReadCvsCmd(self):
     pysh.run('echo \'a,b,"c,"\' > in.txt', globals(), locals())
     pysh.run('echo \'e,"f","""g"""\' >> in.txt', globals(), locals())
     pysh.run(
         'cat in.txt | readcsv |'
         'map ${lambda row: row[2]} > out.txt', globals(), locals())
     self.assertEquals('c,\n"g"\n', file('out.txt').read())
Esempio n. 12
0
 def testPyCmdSequence(self):
     pysh.run('echo "foo" | pycmd bar | pycmd baz | cat > out.txt',
              globals(), locals())
     self.assertEquals('pycmd\nbaz\npycmd\nbar\nfoo\n',
                       file('out.txt').read())
Esempio n. 13
0
 def testReceiveData(self):
     out = []
     pysh.run('echo "foo\\nbar" | recv $out', globals(), locals())
     self.assertEquals(['foo', 'bar'], out)
Esempio n. 14
0
 def testListArgs(self):
     args = ['a', 'b', 10, {1: 3}]
     pysh.run('python -c "import sys;print sys.argv" '
              '$args > out.txt', globals(), locals())
     argv = eval(file('out.txt').read())
     self.assertEquals(['-c', 'a', 'b', '10', '{1: 3}'], argv)
Esempio n. 15
0
 def testPyCmd(self):
     pysh.run('echo "foo\\nbar" | pycmd a b c | cat > out.txt', globals(),
              locals())
     self.assertEquals('pycmd\na\nb\nc\nfoo\nbar\n', file('out.txt').read())
Esempio n. 16
0
 def testExpression(self):
     map_str = str(map)
     pysh.run('echo ${{len("abc") :[3 * 4 + 10]}} > out.txt', globals(),
              locals())
     self.assertEquals('{3: [22]}\n', file('out.txt').read())
Esempio n. 17
0
 def testEnvVar(self):
     os.environ['YUNABE_PYSH_TEST_VAR'] = 'foobarbaz'
     pysh.run('echo $YUNABE_PYSH_TEST_VAR > out.txt', globals(), locals())
     self.assertEquals('foobarbaz\n', file('out.txt').read())
Esempio n. 18
0
 def testOr(self):
     pysh.run('echo hoge >> out.txt || echo piyo >> out.txt', globals(),
              locals())
     self.assertEquals('hoge\n', file('out.txt').read())
Esempio n. 19
0
 def testExpression(self):
   map_str = str(map)
   pysh.run('echo ${{len("abc") :[3 * 4 + 10]}} > out.txt',
            globals(), locals())
   self.assertEquals('{3: [22]}\n', file('out.txt').read())
Esempio n. 20
0
 def testReduceCmd(self):
   pysh.run('echo "foo\\nbar" | reduce ${lambda x, y: x + y} |'
            'cat > out.txt', globals(), locals())
   self.assertEquals('foobar\n', file('out.txt').read())
Esempio n. 21
0
 def testMapCmd(self):
     pysh.run(
         'echo "1\\n2\\n3\\n4\\n5" | map ${lambda l: int(l)} |'
         'map ${lambda x: x * x} > out.txt', globals(), locals())
     self.assertEquals('1\n4\n9\n16\n25\n', file('out.txt').read())
Esempio n. 22
0
 def testFilterCmd(self):
   pysh.run('echo "cupcake\\ndonut\\nfroyo\\nginger" |'
            'filter ${lambda l: "e" in l} > out.txt',
            globals(), locals())
   self.assertEquals('cupcake\nginger\n', file('out.txt').read())
Esempio n. 23
0
 def testMapCmd(self):
   pysh.run('echo "1\\n2\\n3\\n4\\n5" | map ${lambda l: int(l)} |'
            'map ${lambda x: x * x} > out.txt', globals(), locals())
   self.assertEquals('1\n4\n9\n16\n25\n', file('out.txt').read())
Esempio n. 24
0
 def testSendData(self):
   data = ['foo', 'bar', 'baz']
   pysh.run('send $data | sort > out.txt', globals(), locals())
   self.assertEquals('bar\nbaz\nfoo\n', file('out.txt').read())
Esempio n. 25
0
 def testReceiveData(self):
   out = []
   pysh.run('echo "foo\\nbar" | recv $out', globals(), locals())
   self.assertEquals(['foo', 'bar'], out)
Esempio n. 26
0
 def testPyCmd(self):
   pysh.run('echo "foo\\nbar" | pycmd a b c | cat > out.txt',
            globals(), locals())
   self.assertEquals('pycmd\na\nb\nc\nfoo\nbar\n', file('out.txt').read())
Esempio n. 27
0
 def testReduceCmd(self):
     pysh.run(
         'echo "foo\\nbar" | reduce ${lambda x, y: x + y} |'
         'cat > out.txt', globals(), locals())
     self.assertEquals('foobar\n', file('out.txt').read())
Esempio n. 28
0
 def testOr(self):
   pysh.run('echo hoge >> out.txt || echo piyo >> out.txt',
            globals(), locals())
   self.assertEquals('hoge\n', file('out.txt').read())
Esempio n. 29
0
 def testAndOr(self):
     pysh.run(
         '(python -c "import sys;sys.exit(1)" >> out.txt && echo bar) || '
         'echo baz >> out.txt)', globals(), locals())
     self.assertEquals('baz\n', file('out.txt').read())
Esempio n. 30
0
 def testOrAnd(self):
   pysh.run('(echo foo >> out.txt || echo bar >> out.txt) && '
            'echo baz >> out.txt', globals(), locals())
   self.assertEquals('foo\nbaz\n', file('out.txt').read())
Esempio n. 31
0
 def testPyCmdSequence(self):
   pysh.run('echo "foo" | pycmd bar | pycmd baz | cat > out.txt',
            globals(), locals())
   self.assertEquals('pycmd\nbaz\npycmd\nbar\nfoo\n', file('out.txt').read())
Esempio n. 32
0
 def testAndOr(self):
   pysh.run('(python -c "import sys;sys.exit(1)" >> out.txt && echo bar) || '
            'echo baz >> out.txt)', globals(), locals())
   self.assertEquals('baz\n', file('out.txt').read())
Esempio n. 33
0
 def testListComprehension(self):
     pysh.run('send ${[x * x for x in xrange(3)]} > out.txt', globals(),
              locals())
     self.assertEquals('0\n1\n4\n', file('out.txt').read())
Esempio n. 34
0
 def testOrNot(self):
   pysh.run('python -c "import sys;sys.exit(1)" > out.txt || '
            'echo foo >> out.txt', globals(), locals())
   self.assertEquals('foo\n', file('out.txt').read())
Esempio n. 35
0
 def testStringArgs(self):
     pysh.run(
         'python -c "import sys;print sys.argv" '
         '"a b" \'c d\' e f > out.txt', globals(), locals())
     argv = eval(file('out.txt').read())
     self.assertEquals(['-c', 'a b', 'c d', 'e', 'f'], argv)
Esempio n. 36
0
 def testListArgs(self):
   args = ['a', 'b', 10, {1: 3}]
   pysh.run('python -c "import sys;print sys.argv" '
            '$args > out.txt', globals(), locals())
   argv = eval(file('out.txt').read())
   self.assertEquals(['-c', 'a', 'b', '10', '{1: 3}'], argv)
Esempio n. 37
0
 def testEnvVar(self):
   os.environ['YUNABE_PYSH_TEST_VAR'] = 'foobarbaz'
   pysh.run('echo $YUNABE_PYSH_TEST_VAR > out.txt', globals(), locals())
   self.assertEquals('foobarbaz\n', file('out.txt').read())
Esempio n. 38
0
 def testStringArgs(self):
   pysh.run('python -c "import sys;print sys.argv" '
            '"a b" \'c d\' e f > out.txt', globals(), locals())
   argv = eval(file('out.txt').read())
   self.assertEquals(['-c', 'a b', 'c d', 'e', 'f'], argv)
Esempio n. 39
0
 def testPyCmdRedirect(self):
     pysh.run('echo "foo" | pycmd a b c > out.txt', globals(), locals())
     self.assertEquals('pycmd\na\nb\nc\nfoo\n', file('out.txt').read())
Esempio n. 40
0
 def testReturnCode(self):
   rc = pysh.run('rc <- echo foo >> /dev/null', globals(), locals())
   self.assertEquals(1, len(rc))
   self.assertEquals(0, rc['rc'])
Esempio n. 41
0
 def testListComprehension(self):
   pysh.run('send ${[x * x for x in xrange(3)]} > out.txt',
            globals(), locals())
   self.assertEquals('0\n1\n4\n', file('out.txt').read())
Esempio n. 42
0
 def testReturnCodeMulti(self):
   rc = pysh.run('(rc0 <- echo foo >> /dev/null) && '
                 '(rc1 <- echo bar >> /dev/null)', globals(), locals())
   self.assertEquals(2, len(rc))
   self.assertEquals(0, rc['rc0'])
   self.assertEquals(0, rc['rc1'])
Esempio n. 43
0
 def testSendData(self):
     data = ['foo', 'bar', 'baz']
     pysh.run('send $data | sort > out.txt', globals(), locals())
     self.assertEquals('bar\nbaz\nfoo\n', file('out.txt').read())
Esempio n. 44
0
 def testSemiColon(self):
   rc = pysh.run('echo foo >> out.txt; echo bar >> out.txt',
                 globals(), locals())
   self.assertEquals('foo\nbar\n', file('out.txt').read())
Esempio n. 45
0
 def testFilterCmd(self):
     pysh.run(
         'echo "cupcake\\ndonut\\nfroyo\\nginger" |'
         'filter ${lambda l: "e" in l} > out.txt', globals(), locals())
     self.assertEquals('cupcake\nginger\n', file('out.txt').read())
Esempio n. 46
0
 def testReturnCode(self):
     rc = pysh.run('rc <- echo foo >> /dev/null', globals(), locals())
     self.assertEquals(1, len(rc))
     self.assertEquals(0, rc['rc'])
Esempio n. 47
0
 def testSemiColon(self):
     rc = pysh.run('echo foo >> out.txt; echo bar >> out.txt', globals(),
                   locals())
     self.assertEquals('foo\nbar\n', file('out.txt').read())
Esempio n. 48
0
 def testChangeDir(self):
     rc = pysh.run('cd /dev', globals(), locals())
     self.assertEquals('/dev', os.getcwd())
Esempio n. 49
0
 def testOrAnd(self):
     pysh.run(
         '(echo foo >> out.txt || echo bar >> out.txt) && '
         'echo baz >> out.txt', globals(), locals())
     self.assertEquals('foo\nbaz\n', file('out.txt').read())
Esempio n. 50
0
 def testBuiltinVar(self):
   map_str = str(map)
   pysh.run('echo $map > out.txt', globals(), locals())
   self.assertEquals(map_str + '\n', file('out.txt').read())
Esempio n. 51
0
 def testOrNot(self):
     pysh.run(
         'python -c "import sys;sys.exit(1)" > out.txt || '
         'echo foo >> out.txt', globals(), locals())
     self.assertEquals('foo\n', file('out.txt').read())
Esempio n. 52
0
 def testBuiltinVar(self):
     map_str = str(map)
     pysh.run('echo $map > out.txt', globals(), locals())
     self.assertEquals(map_str + '\n', file('out.txt').read())
Esempio n. 53
0
 def testExpandUser(self):
   rc = pysh.run('echo ~/test.txt > out.txt', globals(), locals())
   path = os.path.expanduser('~/test.txt')
   self.assertEquals(path + '\n', file('out.txt').read())
Esempio n. 54
0
 def testPyCmdRedirect(self):
   pysh.run('echo "foo" | pycmd a b c > out.txt',
            globals(), locals())
   self.assertEquals('pycmd\na\nb\nc\nfoo\n', file('out.txt').read())
Esempio n. 55
0
 def testChangeDir(self):
   rc = pysh.run('cd /dev', globals(), locals())
   self.assertEquals('/dev', os.getcwd())
Esempio n. 56
0
 def testGlob(self):
   pysh.run('echo foo > foo.txt', globals(), locals())
   pysh.run('echo bar > bar.txt', globals(), locals())
   pysh.run('echo baz > baz.doc', globals(), locals())
   pysh.run('echo test > "a*b.doc"', globals(), locals())
   pysh.run('echo *.txt > out1.txt', globals(), locals())
   pysh.run('echo "*.txt" > out2.txt', globals(), locals())
   pysh.run('echo *\'*\'*.doc > out3.txt', globals(), locals())
   self.assertEquals('bar.txt foo.txt\n', file('out1.txt').read())
   self.assertEquals('*.txt\n', file('out2.txt').read())
   self.assertEquals('a*b.doc\n', file('out3.txt').read())
Esempio n. 57
0
 def testExpandUser(self):
     rc = pysh.run('echo ~/test.txt > out.txt', globals(), locals())
     path = os.path.expanduser('~/test.txt')
     self.assertEquals(path + '\n', file('out.txt').read())
Esempio n. 58
0
 def testGlobalVar(self):
     pysh.run('echo $__name__ > out.txt', globals(), locals())
     self.assertEquals('__main__\n', file('out.txt').read())
Esempio n. 59
0
 def testGlob(self):
     pysh.run('echo foo > foo.txt', globals(), locals())
     pysh.run('echo bar > bar.txt', globals(), locals())
     pysh.run('echo baz > baz.doc', globals(), locals())
     pysh.run('echo test > "a*b.doc"', globals(), locals())
     pysh.run('echo *.txt > out1.txt', globals(), locals())
     pysh.run('echo "*.txt" > out2.txt', globals(), locals())
     pysh.run('echo *\'*\'*.doc > out3.txt', globals(), locals())
     self.assertEquals('bar.txt foo.txt\n', file('out1.txt').read())
     self.assertEquals('*.txt\n', file('out2.txt').read())
     self.assertEquals('a*b.doc\n', file('out3.txt').read())
Esempio n. 60
0
 def testGlobalVar(self):
   pysh.run('echo $__name__ > out.txt', globals(), locals())
   self.assertEquals('__main__\n', file('out.txt').read())