1pub struct NeuronTurnConfig {
8 pub system_prompt: String,
10
11 pub default_model: String,
13
14 pub default_max_tokens: u32,
16
17 pub default_max_turns: u32,
19}
20
21impl Default for NeuronTurnConfig {
22 fn default() -> Self {
23 Self {
24 system_prompt: "You are a helpful assistant.".into(),
25 default_model: String::new(),
26 default_max_tokens: 4096,
27 default_max_turns: 25,
28 }
29 }
30}
31
32#[cfg(test)]
33mod tests {
34 use super::*;
35
36 #[test]
37 fn default_config_values() {
38 let config = NeuronTurnConfig::default();
39 assert_eq!(config.system_prompt, "You are a helpful assistant.");
40 assert!(config.default_model.is_empty());
41 assert_eq!(config.default_max_tokens, 4096);
42 assert_eq!(config.default_max_turns, 25);
43 }
44
45 #[test]
46 fn custom_config_values() {
47 let config = NeuronTurnConfig {
48 system_prompt: "Custom prompt".into(),
49 default_model: "gpt-4o".into(),
50 default_max_tokens: 2048,
51 default_max_turns: 10,
52 };
53 assert_eq!(config.system_prompt, "Custom prompt");
54 assert_eq!(config.default_model, "gpt-4o");
55 assert_eq!(config.default_max_tokens, 2048);
56 assert_eq!(config.default_max_turns, 10);
57 }
58}