terminal/src/cascadia/LocalTests_TerminalApp
Michael Kitzan e9a3fe5578 FindGuid helper function (#3762)
<!-- Enter a brief description/summary of your PR here. What does it fix/what does it change/how was it tested (even manually, if necessary)? -->
## Summary of the Pull Request
Adds a simple helper function to look up the GUID associated with a profile name.

<!-- Other than the issue solved, is this relevant to any other issues/existing PRs? --> 
## References

<!-- Please review the items on the PR checklist before submitting-->
## PR Checklist
* [x] Closes #3680
* [x] CLA signed. If not, go over [here](https://cla.opensource.microsoft.com/microsoft/Terminal) and sign the CLA
* [x] Tests added/passed. Yes, new test group in `SettingsTests`!
* [ ] Requires documentation to be updated
* [x] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #3680

<!-- Provide a more detailed description of the PR, other things fixed or any additional comments/features here -->
## Detailed Description of the Pull Request / Additional comments
Very simple function, for-each through profiles checking for a match. Returns the associated GUID if found, else returns the null GUID.

This function is marked as `noexcept` to comply with assumption made by other `CascadiaSettings` functions that [`Profiles::GetGuid`](https://github.com/microsoft/terminal/blob/master/src/cascadia/TerminalApp/Profile.cpp#L141) does not throw, despite it throwing.

<!-- Describe how you validated the behavior. Add automated tests wherever possible, but list manual validation steps taken as well -->
## Validation Steps Performed
The new function is simple and can be visually validated, but added tests regardless. A new test group was added in `SettingsTests` called `TestHelperFunctions` to validate the new function `FindGuid` and older function `FindProfile`. This test group could be used to validate more helper functions in `CascadiaSettings` as they're added. The new test group passes after running `te.exe TerminalApp.LocalTests.dll`. 


--------------------------------------------

* Added FindGuid helper function

* Style change

* Tests for FindGuid and FindProfile

* Fixed code format?

* Code format guess

No feedback from the Azure pipeline

* optional<GUID> fix

* Updated function desc
2019-12-02 08:24:21 -06:00
..
ColorSchemeTests.cpp Add Selection Background Color as a setting to Profiles and Col… (#3471) 2019-11-13 12:17:39 -06:00
JsonTestClass.h Add Cascading User + Default Settings (#2515) 2019-09-16 12:57:10 -07:00
KeyBindingsTests.cpp Add a 'splitPane' ShortcutAction (#3722) 2019-11-28 07:42:15 -06:00
precomp.cpp Add a Local Test binary, to enable local TerminalApp testing (#2294) 2019-08-13 08:23:28 -05:00
precomp.h Add a Local Test binary, to enable local TerminalApp testing (#2294) 2019-08-13 08:23:28 -05:00
ProfileTests.cpp Add Selection Background Color as a setting to Profiles and Col… (#3471) 2019-11-13 12:17:39 -06:00
SettingsTests.cpp FindGuid helper function (#3762) 2019-12-02 08:24:21 -06:00
TabTests.cpp Add Cascading User + Default Settings (#2515) 2019-09-16 12:57:10 -07:00
TerminalApp.LocalTests.AppxManifest.prototype.xml Add a Local Test binary, to enable local TerminalApp testing (#2294) 2019-08-13 08:23:28 -05:00
TerminalApp.LocalTests.manifest TURNS OUT CASE SENSITIVITY IS IMPORTANT (#2481) 2019-08-20 11:16:06 -07:00
TerminalApp.LocalTests.vcxproj Introduce a Universal package for Windows Terminal (#3236) 2019-11-25 16:30:45 -08:00