summaryrefslogtreecommitdiffstats
path: root/testing/mozbase/mozdevice/tests/test_escape_command_line.py
diff options
context:
space:
mode:
Diffstat (limited to 'testing/mozbase/mozdevice/tests/test_escape_command_line.py')
-rw-r--r--testing/mozbase/mozdevice/tests/test_escape_command_line.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/testing/mozbase/mozdevice/tests/test_escape_command_line.py b/testing/mozbase/mozdevice/tests/test_escape_command_line.py
new file mode 100644
index 0000000000..112dd936c5
--- /dev/null
+++ b/testing/mozbase/mozdevice/tests/test_escape_command_line.py
@@ -0,0 +1,21 @@
+#!/usr/bin/env python
+
+import mozunit
+
+
+def test_escape_command_line(mock_adb_object, redirect_stdout_and_assert):
+ """Test _escape_command_line."""
+ cases = {
+ # expected output : test input
+ "adb shell ls -l": ["adb", "shell", "ls", "-l"],
+ "adb shell 'ls -l'": ["adb", "shell", "ls -l"],
+ "-e 'if (true)'": ["-e", "if (true)"],
+ "-e 'if (x === \"hello\")'": ["-e", 'if (x === "hello")'],
+ "-e 'if (x === '\"'\"'hello'\"'\"')'": ["-e", "if (x === 'hello')"],
+ }
+ for expected, input in cases.items():
+ assert mock_adb_object._escape_command_line(input) == expected
+
+
+if __name__ == "__main__":
+ mozunit.main()