示例#1
0
def execute(
        context: cli.CommandContext,
        project_name: str,
        directory: str,
        title: str = '',
        summary: str = '',
        author: str = '',
        forget: bool = False,
        no_naming_scheme: bool = False,
        library_folder: str = None,
        assets_folder: str = None
):
    """

    :return:
    """

    response = context.response

    response.consume(create_actions.create_project_directories(
        project_name,
        directory,
        assets_folder=assets_folder,
        library_folder=library_folder
    ))
    if response.failed:
        return response

    definition = create_actions.create_definition(
        name=project_name,
        title=title,
        summary=summary,
        author=author,
        no_naming_scheme=no_naming_scheme,
        library_folder=library_folder,
        assets_folder=assets_folder
    )

    source_directory = response.data['source_directory']
    response.consume(create_actions.write_project_data(
        source_directory,
        definition
    ))

    response.consume(create_actions.write_project_data(
        source_directory,
        definition
    ))
    if response.failed:
        return response

    if context.remote_connection.active:
        opened = remote_project_opener.sync_open(context, source_directory)
    else:
        opened = project_opener.open_project(
            source_directory,
            forget=forget
        )

    return response.consume(opened)
示例#2
0
    def test_create_project_directory(self):
        """ should abort if directory already exists """

        path = self.get_temp_path('test-create', 'project-directory-1')
        os.makedirs(path)

        response = create_actions.create_project_directories('some-name', path)
        self.assertTrue(response.success)
示例#3
0
    def test_create_project_directory(self):
        """ should abort if directory already exists """

        path = self.get_temp_path('test-create', 'project-directory-1')
        os.makedirs(path)

        response = create_actions.create_project_directories('some-name', path)
        self.assertTrue(response.success)
示例#4
0
    def test_create_project_directory_fail(self):
        """ should fail if directory cannot be created """

        path = self.get_temp_path('test-create', 'project-directory-2')

        with patch('os.makedirs') as make_dirs:
            make_dirs.side_effect = IOError('Fake Error')
            response = create_actions.create_project_directories(
                'some-name', path)
        self.assertFalse(response.success)
示例#5
0
    def test_create_project_directory_fail(self):
        """ should fail if directory cannot be created """

        path = self.get_temp_path('test-create', 'project-directory-2')

        with patch('os.makedirs') as make_dirs:
            make_dirs.side_effect = IOError('Fake Error')
            response = create_actions.create_project_directories(
                'some-name',
                path
            )
        self.assertFalse(response.success)
示例#6
0
def execute(context: cli.CommandContext,
            project_name: str,
            directory: str,
            title: str = '',
            summary: str = '',
            author: str = '',
            forget: bool = False,
            no_naming_scheme: bool = False,
            library_folder: str = None,
            assets_folder: str = None):
    """

    :return:
    """

    response = context.response

    response.consume(
        create_actions.create_project_directories(
            project_name,
            directory,
            assets_folder=assets_folder,
            library_folder=library_folder))
    if response.failed:
        return response

    definition = create_actions.create_definition(
        name=project_name,
        title=title,
        summary=summary,
        author=author,
        no_naming_scheme=no_naming_scheme,
        library_folder=library_folder,
        assets_folder=assets_folder)

    source_directory = response.data['source_directory']
    response.consume(
        create_actions.write_project_data(source_directory, definition))

    response.consume(
        create_actions.write_project_data(source_directory, definition))
    if response.failed:
        return response

    if context.remote_connection.active:
        opened = remote_project_opener.sync_open(context, source_directory)
    else:
        opened = project_opener.open_project(source_directory, forget=forget)

    return response.consume(opened)