ToolbarBaseTests.cs 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. using PixiEditor.Models.Tools.ToolSettings.Settings;
  2. using PixiEditor.Models.Tools.ToolSettings.Toolbars;
  3. using Xunit;
  4. namespace PixiEditorTests.ModelsTests.ToolsTests.ToolbarTests
  5. {
  6. [Collection("Application collection")]
  7. public class ToolbarBaseTests
  8. {
  9. [StaFact]
  10. public void TestThatGetSettingReturnsCorrectSetting()
  11. {
  12. BasicToolbar toolbar = new BasicToolbar();
  13. string settingName = "ToolSize";
  14. Setting setting = toolbar.GetSetting(settingName);
  15. Assert.NotNull(setting);
  16. Assert.Equal(settingName, setting.Name);
  17. }
  18. [StaFact]
  19. public void TestThatGenericGetSettingReturnsSettingWithCorrectType()
  20. {
  21. const string settingName = "test";
  22. const bool settingValue = true;
  23. Setting<bool> expected = new BoolSetting(settingName, settingValue);
  24. BasicToolbar toolbar = new BasicToolbar();
  25. toolbar.Settings.Add(expected);
  26. BoolSetting actual = toolbar.GetSetting<BoolSetting>(settingName);
  27. Assert.Equal(expected.Value, actual.Value);
  28. }
  29. [StaFact]
  30. public void TestThatGenericGetSettingReturnsNullWhenSettingIsNotFound()
  31. {
  32. BasicToolbar toolbar = new BasicToolbar();
  33. BoolSetting actual = toolbar.GetSetting<BoolSetting>("invalid");
  34. Assert.Null(actual);
  35. }
  36. [StaFact]
  37. public void TestThatGenericGetSettingReturnsNullWhenSettingHasWrongType()
  38. {
  39. const string settingName = "test";
  40. BasicToolbar toolbar = new BasicToolbar();
  41. toolbar.Settings.Add(new BoolSetting(settingName));
  42. SizeSetting actual = toolbar.GetSetting<SizeSetting>(settingName);
  43. Assert.Null(actual);
  44. }
  45. [StaFact]
  46. public void TestThatSaveToolbarSettingsSavesSettingAndLoadsItIntoNewToolbar()
  47. {
  48. BasicToolbar toolbar = new BasicToolbar();
  49. toolbar.GetSetting<SizeSetting>("ToolSize").Value = 5;
  50. toolbar.SaveToolbarSettings();
  51. BasicShapeToolbar shapeToolbar = new BasicShapeToolbar();
  52. Assert.NotEqual(5, shapeToolbar.GetSetting<SizeSetting>("ToolSize").Value);
  53. shapeToolbar.LoadSharedSettings();
  54. Assert.Equal(5, shapeToolbar.GetSetting<SizeSetting>("ToolSize").Value);
  55. }
  56. }
  57. }