예제 #1
0
def test_register_save():
    registry.register('/tmp')
    registry.save_registry()
    with open(util.get_registry_filename(), 'r') as file:
        _registry = load(file, Loader=Loader) or default
        assert 'projects' in _registry
        _projects = _registry['projects']
        assert isinstance(_projects, dict)
        assert '/tmp' in _projects
    registry.unregister('/tmp')
예제 #2
0
def test_register_save():
    registry.register('/tmp')
    registry.save_registry()
    with open(util.get_registry_filename(), 'r') as file:
        _registry = load(file, Loader=Loader) or default
        assert 'projects' in _registry
        _projects = _registry['projects']
        assert isinstance(_projects, dict)
        assert '/tmp' in _projects
    registry.unregister('/tmp')
예제 #3
0
def test_register_alias_save():
    registry.register('/tmp', 'foobar')
    registry.save_registry()
    with open(util.get_registry_filename(), 'r') as file:
        _registry = load(file, Loader=Loader) or default
        assert 'projects' in _registry
        _projects = _registry['projects']
        assert isinstance(_projects, dict)
        assert '/tmp' in _projects
        assert 'alias' in _projects['/tmp']
        assert 'foobar' == _projects['/tmp']['alias']
예제 #4
0
def test_register_alias_save():
    registry.register('/tmp', 'foobar')
    registry.save_registry()
    with open(util.get_registry_filename(), 'r') as file:
        _registry = load(file, Loader=Loader) or default
        assert 'projects' in _registry
        _projects = _registry['projects']
        assert isinstance(_projects, dict)
        assert '/tmp' in _projects
        assert 'alias' in _projects['/tmp']
        assert 'foobar' == _projects['/tmp']['alias']
예제 #5
0
    def execute(self):
        #        pdb.set_trace()
        name = self.options.name
        project = getattr(self.options, 'project', None)
        if project:
            proj_path = registry.pathfor(project)
            if not proj_path:
                print "* Project", project, "not found."
                return
        elif self.root:
            proj_path = self.root
        else:
            print "Must provide -p/--project option, if outside of pin project."
            return
        if name in registry._aliases:
            if proj_path != registry._aliases[name]:
                print "Alias `{alias}' already exists for other project:".format(
                    alias=name)
                print registry._aliases[name]
                return
            else:
                print "Alias `{alias}' already set.".format(alias=name)
                return
        else:
            current_alias = registry._projects[proj_path].get('alias')
            if current_alias:
                prompt = "Alias `{alias}' already set, overwrite?".format(
                    alias=current_alias)
                answer = option_select(['y', 'n'], prompt)
                if answer == 'n':
                    print "Aborted."
                    return

            _projects[proj_path]['alias'] = name
            _aliases[name] = proj_path
            registry.save_registry()
            print "Alias `{alias}' has been set for, {path}".format(
                alias=name, path=proj_path)
            return True
예제 #6
0
파일: core.py 프로젝트: dustinlacewell/pin
    def execute(self):
#        pdb.set_trace()
        name = self.options.name
        project = getattr(self.options, 'project', None)
        if project:
            proj_path = registry.pathfor(project)
            if not proj_path:
                print "* Project", project, "not found."
                return
        elif self.root:
            proj_path = self.root
        else:
            print "Must provide -p/--project option, if outside of pin project."
            return
        if name in registry._aliases:
            if proj_path != registry._aliases[name]:
                print "Alias `{alias}' already exists for other project:".format(alias=name)
                print registry._aliases[name]
                return
            else:
                print "Alias `{alias}' already set.".format(alias=name)
                return
        else:
            current_alias = registry._projects[proj_path].get('alias')
            if current_alias:
                prompt =  "Alias `{alias}' already set, overwrite?".format(alias=current_alias)
                answer = option_select(['y','n'], prompt)
                if answer == 'n':
                    print "Aborted."
                    return
                
            _projects[proj_path]['alias'] = name
            _aliases[name] = proj_path
            registry.save_registry()
            print "Alias `{alias}' has been set for, {path}".format(alias=name,
                                                                    path=proj_path)
            return True