示例#1
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_install_specific_sources(self, mock_install):
        """Verify individual dependencies can be installed."""
        mock_install.__name__ = "mock"

        cli.main(["install", "foo", "bar"])

        mock_install.assert_called_once_with("foo", "bar", root=None, depth=None, force=False, clean=False)
示例#2
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_install_with_depth(self, mock_update):
        """Verify the 'install' command can be limited by depth."""
        mock_update.__name__ = "mock"

        cli.main(["install", "--depth", "5"])

        mock_update.assert_called_once_with(root=None, depth=5, force=False, clean=False)
示例#3
0
    def test_list_no_dirty(self, mock_display):
        """Verify the 'list' command can be set to fail when dirty."""
        cli.main(['list', '--no-dirty'])

        mock_display.assert_called_once_with(root=None,
                                             depth=None,
                                             allow_dirty=False)
示例#4
0
    def test_list_root(self, mock_display):
        """Verify the project's root can be specified."""
        cli.main(['list', '--root', 'mock/path/to/root'])

        mock_display.assert_called_once_with(root='mock/path/to/root',
                                             depth=None,
                                             allow_dirty=True)
示例#5
0
    def test_main(self):
        """Verify the top-level command can be run."""
        mock_function = Mock(return_value=True)

        cli.main([], mock_function)

        mock_function.assert_called_once_with(root=None)
示例#6
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_update(self, mock_update):
        """Verify the 'update' command can be run."""
        mock_update.__name__ = "mock"

        cli.main(["update"])

        mock_update.assert_called_once_with(root=None, depth=None, force=False, clean=False, recurse=False, lock=True)
示例#7
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_list_no_dirty(self, mock_display):
        """Verify the 'list' command can be set to fail when dirty."""
        mock_display.__name__ = "mock"

        cli.main(["list", "--no-dirty"])

        mock_display.assert_called_once_with(root=None, depth=None, allow_dirty=False)
示例#8
0
    def test_update_lock(self, mock_update):
        """Verify the 'update' command can enable locking."""
        cli.main(['update', '--lock'])

        mock_update.assert_called_once_with(
            root=None, depth=None,
            force=False, clean=False, recurse=False, lock=True)
示例#9
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_list(self, mock_display):
        """Verify the 'list' command can be run."""
        mock_display.__name__ = "mock"

        cli.main(["list"])

        mock_display.assert_called_once_with(root=None, depth=None, allow_dirty=True)
示例#10
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_list_root(self, mock_display):
        """Verify the project's root can be specified."""
        mock_display.__name__ = "mock"

        cli.main(["list", "--root", "mock/path/to/root"])

        mock_display.assert_called_once_with(root="mock/path/to/root", depth=None, allow_dirty=True)
示例#11
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_uninstall_force(self, mock_uninstall):
        """Verify the 'uninstall' command can be forced."""
        mock_uninstall.__name__ = "mock"

        cli.main(["uninstall", "--force"])

        mock_uninstall.assert_called_once_with(root=None, force=True)
示例#12
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_update_with_depth(self, mock_update):
        """Verify the 'update' command can be limited by depth."""
        mock_update.__name__ = "mock"

        cli.main(["update", "--depth", "5"])

        mock_update.assert_called_once_with(root=None, depth=5, force=False, clean=False, recurse=False, lock=True)
示例#13
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_update_no_lock(self, mock_update):
        """Verify the 'update' command can be run without locking."""
        mock_update.__name__ = "mock"

        cli.main(["update", "--no-lock"])

        mock_update.assert_called_once_with(root=None, depth=None, force=False, clean=False, recurse=False, lock=False)
示例#14
0
    def test_install_root(self, mock_install):
        """Verify the project's root can be specified."""
        cli.main(['install', '--root', 'mock/path/to/root'])

        mock_install.assert_called_once_with(
            root='mock/path/to/root', depth=None,
            force=False, fetch=False, clean=False)
示例#15
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_update_with_depth(self, mock_update):
        """Verify the 'list' command can be limited by depth."""
        mock_update.__name__ = "mock"

        cli.main(["list", "--depth", "5"])

        mock_update.assert_called_once_with(root=None, depth=5, allow_dirty=True)
示例#16
0
    def test_update_with_depth(self, mock_update):
        """Verify the 'update' command can be limited by depth."""
        cli.main(['update', '--depth', '5'])

        mock_update.assert_called_once_with(
            root=None, depth=5,
            force=False, clean=False, recurse=False, lock=None)
示例#17
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_install(self, mock_install):
        """Verify the 'install' command can be run."""
        mock_install.__name__ = "mock"

        cli.main(["install"])

        mock_install.assert_called_once_with(root=None, depth=None, force=False, clean=False)
示例#18
0
    def test_main(self):
        """Verify the top-level command can be run."""
        mock_function = Mock(return_value=True)

        cli.main([], mock_function)

        mock_function.assert_called_once_with(root=None)
