()
| 218 | |
| 219 | #[test] |
| 220 | fn test_provenance_builder() { |
| 221 | let prov = Provenance::builder() |
| 222 | .vendor(AIVendor::OpenAI) |
| 223 | .model("gpt-4o") |
| 224 | .tool(AITool::Api) |
| 225 | .suggestion_type(SuggestionType::Complete) |
| 226 | .tokens(2000, 1000) |
| 227 | .cost_usd(0.05) |
| 228 | .temperature(0.7) |
| 229 | .build(); |
| 230 | |
| 231 | assert_eq!(prov.vendor, AIVendor::OpenAI); |
| 232 | assert_eq!(prov.model, "gpt-4o"); |
| 233 | assert_eq!(prov.suggestion_type, SuggestionType::Complete); |
| 234 | assert_eq!(prov.tokens.total_tokens, 3000); |
| 235 | assert!(prov.has_cost()); |
| 236 | assert!(prov.has_tokens()); |
| 237 | assert_eq!(prov.temperature, Some(700)); // 0.7 * 1000 |
| 238 | } |
| 239 | |
| 240 | #[test] |
| 241 | fn test_provenance_with_prompt() { |
nothing calls this directly
no test coverage detected