| Index: third_party/typ/typ/tests/test_case_test.py
|
| diff --git a/third_party/typ/typ/tests/test_case_test.py b/third_party/typ/typ/tests/test_case_test.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..4d22bd93d57140ae0ea31ad9652c276920d5a812
|
| --- /dev/null
|
| +++ b/third_party/typ/typ/tests/test_case_test.py
|
| @@ -0,0 +1,54 @@
|
| +# Copyright 2014 Dirk Pranke. All rights reserved.
|
| +#
|
| +# Licensed under the Apache License, Version 2.0 (the "License");
|
| +# you may not use this file except in compliance with the License.
|
| +# You may obtain a copy of the License at
|
| +#
|
| +# http://www.apache.org/licenses/LICENSE-2.0
|
| +#
|
| +# Unless required by applicable law or agreed to in writing, software
|
| +# distributed under the License is distributed on an "AS IS" BASIS,
|
| +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| +# See the License for the specific language governing permissions and
|
| +# limitations under the License.
|
| +
|
| +from typ import test_case
|
| +
|
| +
|
| +class TestFuncs(test_case.MainTestCase):
|
| +
|
| + def test_convert_newlines(self):
|
| + cn = test_case.convert_newlines
|
| + self.assertEqual(cn('foo'), 'foo')
|
| + self.assertEqual(cn('foo\nbar\nbaz'), 'foo\nbar\nbaz')
|
| + self.assertEqual(cn('foo\rbar\nbaz\r'), 'foo\nbar\nbaz\n')
|
| + self.assertEqual(cn('foo\r\nbar\r\nbaz\r\nmeh\n'),
|
| + 'foo\nbar\nbaz\nmeh\n')
|
| +
|
| +
|
| +class TestMainTestCase(test_case.MainTestCase):
|
| +
|
| + def test_basic(self):
|
| + h = self.make_host()
|
| + files = {
|
| + 'test.py': """
|
| +import os
|
| +import sys
|
| +sys.stdout.write("in: %s\\n" % sys.stdin.read())
|
| +sys.stdout.write("out: %s\\n" % os.environ['TEST_VAR'])
|
| +sys.stderr.write("err\\n")
|
| +with open("../results", "w") as fp:
|
| + fp.write(open("../input", "r").read() + " written")
|
| +""",
|
| + 'input': 'results',
|
| + 'subdir/x': 'y',
|
| + }
|
| + exp_files = files.copy()
|
| + exp_files['results'] = 'results written'
|
| + self.check(prog=[h.python_interpreter, '../test.py'],
|
| + stdin='hello on stdin',
|
| + env={'TEST_VAR': 'foo'},
|
| + cwd='subdir',
|
| + files=files,
|
| + ret=0, out='in: hello on stdin\nout: foo\n',
|
| + err='err\n', exp_files=exp_files)
|
|
|