コード例 #1
0
ファイル: test_project.py プロジェクト: pvk-developer/ballet
    def test_project_pr_num(self, mock_get_pr_num, mock_repo):
        expected = 3
        mock_get_pr_num.return_value = expected

        package = None
        project = Project(package)
        self.assertEqual(project.pr_num, expected)
コード例 #2
0
def _get_project(package_slug, project_path):
    if package_slug is not None:
        package = import_module_from_modname(package_slug)
        return Project(package)
    elif project_path is not None:
        return Project.from_path(project_path)
    else:
        return Project.from_cwd()
コード例 #3
0
def test_detect_github_username_config(mock_project_repo):
    expected_username = '******'

    # output of project.repo.config_reader().get_value(...)
    mock_get_value = (
        mock_project_repo.return_value.config_reader.return_value.get_value)
    mock_get_value.return_value = expected_username

    project = Project(None)
    username = detect_github_username(project)
    assert expected_username == username

    mock_get_value.assert_called_with('github', 'user', default=ANY)
コード例 #4
0
ファイル: client.py プロジェクト: ballet/ballet
 def project(self) -> Project:
     """Access ballet-specific project info"""
     if self._prj is None:
         return Project.from_cwd()
     else:
         if isinstance(self._prj, Project):
             return self._prj
         elif isinstance(self._prj, ModuleType):
             return Project(self._prj)
         elif isinstance(self._prj, (str, PathLike)):
             return Project.from_path(self._prj)
         else:
             raise ValueError('not supported')
コード例 #5
0
ファイル: contrib.py プロジェクト: pvk-developer/ballet
def collect_contrib_features(project_root):
    """Collect contributed features for a project at project_root

    For a project ``foo``, walks modules within the ``foo.features.contrib``
    subpackage. A single object that is an instance of ``ballet.Feature`` is
    imported if present in each module. The resulting ``Feature`` objects are
    collected.

    Args:
        project_root (str, path-like): Path to project root

    Returns:
        List[ballet.Feature]: list of Feature objects
    """
    # TODO Project should require ModuleType
    project = Project(project_root)
    contrib = project._resolve('.features.contrib')
    return _collect_contrib_features(contrib)
コード例 #6
0
def validate_feature_acceptance(feature, X, y, subsample=False, path=None,
                                package=None):
    if package is not None:
        project = Project(package)
    elif path is not None:
        project = Project.from_path(path)
    else:
        project = Project.from_cwd()

    if subsample:
        X, y = subsample_data_for_validation(X, y)

    # build project
    result = project.build(X, y)

    # load accepter for this project
    Accepter = _load_class(project, 'validation.feature_accepter')
    accepter = Accepter(result.X_df, result.y, result.features, feature)
    return accepter.judge()
コード例 #7
0
def test_project_version(mock_repo, commit_object):
    mock_repo.return_value.head.commit = commit_object
    project = Project(None)
    version = project.version
    assert isinstance(version, str)