mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-02-11 02:07:37 -08:00
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
53 lines
1.6 KiB
Python
53 lines
1.6 KiB
Python
import unittest
|
|
import envoy
|
|
import time
|
|
|
|
class SimpleTest(unittest.TestCase):
|
|
|
|
def test_input(self):
|
|
r = envoy.run("sed s/i/I/g", "Hi")
|
|
self.assertEqual(r.std_out.rstrip(), "HI")
|
|
self.assertEqual(r.status_code, 0)
|
|
|
|
def test_pipe(self):
|
|
r = envoy.run("echo -n 'hi'| tr [:lower:] [:upper:]")
|
|
self.assertEqual(r.std_out, "HI")
|
|
self.assertEqual(r.status_code, 0)
|
|
|
|
def test_timeout(self):
|
|
r = envoy.run('yes | head', timeout=1)
|
|
self.assertEqual(r.std_out, 'y\ny\ny\ny\ny\ny\ny\ny\ny\ny\n')
|
|
self.assertEqual(r.status_code, 0)
|
|
|
|
# THIS TEST FAILS BECAUSE expand_args DOESN'T HANDLE QUOTES PROPERLY
|
|
def test_quoted_args(self):
|
|
sentinel = 'quoted_args' * 3
|
|
r = envoy.run("python -c 'print \"%s\"'" % sentinel)
|
|
self.assertEqual(r.std_out.rstrip(), sentinel)
|
|
self.assertEqual(r.status_code, 0)
|
|
|
|
class ConnectedCommandTests(unittest.TestCase):
|
|
|
|
def test_status_code_none(self):
|
|
c = envoy.connect("sleep 5")
|
|
self.assertEqual(c.status_code, None)
|
|
|
|
def test_status_code_success(self):
|
|
c = envoy.connect("sleep 1")
|
|
time.sleep(2)
|
|
self.assertEqual(c.status_code, 0)
|
|
|
|
def test_status_code_failure(self):
|
|
c = envoy.connect("sleeep 1")
|
|
self.assertEqual(c.status_code, 127)
|
|
|
|
def test_input(self):
|
|
test_string = 'asdfQWER'
|
|
r = envoy.connect("cat | tr [:lower:] [:upper:]")
|
|
r.send(test_string)
|
|
self.assertEqual(r.std_out, test_string.upper())
|
|
self.assertEqual(r.status_code, 0)
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|