Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 
 
 

41 Zeilen
1.2 KiB

  1. import unittest
  2. import pexpect
  3. import signal
  4. import time
  5. import sys
  6. import argparse
  7. from lesspass.cli import range_type
  8. class TestFunctional(unittest.TestCase):
  9. def test_length_below_the_minimum(self):
  10. p = pexpect.spawn(
  11. "python3 lesspass/core.py site login masterpassword --lowercase --digits --length 2"
  12. )
  13. output = p.read().decode()
  14. self.assertTrue("error: argument -L/--length: 2 is out of range, choose in [5-35]" in output)
  15. def test_length_range_type(self):
  16. self.assertEqual(range_type('5'), 5)
  17. self.assertEqual(range_type('35'), 35)
  18. with self.assertRaises(argparse.ArgumentTypeError):
  19. range_type('2')
  20. def test_exclude(self):
  21. p = pexpect.spawn(
  22. 'python3 lesspass/core.py site login masterpassword --exclude "!@$*+-8"'
  23. )
  24. output = p.read().decode()
  25. for c in "!@$*+-8":
  26. self.assertTrue(c not in output)
  27. def test_exclude(self):
  28. p = pexpect.spawn(
  29. 'python3 lesspass/core.py site login masterpassword -d -L6 --exclude "0123456789"'
  30. )
  31. output = p.read().decode()
  32. self.assertTrue("error: you can't exclude all chars available" in output)