示例#19
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_install_root(self, mock_install):
        """Verify the project's root can be specified."""
        mock_install.__name__ = "mock"

        cli.main(["install", "--root", "mock/path/to/root"])

        mock_install.assert_called_once_with(root="mock/path/to/root", depth=None, force=False, clean=False)
示例#20
0
    def test_update_recursive(self, mock_update):
        """Verify the 'update' command can be run recursively."""
        cli.main(['update', '--all'])

        mock_update.assert_called_once_with(
            root=None, depth=None,
            force=False, clean=False, recurse=True, lock=None)
示例#21
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_install_force(self, mock_install):
        """Verify dependencies can be force-installed."""
        mock_install.__name__ = "mock"

        cli.main(["install", "--force"])

        mock_install.assert_called_once_with(root=None, depth=None, force=True, clean=False)
示例#22
0
    def test_update_with_depth(self, mock_update):
        """Verify the 'list' command can be limited by depth."""
        cli.main(['list', '--depth', '5'])

        mock_update.assert_called_once_with(root=None,
                                            depth=5,
                                            allow_dirty=True)
示例#23
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_install_clean(self, mock_install):
        """Verify dependency cleaning can be enabled."""
        mock_install.__name__ = "mock"

        cli.main(["install", "--clean"])

        mock_install.assert_called_once_with(root=None, depth=None, force=False, clean=True)
示例#24
0
    def test_list(self, mock_display):
        """Verify the 'list' command can be run."""
        cli.main(['list'])

        mock_display.assert_called_once_with(root=None,
                                             depth=None,
                                             allow_dirty=True)
示例#25
0
    def test_install_specific_sources(self, mock_install):
        """Verify individual dependencies can be installed."""
        cli.main(['install', 'foo', 'bar'])

        mock_install.assert_called_once_with(
            'foo', 'bar', root=None, depth=None,
            force=False, fetch=False, clean=False)
示例#26
0
文件: test_cli.py 项目: hdnivara/gdm
    def test_install_with_depth_invalid(self, mock_update):
        """Verify depths below 1 are rejected."""
        mock_update.__name__ = "mock"

        with pytest.raises(SystemExit):
            cli.main(["install", "--depth", "0"])
        with pytest.raises(SystemExit):
            cli.main(["install", "--depth", "-1"])
示例#27
0
文件: test_cli.py 项目: enzochiau/gdm
 def test_update_no_lock(self, mock_update):
     """Verify the 'update' command can be run without locking."""
     cli.main(['update', '--no-lock'])
     mock_update.assert_called_once_with(root=None,
                                         force=False,
                                         clean=False,
                                         recurse=False,
                                         lock=False)
示例#28
0
    def test_install_fetch(self, mock_install):
        """Verify fetching can be enabled."""
        cli.main(['install', '--fetch'])

        mock_install.assert_called_once_with(root=None,
                                             depth=None,
                                             force=False,
                                             fetch=True,
                                             clean=False)
示例#29
0
    def test_install_clean(self, mock_install):
        """Verify dependency cleaning can be enabled."""
        cli.main(['install', '--clean'])

        mock_install.assert_called_once_with(root=None,
                                             depth=None,
                                             force=False,
                                             fetch=False,
                                             clean=True)
示例#30
0
    def test_install_force(self, mock_install):
        """Verify dependencies can be force-installed."""
        cli.main(['install', '--force'])

        mock_install.assert_called_once_with(root=None,
                                             depth=None,
                                             force=True,
                                             fetch=False,
                                             clean=False)
示例#31
0
    def test_install_root(self, mock_install):
        """Verify the project's root can be specified."""
        cli.main(['install', '--root', 'mock/path/to/root'])

        mock_install.assert_called_once_with(root='mock/path/to/root',
                                             depth=None,
                                             force=False,
                                             fetch=False,
                                             clean=False)
示例#32
0
    def test_install_with_depth(self, mock_update):
        """Verify the 'install' command can be limited by depth."""
        cli.main(['install', '--depth', '5'])

        mock_update.assert_called_once_with(root=None,
                                            depth=5,
                                            force=False,
                                            fetch=False,
                                            clean=False)
示例#33
0
    def test_install(self, mock_install):
        """Verify the 'install' command can be run."""
        cli.main(['install'])

        mock_install.assert_called_once_with(root=None,
                                             depth=None,
                                             force=False,
                                             fetch=False,
                                             clean=False)
示例#34
0
    def test_update_lock(self, mock_update):
        """Verify the 'update' command can enable locking."""
        cli.main(['update', '--lock'])

        mock_update.assert_called_once_with(root=None,
                                            depth=None,
                                            force=False,
                                            clean=False,
                                            recurse=False,
                                            lock=True)
示例#35
0
    def test_update_recursive(self, mock_update):
        """Verify the 'update' command can be run recursively."""
        cli.main(['update', '--all'])

        mock_update.assert_called_once_with(root=None,
                                            depth=None,
                                            force=False,
                                            clean=False,
                                            recurse=True,
                                            lock=None)
