git-next/crates/cli/src/repo/tests/expect.rs

54 lines
1.3 KiB
Rust
Raw Normal View History

use git_next_core::git::fetch;
//
use super::*;
pub fn fetch_ok(open_repository: &mut MockOpenRepositoryLike) {
expect::fetch(open_repository, Ok(()));
}
pub fn fetch(open_repository: &mut MockOpenRepositoryLike, result: Result<(), 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<(), crate::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: BranchName,
) -> 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
}