summaryrefslogtreecommitdiff
path: root/tests/test_cli.py
diff options
context:
space:
mode:
authorVictor Uriarte <victor.m.uriarte@intel.com>2016-06-19 18:27:59 -0700
committerVictor Uriarte <victor.m.uriarte@intel.com>2016-06-20 07:41:13 -0700
commit85349e68592964e66e5dfe7e48e9f76cb93d48fd (patch)
treedb402888277a06ca450eba2e57dd6f94c9b369ad /tests/test_cli.py
parent3aa952d71952cbb0728698bb381dae74d1a1727b (diff)
downloadsqlparse-85349e68592964e66e5dfe7e48e9f76cb93d48fd.tar.gz
Format cli.py and add cli-tests
Diffstat (limited to 'tests/test_cli.py')
-rw-r--r--tests/test_cli.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/test_cli.py b/tests/test_cli.py
index 51ee61b..77a764e 100644
--- a/tests/test_cli.py
+++ b/tests/test_cli.py
@@ -32,6 +32,43 @@ def test_valid_args(filepath):
assert sqlparse.cli.main([path, '-r']) is not None
+def test_invalid_choise(filepath):
+ path = filepath('function.sql')
+ with pytest.raises(SystemExit):
+ sqlparse.cli.main([path, '-l', 'spanish'])
+
+
+def test_invalid_args(filepath, capsys):
+ path = filepath('function.sql')
+ sqlparse.cli.main([path, '-r', '--indent_width', '0'])
+ _, err = capsys.readouterr()
+ assert err == ("[ERROR] Invalid options: indent_width requires "
+ "a positive integer\n")
+
+
+def test_invalid_infile(filepath, capsys):
+ path = filepath('missing.sql')
+ sqlparse.cli.main([path, '-r'])
+ _, err = capsys.readouterr()
+ assert err[:22] == "[ERROR] Failed to read"
+
+
+def test_invalid_outfile(filepath, capsys):
+ path = filepath('function.sql')
+ outpath = filepath('/missing/function.sql')
+ sqlparse.cli.main([path, '-r', '-o', outpath])
+ _, err = capsys.readouterr()
+ assert err[:22] == "[ERROR] Failed to open"
+
+
+def test_stdout(filepath, load_file, capsys):
+ path = filepath('begintag.sql')
+ expected = load_file('begintag.sql')
+ sqlparse.cli.main([path])
+ out, _ = capsys.readouterr()
+ assert out == expected
+
+
def test_script():
# Call with the --help option as a basic sanity check.
cmd = "{0:s} -m sqlparse.cli --help".format(sys.executable)