Esempio n. 1
0
def insert(db_logic, sha, timestamp, value, has_data=True):
    metric_mapping = db_logic.get_metric_mapping()
    db_logic.insert_metric_values(
        {metric_mapping['PythonImportCount']: value},
        {metric_mapping['PythonImportCount']: has_data},
        Commit(sha, timestamp),
    )
Esempio n. 2
0
def insert_metric_changes(db_logic, sha, change):
    metric_mapping = db_logic.get_metric_mapping()
    db_logic.insert_metric_changes(
        [Metric('PythonImportCount', change)],
        metric_mapping,
        Commit(sha, None),
    )
Esempio n. 3
0
def insert_fake_metrics(db):
    metric_mapping = get_metric_mapping(db)
    has_data = dict.fromkeys(metric_mapping.values(), True)
    for v, sha_part in enumerate('abc', 1):
        metric_values = dict.fromkeys(metric_mapping.values(), v)
        commit = Commit(sha_part * 40, 1)
        insert_metric_values(db, metric_values, has_data, commit)
Esempio n. 4
0
def insert_metric_changes(db, sha, change):
    metric_mapping = get_metric_mapping(db)
    write_logic.insert_metric_changes(
        db,
        [Metric('PythonImportCount', change)],
        metric_mapping,
        Commit(sha, None),
    )
Esempio n. 5
0
 def append_commit():
     output = cmd_output(
         'hg',
         'log',
         '--template={node}\n{word(0, date, \".\")}\n',
         '--rev',
         '.',
     )
     sha, date = output.splitlines()[:2]
     commits.append(Commit(sha, int(date)))
Esempio n. 6
0
def insert(db, sha, timestamp, value):
    metric_mapping = get_metric_mapping(db)
    write_logic.insert_metric_values(
        db,
        {
            'PythonImportCount': value,
            'TODOCount': value
        },
        metric_mapping,
        Commit(sha, timestamp),
    )
Esempio n. 7
0
    def get_commit(self, sha: str) -> Commit:
        output = cmd_output(
            'git',
            'show',
            COMMIT_FORMAT,
            sha,
            cwd=self.tempdir,
        )
        sha, date = output.splitlines()[:2]

        return Commit(sha, int(date))
Esempio n. 8
0
    def get_commits(self, since_sha: Optional[str] = None) -> List[Commit]:
        """Returns a list of Commit objects.

        Args:
           since_sha - (optional) A sha to search from
        """
        assert self.tempdir

        cmd = ['git', 'log', '--first-parent', '--reverse', COMMIT_FORMAT]
        if since_sha:
            commits = [self.get_commit(since_sha)]
            cmd.append(f'{since_sha}..HEAD')
        else:
            commits = []
            cmd.append('HEAD')

        output = cmd_output(*cmd, cwd=self.tempdir)

        for sha, date in chunk_iter(output.splitlines(), 2):
            commits.append(Commit(sha, int(date)))

        return commits
 def append_commit():
     output = cmd_output('git', 'show', COMMIT_FORMAT)
     sha, date = output.splitlines()[:2]
     commits.append(Commit(sha, int(date)))
Esempio n. 10
0
def insert_fake_metrics(db):
    metric_mapping = get_metric_mapping(db)
    metric_values = get_fake_metrics(metric_mapping)
    for sha_part in ('a', 'b', 'c'):
        commit = Commit(sha_part * 40, 1)
        insert_metric_values(db, metric_values, metric_mapping, commit)