2024-06-19 07:03:08 +01:00
|
|
|
//
|
|
|
|
use git::repository::OpenRepositoryLike;
|
|
|
|
|
|
|
|
use super::*;
|
|
|
|
|
|
|
|
pub fn start_actor(
|
|
|
|
repository_factory: git::repository::MockRepositoryFactory,
|
|
|
|
repo_details: git::RepoDetails,
|
|
|
|
forge: Box<dyn git::ForgeLike>,
|
|
|
|
) -> (actix::Addr<RepoActor>, RepoActorLog) {
|
|
|
|
let (actor, log) = given::a_repo_actor(
|
|
|
|
repo_details,
|
|
|
|
Box::new(repository_factory),
|
|
|
|
forge,
|
|
|
|
given::a_network().into(),
|
|
|
|
);
|
|
|
|
(actor.start(), log)
|
|
|
|
}
|
|
|
|
|
|
|
|
pub fn start_actor_with_open_repository(
|
2024-06-27 21:10:41 +01:00
|
|
|
open_repository: Box<dyn OpenRepositoryLike>,
|
2024-06-19 07:03:08 +01:00
|
|
|
repo_details: git::RepoDetails,
|
|
|
|
forge: Box<dyn git::ForgeLike>,
|
|
|
|
) -> (actix::Addr<RepoActor>, RepoActorLog) {
|
|
|
|
let (actor, log) = given::a_repo_actor(
|
|
|
|
repo_details,
|
|
|
|
git::repository::mock(),
|
|
|
|
forge,
|
|
|
|
given::a_network().into(),
|
|
|
|
);
|
2024-06-27 21:10:41 +01:00
|
|
|
let actor = actor.with_open_repository(Some(open_repository));
|
2024-06-19 07:03:08 +01:00
|
|
|
(actor.start(), log)
|
|
|
|
}
|
|
|
|
|
|
|
|
pub fn commit_status(
|
|
|
|
forge: &mut git::MockForgeLike,
|
|
|
|
commit: git::Commit,
|
|
|
|
status: git::forge::commit::Status,
|
|
|
|
) {
|
|
|
|
let mut commit_status_forge = git::MockForgeLike::new();
|
|
|
|
commit_status_forge
|
|
|
|
.expect_commit_status()
|
|
|
|
.with(mockall::predicate::eq(commit))
|
|
|
|
.return_once(|_| status);
|
|
|
|
forge
|
|
|
|
.expect_duplicate()
|
|
|
|
.return_once(move || Box::new(commit_status_forge));
|
|
|
|
}
|