summaryrefslogtreecommitdiffstats
path: root/tests/old_tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/old_tests.py')
-rw-r--r--tests/old_tests.py151
1 files changed, 0 insertions, 151 deletions
diff --git a/tests/old_tests.py b/tests/old_tests.py
deleted file mode 100644
index 8a6bcf2c..00000000
--- a/tests/old_tests.py
+++ /dev/null
@@ -1,151 +0,0 @@
-#!/usr/bin/env python
-"""
-
-Old tests. To be cleaned up.
-
-"""
-from __future__ import unicode_literals
-
-import unittest
-
-from prompt_toolkit.contrib.shell.lexer import ShellLexer, TextToken
-from pygments.token import Token
-
-
-class ShellLexerTest(unittest.TestCase):
- def setUp(self):
- self.lexer = ShellLexer(stripnl=False, stripall=False, ensurenl=False)
-
- def test_simple(self):
- t = list(self.lexer.get_tokens('aaa bbb ccc'))
- self.assertEqual(t, [
- (Token.Text, 'aaa'),
- (Token.WhiteSpace, ' '),
- (Token.Text, 'bbb'),
- (Token.WhiteSpace, ' '),
- (Token.Text, 'ccc') ])
-
- def test_complex(self):
- t = list(self.lexer.get_tokens('''a'a 'a " b "bb ccc\\'''))
- # The tokenizer separates text and whitespace, but keeps all the characters.
- self.assertEqual(t, [
- (Token.Text, "a'a 'a"),
- (Token.WhiteSpace, ' '),
- (Token.Text, '" b "bb'),
- (Token.WhiteSpace, ' '),
- (Token.Text, 'ccc\\') ])
-
-
-class TextTokenTest(unittest.TestCase):
- def test_simple(self):
- t = TextToken('hello')
- t.unescaped_text = 'hello'
-
- def test_double_quotes(self):
- t = TextToken('h"e"llo" wor"ld')
- self.assertEqual(t.unescaped_text, 'hello world')
- self.assertEqual(t.inside_double_quotes, False)
- self.assertEqual(t.inside_single_quotes, False)
- self.assertEqual(t.trailing_backslash, False)
-
- def test_single_quotes(self):
- t = TextToken("h'e'llo' wo'rld")
- self.assertEqual(t.unescaped_text, 'hello world')
- self.assertEqual(t.inside_double_quotes, False)
- self.assertEqual(t.inside_single_quotes, False)
- self.assertEqual(t.trailing_backslash, False)
-
- def test_backslashes(self):
- t = TextToken("hello\ wo\\rld")
- self.assertEqual(t.unescaped_text, 'hello world')
- self.assertEqual(t.inside_double_quotes, False)
- self.assertEqual(t.inside_single_quotes, False)
- self.assertEqual(t.trailing_backslash, False)
-
- def test_open_double_quote(self):
- t = TextToken('he"llo world')
- self.assertEqual(t.unescaped_text, 'hello world')
- self.assertEqual(t.inside_double_quotes, True)
- self.assertEqual(t.inside_single_quotes, False)
- self.assertEqual(t.trailing_backslash, False)
-
- def test_open_single_quote(self):
- t = TextToken("he'llo world")
- self.assertEqual(t.unescaped_text, 'hello world')
- self.assertEqual(t.inside_double_quotes, False)
- self.assertEqual(t.inside_single_quotes, True)
- self.assertEqual(t.trailing_backslash, False)
-
- def test_trailing_backslash(self):
- t = TextToken("hello\\ world\\")
- self.assertEqual(t.unescaped_text, 'hello world')
- self.assertEqual(t.inside_double_quotes, False)
- self.assertEqual(t.inside_single_quotes, False)
- self.assertEqual(t.trailing_backslash, True)
-
-#---
-
-from prompt_toolkit.contrib.shell.rules import TokenStream
-
-class TokenStreamTest(unittest.TestCase):
- def test_tokenstream(self):
- s = TokenStream([ 'aaa', 'bbb', 'ccc', ])
-
- # Test top
- self.assertEqual(s.first_token, 'aaa')
- self.assertEqual(s.has_more_tokens, True)
-
- # Pop
- self.assertEqual(s.pop(), 'aaa')
- self.assertEqual(s.first_token, 'bbb')
- self.assertEqual(s.has_more_tokens, True)
-
- # Test restore point
- with s.restore_point:
- self.assertEqual(s.pop(), 'bbb')
- self.assertEqual(s.first_token, 'ccc')
- self.assertEqual(s.pop(), 'ccc')
-
- self.assertEqual(s.has_more_tokens, False)
- self.assertEqual(s.first_token, None)
-
- # State should have been restored after the with block.
- self.assertEqual(s.first_token, 'bbb')
- self.assertEqual(s.has_more_tokens, True)
-
-#--
-
-from prompt_toolkit.contrib.shell.rules import Literal
-from prompt_toolkit.contrib.shell.nodes import LiteralNode
-
-class LiteralTest(unittest.TestCase):
- def setUp(self):
- self.literal = Literal('my-variable', dest='key')
-
- def test_literal_match(self):
- stream = TokenStream([ 'my-variable' ])
- result = list(self.literal.parse(stream))
-
- self.assertEqual(len(result), 1)
- self.assertIsInstance(result[0], LiteralNode)
- self.assertEqual(result[0].rule, self.literal)
- self.assertEqual(result[0]._text, 'my-variable')
- self.assertEqual(result[0].get_variables(), { 'key': 'my-variable' })
-
-# def test_literal_nomatch_suffix(self):
-# stream = TokenStream([ 'my-variable', 'suffix' ])
-# result = list(self.literal.parse(stream))
-#
-# self.assertEqual(len(result), 0)
-
- def test_literal_nomatch_invalid(self):
- stream = TokenStream([ 'invalid' ])
- result = list(self.literal.parse(stream))
-
- self.assertEqual(len(result), 0)
-
-
-#class VariableTest(unittest.TestCase):
-# def setUp(self):
-# self.variable = Variable(placeholder='my-variable', dest='destination')
-