forked from kemitix/git-next
52 lines
1.4 KiB
Rust
52 lines
1.4 KiB
Rust
|
//
|
||
|
use super::*;
|
||
|
|
||
|
use git::repository::MockRepositoryFactory;
|
||
|
use git_next_git::repository::open::MockOpenRepositoryLike;
|
||
|
|
||
|
pub fn fetch_ok(open_repository: &mut MockOpenRepositoryLike) {
|
||
|
expect::fetch(open_repository, Ok(()));
|
||
|
}
|
||
|
|
||
|
pub fn fetch(open_repository: &mut MockOpenRepositoryLike, result: Result<(), git::fetch::Error>) {
|
||
|
open_repository
|
||
|
.expect_fetch()
|
||
|
.times(1)
|
||
|
.return_once(|| result);
|
||
|
}
|
||
|
|
||
|
pub fn push_ok(open_repository: &mut MockOpenRepositoryLike) {
|
||
|
expect::push(open_repository, Ok(()))
|
||
|
}
|
||
|
|
||
|
pub fn push(open_repository: &mut MockOpenRepositoryLike, result: Result<(), git::push::Error>) {
|
||
|
open_repository
|
||
|
.expect_push()
|
||
|
.times(1)
|
||
|
.return_once(move |_, _, _, _| result);
|
||
|
}
|
||
|
|
||
|
pub fn open_repository(
|
||
|
repository_factory: &mut MockRepositoryFactory,
|
||
|
open_repository: MockOpenRepositoryLike,
|
||
|
) {
|
||
|
repository_factory
|
||
|
.expect_open()
|
||
|
.times(1)
|
||
|
.return_once(move |_| Ok(Box::new(open_repository)));
|
||
|
}
|
||
|
|
||
|
pub fn main_commit_log(
|
||
|
validation_repo: &mut MockOpenRepositoryLike,
|
||
|
main_branch: config::BranchName,
|
||
|
) -> git::Commit {
|
||
|
let main_commit = given::a_commit();
|
||
|
let main_branch_log = vec![main_commit.clone()];
|
||
|
validation_repo
|
||
|
.expect_commit_log()
|
||
|
.times(1)
|
||
|
.with(eq(main_branch), eq([]))
|
||
|
.return_once(move |_, _| Ok(main_branch_log));
|
||
|
main_commit
|
||
|
}
|