@@ -37,7 +37,7 @@ namespace SettingsModelLocalTests
3737
3838 TEST_METHOD (TestTerminalArgsForBinding);
3939
40- TEST_METHOD (MakeSettingsForProfileThatDoesntExist );
40+ TEST_METHOD (MakeSettingsForProfile );
4141 TEST_METHOD (MakeSettingsForDefaultProfileThatDoesntExist);
4242
4343 TEST_METHOD (TestLayerProfileOnColorScheme);
@@ -126,10 +126,10 @@ namespace SettingsModelLocalTests
126126 VERIFY_IS_TRUE (realArgs.TerminalArgs ().TabTitle ().empty ());
127127 VERIFY_IS_TRUE (realArgs.TerminalArgs ().Profile ().empty ());
128128
129- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
129+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
130130 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
131131 const auto termSettings = settingsStruct.DefaultSettings ();
132- VERIFY_ARE_EQUAL (guid0, guid );
132+ VERIFY_ARE_EQUAL (guid0, profile. Guid () );
133133 VERIFY_ARE_EQUAL (L" cmd.exe" , termSettings.Commandline ());
134134 VERIFY_ARE_EQUAL (1 , termSettings.HistorySize ());
135135 }
@@ -148,10 +148,10 @@ namespace SettingsModelLocalTests
148148 VERIFY_IS_FALSE (realArgs.TerminalArgs ().Profile ().empty ());
149149 VERIFY_ARE_EQUAL (L" {6239a42c-1111-49a3-80bd-e8fdd045185c}" , realArgs.TerminalArgs ().Profile ());
150150
151- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
151+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
152152 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
153153 const auto termSettings = settingsStruct.DefaultSettings ();
154- VERIFY_ARE_EQUAL (guid1, guid );
154+ VERIFY_ARE_EQUAL (guid1, profile. Guid () );
155155 VERIFY_ARE_EQUAL (L" pwsh.exe" , termSettings.Commandline ());
156156 VERIFY_ARE_EQUAL (2 , termSettings.HistorySize ());
157157 }
@@ -170,10 +170,10 @@ namespace SettingsModelLocalTests
170170 VERIFY_IS_FALSE (realArgs.TerminalArgs ().Profile ().empty ());
171171 VERIFY_ARE_EQUAL (L" profile1" , realArgs.TerminalArgs ().Profile ());
172172
173- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
173+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
174174 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
175175 const auto termSettings = settingsStruct.DefaultSettings ();
176- VERIFY_ARE_EQUAL (guid1, guid );
176+ VERIFY_ARE_EQUAL (guid1, profile. Guid () );
177177 VERIFY_ARE_EQUAL (L" pwsh.exe" , termSettings.Commandline ());
178178 VERIFY_ARE_EQUAL (2 , termSettings.HistorySize ());
179179 }
@@ -192,10 +192,10 @@ namespace SettingsModelLocalTests
192192 VERIFY_IS_FALSE (realArgs.TerminalArgs ().Profile ().empty ());
193193 VERIFY_ARE_EQUAL (L" profile2" , realArgs.TerminalArgs ().Profile ());
194194
195- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
195+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
196196 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
197197 const auto termSettings = settingsStruct.DefaultSettings ();
198- VERIFY_ARE_EQUAL (profile2Guid, guid );
198+ VERIFY_ARE_EQUAL (profile2Guid, profile. Guid () );
199199 VERIFY_ARE_EQUAL (L" wsl.exe" , termSettings.Commandline ());
200200 VERIFY_ARE_EQUAL (3 , termSettings.HistorySize ());
201201 }
@@ -214,10 +214,10 @@ namespace SettingsModelLocalTests
214214 VERIFY_IS_TRUE (realArgs.TerminalArgs ().Profile ().empty ());
215215 VERIFY_ARE_EQUAL (L" foo.exe" , realArgs.TerminalArgs ().Commandline ());
216216
217- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
217+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
218218 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
219219 const auto termSettings = settingsStruct.DefaultSettings ();
220- VERIFY_ARE_EQUAL (guid0, guid );
220+ VERIFY_ARE_EQUAL (guid0, profile. Guid () );
221221 VERIFY_ARE_EQUAL (L" foo.exe" , termSettings.Commandline ());
222222 VERIFY_ARE_EQUAL (1 , termSettings.HistorySize ());
223223 }
@@ -237,10 +237,10 @@ namespace SettingsModelLocalTests
237237 VERIFY_ARE_EQUAL (L" profile1" , realArgs.TerminalArgs ().Profile ());
238238 VERIFY_ARE_EQUAL (L" foo.exe" , realArgs.TerminalArgs ().Commandline ());
239239
240- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
240+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
241241 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
242242 const auto termSettings = settingsStruct.DefaultSettings ();
243- VERIFY_ARE_EQUAL (guid1, guid );
243+ VERIFY_ARE_EQUAL (guid1, profile. Guid () );
244244 VERIFY_ARE_EQUAL (L" foo.exe" , termSettings.Commandline ());
245245 VERIFY_ARE_EQUAL (2 , termSettings.HistorySize ());
246246 }
@@ -257,10 +257,10 @@ namespace SettingsModelLocalTests
257257 VERIFY_IS_TRUE (realArgs.TerminalArgs ().TabTitle ().empty ());
258258 VERIFY_IS_TRUE (realArgs.TerminalArgs ().Profile ().empty ());
259259
260- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
260+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
261261 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
262262 const auto termSettings = settingsStruct.DefaultSettings ();
263- VERIFY_ARE_EQUAL (guid0, guid );
263+ VERIFY_ARE_EQUAL (guid0, profile. Guid () );
264264 VERIFY_ARE_EQUAL (L" cmd.exe" , termSettings.Commandline ());
265265 VERIFY_ARE_EQUAL (1 , termSettings.HistorySize ());
266266 }
@@ -278,10 +278,10 @@ namespace SettingsModelLocalTests
278278 VERIFY_IS_TRUE (realArgs.TerminalArgs ().Profile ().empty ());
279279 VERIFY_ARE_EQUAL (L" c:\\ foo" , realArgs.TerminalArgs ().StartingDirectory ());
280280
281- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
281+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
282282 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
283283 const auto termSettings = settingsStruct.DefaultSettings ();
284- VERIFY_ARE_EQUAL (guid0, guid );
284+ VERIFY_ARE_EQUAL (guid0, profile. Guid () );
285285 VERIFY_ARE_EQUAL (L" cmd.exe" , termSettings.Commandline ());
286286 VERIFY_ARE_EQUAL (L" c:\\ foo" , termSettings.StartingDirectory ());
287287 VERIFY_ARE_EQUAL (1 , termSettings.HistorySize ());
@@ -301,10 +301,10 @@ namespace SettingsModelLocalTests
301301 VERIFY_ARE_EQUAL (L" c:\\ foo" , realArgs.TerminalArgs ().StartingDirectory ());
302302 VERIFY_ARE_EQUAL (L" profile2" , realArgs.TerminalArgs ().Profile ());
303303
304- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
304+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
305305 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
306306 const auto termSettings = settingsStruct.DefaultSettings ();
307- VERIFY_ARE_EQUAL (profile2Guid, guid );
307+ VERIFY_ARE_EQUAL (profile2Guid, profile. Guid () );
308308 VERIFY_ARE_EQUAL (L" wsl.exe" , termSettings.Commandline ());
309309 VERIFY_ARE_EQUAL (L" c:\\ foo" , termSettings.StartingDirectory ());
310310 VERIFY_ARE_EQUAL (3 , termSettings.HistorySize ());
@@ -323,10 +323,10 @@ namespace SettingsModelLocalTests
323323 VERIFY_IS_TRUE (realArgs.TerminalArgs ().Profile ().empty ());
324324 VERIFY_ARE_EQUAL (L" bar" , realArgs.TerminalArgs ().TabTitle ());
325325
326- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
326+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
327327 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
328328 const auto termSettings = settingsStruct.DefaultSettings ();
329- VERIFY_ARE_EQUAL (guid0, guid );
329+ VERIFY_ARE_EQUAL (guid0, profile. Guid () );
330330 VERIFY_ARE_EQUAL (L" cmd.exe" , termSettings.Commandline ());
331331 VERIFY_ARE_EQUAL (L" bar" , termSettings.StartingTitle ());
332332 VERIFY_ARE_EQUAL (1 , termSettings.HistorySize ());
@@ -346,10 +346,10 @@ namespace SettingsModelLocalTests
346346 VERIFY_ARE_EQUAL (L" bar" , realArgs.TerminalArgs ().TabTitle ());
347347 VERIFY_ARE_EQUAL (L" profile2" , realArgs.TerminalArgs ().Profile ());
348348
349- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
349+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
350350 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
351351 const auto termSettings = settingsStruct.DefaultSettings ();
352- VERIFY_ARE_EQUAL (profile2Guid, guid );
352+ VERIFY_ARE_EQUAL (profile2Guid, profile. Guid () );
353353 VERIFY_ARE_EQUAL (L" wsl.exe" , termSettings.Commandline ());
354354 VERIFY_ARE_EQUAL (L" bar" , termSettings.StartingTitle ());
355355 VERIFY_ARE_EQUAL (3 , termSettings.HistorySize ());
@@ -371,20 +371,20 @@ namespace SettingsModelLocalTests
371371 VERIFY_ARE_EQUAL (L" bar" , realArgs.TerminalArgs ().TabTitle ());
372372 VERIFY_ARE_EQUAL (L" profile1" , realArgs.TerminalArgs ().Profile ());
373373
374- const auto guid { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
374+ const auto profile { settings.GetProfileForArgs (realArgs.TerminalArgs ()) };
375375 const auto settingsStruct{ TerminalSettings::CreateWithNewTerminalArgs (settings, realArgs.TerminalArgs (), nullptr ) };
376376 const auto termSettings = settingsStruct.DefaultSettings ();
377- VERIFY_ARE_EQUAL (guid1, guid );
377+ VERIFY_ARE_EQUAL (guid1, profile. Guid () );
378378 VERIFY_ARE_EQUAL (L" foo.exe" , termSettings.Commandline ());
379379 VERIFY_ARE_EQUAL (L" bar" , termSettings.StartingTitle ());
380380 VERIFY_ARE_EQUAL (L" c:\\ foo" , termSettings.StartingDirectory ());
381381 VERIFY_ARE_EQUAL (2 , termSettings.HistorySize ());
382382 }
383383 }
384384
385- void TerminalSettingsTests::MakeSettingsForProfileThatDoesntExist ()
385+ void TerminalSettingsTests::MakeSettingsForProfile ()
386386 {
387- // Test that making settings throws when the GUID doesn't exist
387+ // Test that making settings generally works.
388388 const std::string settingsString{ R"(
389389 {
390390 "defaultProfile": "{6239a42c-1111-49a3-80bd-e8fdd045185c}",
@@ -405,32 +405,32 @@ namespace SettingsModelLocalTests
405405
406406 const auto guid1 = ::Microsoft::Console::Utils::GuidFromString (L" {6239a42c-1111-49a3-80bd-e8fdd045185c}" );
407407 const auto guid2 = ::Microsoft::Console::Utils::GuidFromString (L" {6239a42c-2222-49a3-80bd-e8fdd045185c}" );
408- const auto guid3 = ::Microsoft::Console::Utils::GuidFromString (L" {6239a42c-3333-49a3-80bd-e8fdd045185c}" );
408+
409+ const auto profile1 = settings.FindProfile (guid1);
410+ const auto profile2 = settings.FindProfile (guid2);
409411
410412 try
411413 {
412- auto terminalSettings{ TerminalSettings::CreateWithProfileByID (settings, guid1 , nullptr ) };
414+ auto terminalSettings{ TerminalSettings::CreateWithProfile (settings, profile1 , nullptr ) };
413415 VERIFY_ARE_NOT_EQUAL (nullptr , terminalSettings);
414416 VERIFY_ARE_EQUAL (1 , terminalSettings.DefaultSettings ().HistorySize ());
415417 }
416418 catch (...)
417419 {
418- VERIFY_IS_TRUE (false , L" This call to CreateWithProfileByID should succeed" );
420+ VERIFY_IS_TRUE (false , L" This call to CreateWithProfile should succeed" );
419421 }
420422
421423 try
422424 {
423- auto terminalSettings{ TerminalSettings::CreateWithProfileByID (settings, guid2 , nullptr ) };
425+ auto terminalSettings{ TerminalSettings::CreateWithProfile (settings, profile2 , nullptr ) };
424426 VERIFY_ARE_NOT_EQUAL (nullptr , terminalSettings);
425427 VERIFY_ARE_EQUAL (2 , terminalSettings.DefaultSettings ().HistorySize ());
426428 }
427429 catch (...)
428430 {
429- VERIFY_IS_TRUE (false , L" This call to CreateWithProfileByID should succeed" );
431+ VERIFY_IS_TRUE (false , L" This call to CreateWithProfile should succeed" );
430432 }
431433
432- VERIFY_THROWS (auto terminalSettings = TerminalSettings::CreateWithProfileByID (settings, guid3, nullptr ), wil::ResultException, L" This call to constructor should fail" );
433-
434434 try
435435 {
436436 const auto termSettings{ TerminalSettings::CreateWithNewTerminalArgs (settings, nullptr , nullptr ) };
0 commit comments