示例#36
0
    def test_update_with_depth(self, mock_update):
        """Verify the 'update' command can be limited by depth."""
        cli.main(['update', '--depth', '5'])

        mock_update.assert_called_once_with(root=None,
                                            depth=5,
                                            force=False,
                                            clean=False,
                                            recurse=False,
                                            lock=None)
示例#37
0
    def test_install_specific_sources(self, mock_install):
        """Verify individual dependencies can be installed."""
        cli.main(['install', 'foo', 'bar'])

        mock_install.assert_called_once_with('foo',
                                             'bar',
                                             root=None,
                                             depth=None,
                                             force=False,
                                             fetch=False,
                                             clean=False)
示例#38
0
 def test_main_none(self):
     """Verify it's an error to specify no command."""
     with pytest.raises(SystemExit):
         cli.main([])
示例#39
0
 def test_main_interrupt(self):
     """Verify a command can be interrupted."""
     with pytest.raises(SystemExit):
         cli.main([], Mock(side_effect=KeyboardInterrupt))
示例#40
0
 def test_main_help(self):
     """Verify the help text can be displayed."""
     with pytest.raises(SystemExit):
         cli.main(['--help'])
示例#41
0
 def test_level(self, arg, verbosity):
     """Verify verbose level can be set."""
     cli.main([arg] if arg else [], self.mock_function)
     assert verbosity == _Config.verbosity
示例#42
0
 def test_install_with_depth_invalid(self):
     """Verify depths below 1 are rejected."""
     with pytest.raises(SystemExit):
         cli.main(['install', '--depth', '0'])
     with pytest.raises(SystemExit):
         cli.main(['install', '--depth', '-1'])
示例#43
0
    def test_uninstall(self, mock_uninstall):
        """Verify the 'uninstall' command can be run."""
        cli.main(['uninstall'])

        mock_uninstall.assert_called_once_with(root=None, force=False)
示例#44
0
    def test_uninstall_force(self, mock_uninstall):
        """Verify the 'uninstall' command can be forced."""
        cli.main(['uninstall', '--force'])

        mock_uninstall.assert_called_once_with(root=None, force=True)
示例#45
0
 def test_main_interrupt(self):
     """Verify a command can be interrupted."""
     with pytest.raises(SystemExit):
         cli.main([], Mock(side_effect=KeyboardInterrupt))
示例#46
0
 def with_dependencies(lock):
     cli.main(['lock', 'foo', 'bar'])
     lock.assert_called_once_with('foo', 'bar', root=None)
示例#47
0
 def test_main_help(self):
     """Verify the help text can be displayed."""
     with pytest.raises(SystemExit):
         cli.main(['--help'])
示例#48
0
    def test_install_force(self, mock_install):
        """Verify dependencies can be force-installed."""
        cli.main(['install', '--force'])

        mock_install.assert_called_once_with(
            root=None, depth=None, force=True, fetch=False, clean=False)
示例#49
0
 def test_main_none(self):
     """Verify it's an error to specify no command."""
     with pytest.raises(SystemExit):
         cli.main([])
示例#50
0
 def test_level(self, arg, verbosity):
     """Verify verbose level can be set."""
     cli.main([arg] if arg else [], self.mock_function)
     assert verbosity == _Config.verbosity
示例#51
0
 def test_main_error(self):
     """Verify runtime errors are handled."""
     with pytest.raises(SystemExit):
         cli.main([], Mock(side_effect=RuntimeError))
示例#52
0
    def test_uninstall_root(self, mock_uninstall):
        """Verify the project's root can be specified."""
        cli.main(['uninstall', '--root', 'mock/path/to/root'])

        mock_uninstall.assert_called_once_with(root='mock/path/to/root',
                                               force=False)
示例#53
0
    def test_install_clean(self, mock_install):
        """Verify dependency cleaning can be enabled."""
        cli.main(['install', '--clean'])

        mock_install.assert_called_once_with(
            root=None, depth=None, force=False, fetch=False, clean=True)
示例#54
0
 def test_main_error(self):
     """Verify runtime errors are handled."""
     with pytest.raises(SystemExit):
         cli.main([], Mock(side_effect=RuntimeError))
示例#55
0
    def test_install_fetch(self, mock_install):
        """Verify fetching can be enabled."""
        cli.main(['install', '--fetch'])

        mock_install.assert_called_once_with(
            root=None, depth=None, force=False, fetch=True, clean=False)
示例#56
0
 def test_update_lock_conflict(self):
     """Verify the 'update' command cannot specify both locking options."""
     with pytest.raises(SystemExit):
         cli.main(['update', '--lock', '--no-lock'])
示例#57
0
 def with_no_arguments(lock):
     cli.main(['lock'])
     lock.assert_called_once_with(root=None)
示例#58
0
 def test_main_fail(self):
     """Verify error in commands are detected."""
     with pytest.raises(SystemExit):
         cli.main([], Mock(return_value=False))