Răsfoiți Sursa

Fix wrong imports in macos and windows

Add some testing
oz123 10 ani în urmă
părinte
comite
2b47c2a879
4 a modificat fișierele cu 20 adăugiri și 6 ștergeri
  1. 12 0
      pwman/tests/db_tests.py
  2. 0 1
      pwman/ui/__init__.py
  3. 3 2
      pwman/ui/mac.py
  4. 5 3
      pwman/ui/win.py

+ 12 - 0
pwman/tests/db_tests.py

@@ -30,6 +30,8 @@ from pwman.ui.base import get_pass_conf
 from pwman.ui.tools import CMDLoop, CliMenuItem
 from pwman import parser_options, get_conf_options
 from pwman.data.database import __DB_FORMAT__
+from pwman.ui.mac import PwmanCliMacNew
+from pwman.ui.win import PwmanCliWinNew
 
 import unittest
 import StringIO
@@ -183,6 +185,16 @@ class TestDBFalseConfig(unittest.TestCase):
         self.assertRaises(DatabaseException, factory.create,
                           'SQLite', __DB_FORMAT__)
 
+    def test_get_ui_platform(self):
+        uiclass, osx = get_ui_platform('windows')
+        self.assertFalse(osx)
+        self.assertEqual(uiclass.__name__, PwmanCliWinNew.__name__)
+        uiclass, osx = get_ui_platform('darwin')
+        self.assertTrue(osx)
+        self.assertEqual(uiclass.__name__, PwmanCliMacNew.__name__)
+        del(uiclass)
+        del(osx)
+
     def tearDown(self):
         config.set_value('Database', 'filename', self.fname)
         default_config['Database']['filename'] = self.fname1

+ 0 - 1
pwman/ui/__init__.py

@@ -17,7 +17,6 @@
 # Copyright (C) 2012 Oz Nahum <nahumoz@gmail.com>
 #============================================================================
 
-
 def get_ui_platform(platform):
     if 'darwin' in platform:
         from mac import PwmanCliMacNew as PwmanCliNew

+ 3 - 2
pwman/ui/mac.py

@@ -21,14 +21,15 @@
 # pylint: disable=I0011
 
 "all mac os  related classes"
-from pwman.ui.cli import PwmanCli
+
+from pwman.ui.cli import PwmanCliNew
 from pwman.ui import tools
 import time
 
 # pylint: disable=R0904
 
 
-class PwmanCliMac(PwmanCli):
+class PwmanCliMac(PwmanCliNew):
     """
     inherit from PwmanCli, override the right functions...
     """

+ 5 - 3
pwman/ui/win.py

@@ -20,18 +20,20 @@
 # Copyright (C) 2006 Ivan Kelly <ivan@ivankelly.net>
 #============================================================================
 """
-
-
 from pwman.ui.cli import PwmanCliNew
 from pwman.data.nodes import NewNode
 from pwman.ui import tools
 import time
-import msvcrt
+
 import pwman.util.config as config
 import ast
 from pwman.util.crypto import zerome
 from colorama import Fore
 
+try:
+    import msvcrt
+except ImportError:
+    pass
 
 class PwmanCliWinNew(PwmanCliNew):
     """