Commit Graph

3 Commits

Author SHA1 Message Date
ryanbodrug-microsoft
0f6428eed0 User/ryanbod/mock settings disk access (#6188)
* 1) Making Directory Methods private.
2) Removing the CreateDirectory / DeleteDirectory functionality from all Settings Unit Tests.

* Abstracting disk access via IIOProvider to be able to provide mocks for unit tests instead of writing to disk.   This also prevents developers who are running unit tests from interfering with the PowerToys settings on their local dev box.

* Dependency Injecting stub SettingsUtils for all tests

* Removing ISettingsUtils from constructors of objects that need to be deserialized (ColorPickerSettings/PowerLauncherSettings) as this breaks System.Text.Json

* Removing unused namespace reference

* Removing redifined mock

* As per PR feedback.  Stub Settings utils should work with any settings type if the intent is to compile / avoid null ref exceptions.

Strangely when implementing this fix it became apparent that a stub settings isn't enough, and disk access needed to be mocked.  I can't explain why the tests were passing previously.

* Leveraging GetMockIOProviderForSaveLoadExists
2020-09-21 10:14:44 -07:00
ryanbodrug-microsoft
2075f9fa71 Comparing exepected vs actual json strings. This fixes two issues. (#6145)
1) the same variables are being compared against each other.
2) BasePTSettingsTest doesn't override equals to Equals compares the objects. This change compares the json strings directly.
2020-08-25 09:07:44 -07:00
Nkateko
24d7232559 [Settings Tests] Migrate General Settings tests (#5753)
* added MSTest project

* migrated general settings tests

* enabled settings tests run in the build pipeline

* added tests

* move relay command class to separate file

* added a foldername parameter for general settings view model
2020-08-13 15:02:05 -07:00