feat: add interactive conventional commit workflow with jj-lib backend
Replace CLI executor with jj-lib integration, implement full interactive commit workflow via prompts, and add mock infrastructure for testing. Add CLI integration tests and error handling tests.
This commit is contained in:
19
src/lib.rs
19
src/lib.rs
@@ -3,3 +3,22 @@ mod commit;
|
||||
mod error;
|
||||
mod jj;
|
||||
mod prompts;
|
||||
|
||||
pub use crate::{
|
||||
commit::types::{
|
||||
CommitMessageError, CommitType, ConventionalCommit, Description, DescriptionError, Scope,
|
||||
ScopeError,
|
||||
},
|
||||
error::Error,
|
||||
jj::{JjExecutor, lib_executor::JjLib},
|
||||
prompts::{CommitWorkflow, Prompter},
|
||||
};
|
||||
|
||||
/// Test utilities: mock implementations for `JjExecutor` and `MockPrompts`.
|
||||
///
|
||||
/// Enable with `--features test-utils` (e.g. `cargo test --features test-utils`).
|
||||
#[cfg(feature = "test-utils")]
|
||||
pub use crate::{
|
||||
jj::mock::MockJjExecutor,
|
||||
prompts::mock::MockPrompts,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user