MCPcopy Create free account
hub / github.com/dtormoen/tsk-tsk / test_task_builder_validation_errors

Function test_task_builder_validation_errors

src/task_builder.rs:863–896  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

861
862 #[tokio::test]
863 async fn test_task_builder_validation_errors() {
864 let ctx = AppContext::builder().build();
865 let non_git_dir = ctx.tsk_env().data_dir().to_path_buf();
866
867 // Test missing repository root
868 let result = TaskBuilder::new()
869 .name("test".to_string())
870 .build(&ctx)
871 .await;
872 assert!(result.is_err());
873 assert!(result.unwrap_err().to_string().contains("Repository root"));
874
875 // Test missing task name
876 let result = TaskBuilder::new()
877 .repo_root(non_git_dir.clone())
878 .build(&ctx)
879 .await;
880 assert!(result.is_err());
881 assert!(result.unwrap_err().to_string().contains("Task name"));
882
883 // Test missing prompt for generic task
884 let result = TaskBuilder::new()
885 .repo_root(non_git_dir)
886 .name("test".to_string())
887 .build(&ctx)
888 .await;
889 assert!(result.is_err());
890 assert!(
891 result
892 .unwrap_err()
893 .to_string()
894 .contains("Either prompt or prompt file")
895 );
896 }
897
898 #[tokio::test]
899 async fn test_task_builder_with_prompt_file() {

Callers

nothing calls this directly

Calls 5

data_dirMethod · 0.80
tsk_envMethod · 0.80
repo_rootMethod · 0.80
buildMethod · 0.45
nameMethod · 0.45

Tested by

no test coverage detected