test_pwman.py 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #!/usr/bin/env python
  2. #============================================================================
  3. # This file is part of Pwman3.
  4. #
  5. # Pwman3 is free software; you can redistribute it and/or modify
  6. # it under the terms of the GNU General Public License, version 2
  7. # as published by the Free Software Foundation;
  8. #
  9. # Pwman3 is distributed in the hope that it will be useful,
  10. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. # GNU General Public License for more details.
  13. #
  14. # You should have received a copy of the GNU General Public License
  15. # along with Pwman3; if not, write to the Free Software
  16. # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  17. #============================================================================
  18. # Copyright (C) 2013 Oz Nahum <nahumoz@gmail.com>
  19. #============================================================================
  20. import os
  21. import sys
  22. import unittest
  23. from .db_tests import (SetupTester)
  24. from .test_crypto_engine import CryptoEngineTest, TestPassGenerator
  25. from .test_config import TestConfig
  26. from .test_sqlite import TestSQLite
  27. from .test_importer import TestImporter
  28. from .test_factory import TestFactory
  29. from .test_base_ui import TestBaseUI
  30. from .test_init import TestInit
  31. from .test_nodes import TestNode
  32. if 'win' not in sys.platform:
  33. from .test_complete_ui import (Ferrum, NEW_DB_PATH)
  34. if os.path.exists(NEW_DB_PATH):
  35. os.remove(NEW_DB_PATH)
  36. # make sure we use local pwman
  37. sys.path.insert(0, os.getcwd())
  38. # check if old DB exists, if so remove it.
  39. # excuted only once when invoked upon import or
  40. # upon run
  41. SetupTester().clean()
  42. def suite():
  43. loader = unittest.TestLoader()
  44. suite = unittest.TestSuite()
  45. suite.addTest(loader.loadTestsFromTestCase(CryptoEngineTest))
  46. suite.addTest(loader.loadTestsFromTestCase(TestPassGenerator))
  47. suite.addTest(loader.loadTestsFromTestCase(TestConfig))
  48. suite.addTest(loader.loadTestsFromTestCase(TestSQLite))
  49. suite.addTest(loader.loadTestsFromTestCase(TestImporter))
  50. suite.addTest(loader.loadTestsFromTestCase(TestFactory))
  51. suite.addTest(loader.loadTestsFromTestCase(TestBaseUI))
  52. suite.addTest(loader.loadTestsFromTestCase(TestInit))
  53. suite.addTest(loader.loadTestsFromTestCase(TestNode))
  54. #if 'win' not in sys.platform:
  55. # suite.addTest(loader.loadTestsFromTestCase(Ferrum))
  56. return suite
  57. if __name__ == '__main__':
  58. #unittest.main(verbosity=1, failfast=True)
  59. unittest.TextTestRunner(verbosity=2, failfast=True).run(suite())