@@ -46,7 +46,7 @@ public void Cleanup()
4646 public async Task ToolSelection_CompareQueries_SelectCompareToolCorrectly ( )
4747 {
4848 var compareScenarios = TestDataManager . GetTestScenarios ( )
49- . Where ( s => s . TestCategories . Contains ( " Compare" ) ) ;
49+ . Where ( s => s . TestCategories . Contains ( TestConstants . Categories . Compare ) ) ;
5050
5151 foreach ( var scenario in compareScenarios )
5252 {
@@ -57,10 +57,10 @@ public async Task ToolSelection_CompareQueries_SelectCompareToolCorrectly()
5757
5858 Console . WriteLine ( $ "Selected tool: { selectedTool ?? "None" } ") ;
5959
60- if ( scenario . ExpectedTools . Contains ( " Compare" ) )
60+ if ( scenario . ExpectedTools . Contains ( TestConstants . Tools . Compare ) )
6161 {
6262 // For compare scenarios, the tool selector should select the "compare" tool
63- Assert . AreEqual ( "compare" , selectedTool ? . ToLowerInvariant ( ) ,
63+ Assert . AreEqual ( ToolSelector . ToolConstants . CompareTool , selectedTool ? . ToLowerInvariant ( ) ,
6464 $ "Expected 'compare' tool to be selected for compare query: '{ scenario . Query } '") ;
6565 Console . WriteLine ( $ "✓ Compare tool correctly selected for: { scenario . Query } ") ;
6666 }
@@ -80,7 +80,7 @@ public async Task ToolSelection_CompareQueries_SelectCompareToolCorrectly()
8080 public async Task ToolSelection_DetailQueries_SelectDetailsToolCorrectly ( )
8181 {
8282 var detailScenarios = TestDataManager . GetTestScenarios ( )
83- . Where ( s => s . TestCategories . Contains ( " Details" ) ) ;
83+ . Where ( s => s . TestCategories . Contains ( TestConstants . Categories . Details ) ) ;
8484
8585 foreach ( var scenario in detailScenarios )
8686 {
@@ -91,7 +91,7 @@ public async Task ToolSelection_DetailQueries_SelectDetailsToolCorrectly()
9191
9292 Console . WriteLine ( $ "Selected tool: { selectedTool ?? "None" } ") ;
9393
94- if ( scenario . ExpectedTools . Contains ( " Details" ) )
94+ if ( scenario . ExpectedTools . Contains ( TestConstants . Tools . Details ) )
9595 {
9696 // Check if the query actually contains details keywords that the tool selector recognizes
9797 var queryLower = scenario . Query . ToLowerInvariant ( ) ;
@@ -100,14 +100,14 @@ public async Task ToolSelection_DetailQueries_SelectDetailsToolCorrectly()
100100
101101 if ( shouldSelectDetails )
102102 {
103- Assert . AreEqual ( "details" , selectedTool ? . ToLowerInvariant ( ) ,
103+ Assert . AreEqual ( ToolSelector . ToolConstants . DetailsTool , selectedTool ? . ToLowerInvariant ( ) ,
104104 $ "Expected 'details' tool to be selected for details query: '{ scenario . Query } '") ;
105105 Console . WriteLine ( $ "✓ Details tool correctly selected for: { scenario . Query } ") ;
106106 }
107107 else
108108 {
109109 // Query doesn't contain details keywords, so it defaults to search
110- Assert . AreEqual ( "search" , selectedTool ? . ToLowerInvariant ( ) ,
110+ Assert . AreEqual ( ToolSelector . ToolConstants . SearchTool , selectedTool ? . ToLowerInvariant ( ) ,
111111 $ "Expected 'search' tool (default) for query without details keywords: '{ scenario . Query } '") ;
112112 Console . WriteLine ( $ "✓ Search tool (default) correctly selected for: { scenario . Query } ") ;
113113 }
@@ -128,7 +128,7 @@ public async Task ToolSelection_DetailQueries_SelectDetailsToolCorrectly()
128128 public async Task ToolSelection_EnsembleQueries_SelectToolsCorrectly ( )
129129 {
130130 var ensembleScenarios = TestDataManager . GetTestScenarios ( )
131- . Where ( s => s . TestCategories . Contains ( " Ensemble" ) ) ;
131+ . Where ( s => s . TestCategories . Contains ( TestConstants . Categories . Ensemble ) ) ;
132132
133133 foreach ( var scenario in ensembleScenarios )
134134 {
@@ -140,7 +140,7 @@ public async Task ToolSelection_EnsembleQueries_SelectToolsCorrectly()
140140 Console . WriteLine ( $ "Selected tool: { selectedTool ?? "None" } ") ;
141141
142142 // Ensemble queries should be handled appropriately
143- if ( scenario . ExpectedTools . Contains ( " Ensemble" ) )
143+ if ( scenario . ExpectedTools . Contains ( TestConstants . Tools . Ensemble ) )
144144 {
145145 // Check if the query actually contains ensemble keywords that the tool selector recognizes
146146 var queryLower = scenario . Query . ToLowerInvariant ( ) ;
@@ -149,14 +149,14 @@ public async Task ToolSelection_EnsembleQueries_SelectToolsCorrectly()
149149
150150 if ( shouldSelectEnsemble )
151151 {
152- Assert . AreEqual ( "ensemble" , selectedTool ? . ToLowerInvariant ( ) ,
152+ Assert . AreEqual ( ToolSelector . ToolConstants . EnsembleTool , selectedTool ? . ToLowerInvariant ( ) ,
153153 $ "Expected 'ensemble' tool to be selected for ensemble query: '{ scenario . Query } '") ;
154154 Console . WriteLine ( $ "✓ Ensemble tool correctly selected for: { scenario . Query } ") ;
155155 }
156156 else
157157 {
158158 // Query doesn't contain ensemble keywords, so it defaults to search
159- Assert . AreEqual ( "search" , selectedTool ? . ToLowerInvariant ( ) ,
159+ Assert . AreEqual ( ToolSelector . ToolConstants . SearchTool , selectedTool ? . ToLowerInvariant ( ) ,
160160 $ "Expected 'search' tool (default) for query without ensemble keywords: '{ scenario . Query } '") ;
161161 Console . WriteLine ( $ "✓ Search tool (default) correctly selected for: { scenario . Query } ") ;
162162 }
@@ -177,7 +177,7 @@ public async Task ToolSelection_EnsembleQueries_SelectToolsCorrectly()
177177 public async Task ToolSelection_BasicSearchQueries_HandleAppropriately ( )
178178 {
179179 var basicSearchScenarios = TestDataManager . GetTestScenarios ( )
180- . Where ( s => s . TestCategories . Contains ( " BasicSearch" ) ) ;
180+ . Where ( s => s . TestCategories . Contains ( TestConstants . Categories . BasicSearch ) ) ;
181181
182182 foreach ( var scenario in basicSearchScenarios )
183183 {
@@ -190,10 +190,10 @@ public async Task ToolSelection_BasicSearchQueries_HandleAppropriately()
190190
191191 // Basic search may or may not require specific tool selection
192192 // The important thing is that the selector doesn't crash and returns a valid response
193- if ( scenario . ExpectedTools . Contains ( " Search" ) )
193+ if ( scenario . ExpectedTools . Contains ( TestConstants . Tools . Search ) )
194194 {
195195 // For basic search scenarios, the tool selector should select the "search" tool or null
196- Assert . IsTrue ( selectedTool ? . ToLowerInvariant ( ) == "search" || selectedTool == null ,
196+ Assert . IsTrue ( selectedTool ? . ToLowerInvariant ( ) == ToolSelector . ToolConstants . SearchTool || selectedTool == null ,
197197 $ "Expected 'search' tool or null to be selected for basic search query: '{ scenario . Query } ', but got: { selectedTool } ") ;
198198 Console . WriteLine ( $ "✓ Basic search tool selection validated: { selectedTool ?? "null" } for '{ scenario . Query } '") ;
199199 }
@@ -212,7 +212,7 @@ public async Task ToolSelection_BasicSearchQueries_HandleAppropriately()
212212 public async Task ToolSelection_EdgeCases_HandleGracefully ( )
213213 {
214214 var edgeCaseScenarios = TestDataManager . GetTestScenarios ( )
215- . Where ( s => s . TestCategories . Contains ( " EdgeCase" ) ) ;
215+ . Where ( s => s . TestCategories . Contains ( TestConstants . Categories . EdgeCase ) ) ;
216216
217217 foreach ( var scenario in edgeCaseScenarios )
218218 {
0 commit comments