From 03b600987e1825d862d1e11f099ee464551dff27 Mon Sep 17 00:00:00 2001 From: emregokrem Date: Tue, 28 May 2024 10:05:39 +0300 Subject: [PATCH 1/2] Component tests added [DateDropdown-MapNavigation] --- SiemensIXBlazor.Tests/DateDropdownTest.cs | 102 ++++++++++++++++++ SiemensIXBlazor.Tests/DatePickerTest.cs | 82 ++++++++++++++ SiemensIXBlazor.Tests/DateTimePickerTest.cs | 77 +++++++++++++ SiemensIXBlazor.Tests/DividerTest.cs | 28 +++++ .../{DrawerTests.cs => DrawerTest.cs} | 2 +- .../Dropdown/DropdownItemTest.cs | 46 ++++++++ .../Dropdown/DropdownTest.cs | 54 ++++++++++ SiemensIXBlazor.Tests/DropdownButtonTest.cs | 38 +++++++ SiemensIXBlazor.Tests/EChartsTest.cs | 27 +++++ SiemensIXBlazor.Tests/EmptyStateTest.cs | 50 +++++++++ .../EventList/EventListItemTest.cs | 51 +++++++++ .../EventList/EventListTest.cs | 32 ++++++ SiemensIXBlazor.Tests/ExpandingSearchTest.cs | 48 +++++++++ .../Flip/FlipTileContentTest.cs | 28 +++++ SiemensIXBlazor.Tests/Flip/FlipTileTest.cs | 31 ++++++ SiemensIXBlazor.Tests/Group/GroupItemTest.cs | 52 +++++++++ SiemensIXBlazor.Tests/Group/GroupTest.cs | 66 ++++++++++++ SiemensIXBlazor.Tests/KPITest.cs | 32 ++++++ SiemensIXBlazor.Tests/KeyValueListTest.cs | 29 +++++ SiemensIXBlazor.Tests/KeyValueTest.cs | 33 ++++++ SiemensIXBlazor.Tests/LayoutGrid/ColTest.cs | 32 ++++++ .../LayoutGrid/LayoutGridTest.cs | 31 ++++++ SiemensIXBlazor.Tests/LayoutGrid/RowTest.cs | 28 +++++ SiemensIXBlazor.Tests/LinkButtonTest.cs | 32 ++++++ SiemensIXBlazor.Tests/MapNavigationTest.cs | 56 ++++++++++ SiemensIXBlazor.sln | 8 +- SiemensIXBlazor.sln.licenseheader | 20 ++++ .../Components/DatePicker/DatePicker.razor.cs | 2 +- .../DateTimePicker/DateTimePicker.razor.cs | 4 +- .../Components/Group/GroupItem.razor.cs | 2 +- 30 files changed, 1117 insertions(+), 6 deletions(-) create mode 100644 SiemensIXBlazor.Tests/DateDropdownTest.cs create mode 100644 SiemensIXBlazor.Tests/DatePickerTest.cs create mode 100644 SiemensIXBlazor.Tests/DateTimePickerTest.cs create mode 100644 SiemensIXBlazor.Tests/DividerTest.cs rename SiemensIXBlazor.Tests/{DrawerTests.cs => DrawerTest.cs} (97%) create mode 100644 SiemensIXBlazor.Tests/Dropdown/DropdownItemTest.cs create mode 100644 SiemensIXBlazor.Tests/Dropdown/DropdownTest.cs create mode 100644 SiemensIXBlazor.Tests/DropdownButtonTest.cs create mode 100644 SiemensIXBlazor.Tests/EChartsTest.cs create mode 100644 SiemensIXBlazor.Tests/EmptyStateTest.cs create mode 100644 SiemensIXBlazor.Tests/EventList/EventListItemTest.cs create mode 100644 SiemensIXBlazor.Tests/EventList/EventListTest.cs create mode 100644 SiemensIXBlazor.Tests/ExpandingSearchTest.cs create mode 100644 SiemensIXBlazor.Tests/Flip/FlipTileContentTest.cs create mode 100644 SiemensIXBlazor.Tests/Flip/FlipTileTest.cs create mode 100644 SiemensIXBlazor.Tests/Group/GroupItemTest.cs create mode 100644 SiemensIXBlazor.Tests/Group/GroupTest.cs create mode 100644 SiemensIXBlazor.Tests/KPITest.cs create mode 100644 SiemensIXBlazor.Tests/KeyValueListTest.cs create mode 100644 SiemensIXBlazor.Tests/KeyValueTest.cs create mode 100644 SiemensIXBlazor.Tests/LayoutGrid/ColTest.cs create mode 100644 SiemensIXBlazor.Tests/LayoutGrid/LayoutGridTest.cs create mode 100644 SiemensIXBlazor.Tests/LayoutGrid/RowTest.cs create mode 100644 SiemensIXBlazor.Tests/LinkButtonTest.cs create mode 100644 SiemensIXBlazor.Tests/MapNavigationTest.cs create mode 100644 SiemensIXBlazor.sln.licenseheader diff --git a/SiemensIXBlazor.Tests/DateDropdownTest.cs b/SiemensIXBlazor.Tests/DateDropdownTest.cs new file mode 100644 index 0000000..39b2d4f --- /dev/null +++ b/SiemensIXBlazor.Tests/DateDropdownTest.cs @@ -0,0 +1,102 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using System.Text.Json; +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; +using SiemensIXBlazor.Objects.DateDropdown; + +namespace SiemensIXBlazor.Tests; + +public class DateDropdownTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithoutCrashing() + { + // Arrange + var cut = RenderComponent(); + + // Assert + cut.MarkupMatches(@" + + "); + } + + [Fact] + public void AllPropertiesAreSetCorrectly() + { + // Arrange + var dateDropdownOptions = new DateDropdownOption[] { new() { Id = "test", Label = "Test" } }; + var dateRangeChangeEvent = new EventCallbackFactory().Create(this, response => + { + /* your action here */ + }); + + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.CustomRangeAllowed, true) + .Add(p => p.DateRangeId, "custom") + .Add(p => p.DateRangeOptions, dateDropdownOptions) + .Add(p => p.Format, "yyyy/LL/dd") + .Add(p => p.From, "2022/01/01") + .Add(p => p.I18NCustomItem, "Custom...") + .Add(p => p.I18NDone, "Done") + .Add(p => p.I18NNoRange, "No range set") + .Add(p => p.MaxDate, "2022/12/31") + .Add(p => p.MinDate, "2022/01/01") + .Add(p => p.Range, true) + .Add(p => p.To, "2022/12/31") + .Add(p => p.DateRangeChangeEvent, dateRangeChangeEvent)); + + // Assert + cut.MarkupMatches(@" + + "); + } + + [Fact] + public void DateRangeChangeEventIsTriggeredCorrectly() + { + // Arrange + var dateDropdownOptions = new DateDropdownOption[] + { + new() { Id = "test", Label = "Test", From = "2022/01/01", To = "2022/12/31" }, + new() { Id = "test2", Label = "Test2", From = "2023/01/01", To = "2023/12/31" } + }; + var dateRangeChangeEventTriggered = false; + var dateRangeChangeEvent = + new EventCallbackFactory().Create(this, + response => { dateRangeChangeEventTriggered = true; }); + + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.CustomRangeAllowed, true) + .Add(p => p.DateRangeId, "test1") + .Add(p => p.DateRangeOptions, dateDropdownOptions) + .Add(p => p.Format, "yyyy/LL/dd") + .Add(p => p.From, "2022/01/01") + .Add(p => p.I18NCustomItem, "Custom...") + .Add(p => p.I18NDone, "Done") + .Add(p => p.I18NNoRange, "No range set") + .Add(p => p.MaxDate, "2022/12/31") + .Add(p => p.MinDate, "2022/01/01") + .Add(p => p.Range, true) + .Add(p => p.To, "2022/12/31") + .Add(p => p.DateRangeChangeEvent, dateRangeChangeEvent)); + + // Act + var json = JsonSerializer.Serialize(new DateDropdownResponse { Id = "test2" }); + var parsedJson = JsonDocument.Parse(json).RootElement; + cut.Instance.DateRangeChange(parsedJson); + + // Assert + Assert.True(dateRangeChangeEventTriggered); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/DatePickerTest.cs b/SiemensIXBlazor.Tests/DatePickerTest.cs new file mode 100644 index 0000000..02f969f --- /dev/null +++ b/SiemensIXBlazor.Tests/DatePickerTest.cs @@ -0,0 +1,82 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using System.Text.Json; +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; +using SiemensIXBlazor.Enums.DatePicker; +using SiemensIXBlazor.Objects; + +namespace SiemensIXBlazor.Tests; + +public class DatePickerTest : TestContextBase +{ + [Fact] + public void ComponentRendersAndPropertiesAreSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.Corners, DatePickerCorners.Rounded) + .Add(p => p.EventDelimiter, " - ") + .Add(p => p.Format, "yyyy/MM/dd") + .Add(p => p.From, "2022/01/01") + .Add(p => p.MaxDate, "2022/12/31") + .Add(p => p.MinDate, "2022/01/01") + .Add(p => p.Range, true) + .Add(p => p.I18nDone, "Done") + .Add(p => p.Locale, "en-US") + .Add(p => p.WeekStartIndex, 0) + .Add(p => p.To, "2022/12/31")); + + // Assert + cut.MarkupMatches($@" + "); + } + + [Fact] + public void EventCallbacksAreTriggered() + { + // Arrange + var dateRangeChangeInvoked = false; + var dateChangeInvoked = false; + var dateSelectInvoked = false; + + var dateRangeChangeEvent = + new EventCallbackFactory().Create(this, + response => { dateRangeChangeInvoked = true; }); + + var dateChangeEvent = + new EventCallbackFactory().Create(this, + response => { dateChangeInvoked = true; }); + + var dateSelectEvent = + new EventCallbackFactory().Create(this, + response => { dateSelectInvoked = true; }); + + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.DateRangeChangeEvent!, dateRangeChangeEvent) + .Add(p => p.DateChangeEvent!, dateChangeEvent) + .Add(p => p.DateSelectEvent, dateSelectEvent)); + + // Act + var json = JsonSerializer.Serialize(new DatePickerResponse { From = "2024/01/01", To = "2024/12/31\"" }); + var parsedJson = JsonDocument.Parse(json).RootElement; + cut.Instance.DateRangeChange(parsedJson); + cut.Instance.DateChange(parsedJson); + cut.Instance.DateSelect(parsedJson); + + // Assert + Assert.True(dateRangeChangeInvoked); + Assert.True(dateChangeInvoked); + Assert.True(dateSelectInvoked); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/DateTimePickerTest.cs b/SiemensIXBlazor.Tests/DateTimePickerTest.cs new file mode 100644 index 0000000..3689a5b --- /dev/null +++ b/SiemensIXBlazor.Tests/DateTimePickerTest.cs @@ -0,0 +1,77 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using System.Text.Json; +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; +using SiemensIXBlazor.Objects; + +namespace SiemensIXBlazor.Tests; + +public class DateTimePickerTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithCorrectProperties() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.DateFormat, "yyyy/MM/dd") + .Add(p => p.EventDelimiter, " - ") + .Add(p => p.From, DateTime.Now.ToString("yyyy/MM/dd")) + .Add(p => p.MaxDate, "2022/12/31") + .Add(p => p.MinDate, "2022/01/01") + .Add(p => p.Range, true) + .Add(p => p.ShowHour, false) + .Add(p => p.ShowMinutes, false) + .Add(p => p.ShowSeconds, false) + .Add(p => p.ShowTimeReference, "") + .Add(p => p.TextSelectDate, "Done") + .Add(p => p.Time, "12:00:00") + .Add(p => p.TimeFormat, "HH:mm:ss") + .Add(p => p.TimeReference, "12:00:00") + .Add(p => p.To, "2022/12/31")); + + // Assert + cut.MarkupMatches(""); + } + + [Fact] + public void EventCallbacksAreTriggeredCorrectly() + { + // Arrange + bool isDateChangeEventTriggered = false; + bool isDateSelectEventTriggered = false; + bool isTimeChangeEventTriggered = false; + bool isDoneEventTriggered = false; + + var cut = RenderComponent(parameters => parameters + .Add(p => p.DateChangeEvent, EventCallback.Factory.Create(this, (date) => isDateChangeEventTriggered = true)) + .Add(p => p.DateSelectEvent, EventCallback.Factory.Create(this, (response) => isDateSelectEventTriggered = true)) + .Add(p => p.TimeChangeEvent, EventCallback.Factory.Create(this, (time) => isTimeChangeEventTriggered = true)) + .Add(p => p.DoneEvent, EventCallback.Factory.Create(this, (done) => isDoneEventTriggered = true))); + + // Act + cut.Instance.DateChange("2022/12/31"); + cut.Instance.TimeChange("12:00:00"); + + var json = JsonSerializer.Serialize(new DateTimePickerResponse { Time = "2024/01/01" }); + var parsedJson = JsonDocument.Parse(json).RootElement; + cut.Instance.DateSelect(parsedJson); + + cut.Instance.Done("2022/12/31"); + + // Assert + Assert.True(isDateChangeEventTriggered); + Assert.True(isTimeChangeEventTriggered); + Assert.True(isDoneEventTriggered); + Assert.True(isDateSelectEventTriggered); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/DividerTest.cs b/SiemensIXBlazor.Tests/DividerTest.cs new file mode 100644 index 0000000..cc0ef3a --- /dev/null +++ b/SiemensIXBlazor.Tests/DividerTest.cs @@ -0,0 +1,28 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests; + +public class DividerTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithCorrectProperties() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Class, "testClass") + .Add(p => p.Style, "testStyle")); + + // Assert + cut.MarkupMatches(""); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/DrawerTests.cs b/SiemensIXBlazor.Tests/DrawerTest.cs similarity index 97% rename from SiemensIXBlazor.Tests/DrawerTests.cs rename to SiemensIXBlazor.Tests/DrawerTest.cs index 2071b99..f3ecce1 100644 --- a/SiemensIXBlazor.Tests/DrawerTests.cs +++ b/SiemensIXBlazor.Tests/DrawerTest.cs @@ -13,7 +13,7 @@ namespace SiemensIXBlazor.Tests { - public class DrawerTests : TestContextBase + public class DrawerTest : TestContextBase { [Fact] public void DrawerRendersCorrectly() diff --git a/SiemensIXBlazor.Tests/Dropdown/DropdownItemTest.cs b/SiemensIXBlazor.Tests/Dropdown/DropdownItemTest.cs new file mode 100644 index 0000000..b65e033 --- /dev/null +++ b/SiemensIXBlazor.Tests/Dropdown/DropdownItemTest.cs @@ -0,0 +1,46 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests.Dropdown; + +public class DropdownItemTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithCorrectProperties() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Label, "testLabel") + .Add(p => p.Value, "testValue")); + + // Assert + cut.MarkupMatches(""); + } + + [Fact] + public async Task EventCallbacksAreTriggeredCorrectly() + { + // Arrange + var isOnClickEventTriggered = false; + + var cut = RenderComponent(parameters => parameters + .Add(p => p.OnClickEvent, + EventCallback.Factory.Create(this, label => isOnClickEventTriggered = true))); + + // Act + await cut.Instance.OnClickEvent.InvokeAsync("testLabel"); + + // Assert + Assert.True(isOnClickEventTriggered); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/Dropdown/DropdownTest.cs b/SiemensIXBlazor.Tests/Dropdown/DropdownTest.cs new file mode 100644 index 0000000..daa3c71 --- /dev/null +++ b/SiemensIXBlazor.Tests/Dropdown/DropdownTest.cs @@ -0,0 +1,54 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; + +namespace SiemensIXBlazor.Tests.Dropdown; + +public class DropdownTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithCorrectProperties() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.Anchor, "testAnchor") + //.Add(p => p.CloseBehavior, "both") + .Add(p => p.Header, "testHeader") + .Add(p => p.Placement, "bottom-start") + .Add(p => p.PositioningStrategy, "fixed") + .Add(p => p.Show, false) + .Add(p => p.SuppressAutomaticPlacement, false) + .Add(p => p.Trigger, "testTrigger") + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content")))); + + // Assert + cut.MarkupMatches( + "Test content"); + } + + [Fact] + public void EventCallbacksAreTriggeredCorrectly() + { + // Arrange + var isShowChangedEventTriggered = false; + + var cut = RenderComponent(parameters => parameters + .Add(p => p.ShowChangedEvent, + EventCallback.Factory.Create(this, value => isShowChangedEventTriggered = true))); + + // Act + cut.Instance.ShowChanged(true); + + // Assert + Assert.True(isShowChangedEventTriggered); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/DropdownButtonTest.cs b/SiemensIXBlazor.Tests/DropdownButtonTest.cs new file mode 100644 index 0000000..0ec99f8 --- /dev/null +++ b/SiemensIXBlazor.Tests/DropdownButtonTest.cs @@ -0,0 +1,38 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; +using SiemensIXBlazor.Enums.Button; +using SiemensIXBlazor.Enums.DropdownButton; + +namespace SiemensIXBlazor.Tests; + +public class DropdownButtonTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithCorrectProperties() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Disabled, true) + .Add(p => p.Ghost, true) + .Add(p => p.Icon, "testIcon") + .Add(p => p.Label, "testLabel") + .Add(p => p.Outline, true) + .Add(p => p.Placement, DropdownButtonPlacement.bottom_start) + .Add(p => p.Variant, ButtonVariant.primary) + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content")))); + + // Assert + cut.MarkupMatches( + "Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/EChartsTest.cs b/SiemensIXBlazor.Tests/EChartsTest.cs new file mode 100644 index 0000000..642d195 --- /dev/null +++ b/SiemensIXBlazor.Tests/EChartsTest.cs @@ -0,0 +1,27 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using SiemensIXBlazor.Components.ECharts; + +namespace SiemensIXBlazor.Tests; + +public class EChartsTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithCorrectProperties() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId")); + + // Assert + cut.MarkupMatches("
"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/EmptyStateTest.cs b/SiemensIXBlazor.Tests/EmptyStateTest.cs new file mode 100644 index 0000000..6e841b1 --- /dev/null +++ b/SiemensIXBlazor.Tests/EmptyStateTest.cs @@ -0,0 +1,50 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests; + +public class EmptyStateTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithCorrectProperties() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.Action, "testAction") + .Add(p => p.Header, "testHeader") + .Add(p => p.Icon, "testIcon") + .Add(p => p.Layout, "compact") + .Add(p => p.SubHeader, "testSubHeader")); + + // Assert + cut.MarkupMatches( + ""); + } + + [Fact] + public void ActionClickedEventInvoked() + { + // Arrange + var eventCalled = false; + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.ActionClickedEvent, EventCallback.Factory.Create(this, () => eventCalled = true))); + + // Act + cut.Instance.ActionClicked(); + + // Assert + Assert.True(eventCalled); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/EventList/EventListItemTest.cs b/SiemensIXBlazor.Tests/EventList/EventListItemTest.cs new file mode 100644 index 0000000..a066573 --- /dev/null +++ b/SiemensIXBlazor.Tests/EventList/EventListItemTest.cs @@ -0,0 +1,51 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests.EventList; + +public class EventListItemTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithCorrectProperties() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content"))) + .Add(p => p.Chevron, true) + .Add(p => p.Color, "red") + .Add(p => p.Disabled, false) + .Add(p => p.Opacity, 1) + .Add(p => p.Selected, true) + .Add(p => p.ItemClickEvent, EventCallback.Factory.Create(this, () => { }))); + + // Assert + cut.MarkupMatches( + "Test content"); + } + + [Fact] + public void ItemClickEventInvoked() + { + // Arrange + var wasClicked = false; + var cut = RenderComponent(parameters => parameters + .Add(p => p.ItemClickEvent, EventCallback.Factory.Create(this, () => wasClicked = true))); + + // Act + cut.Instance.ItemClicked(); + + // Assert + Assert.True(wasClicked); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/EventList/EventListTest.cs b/SiemensIXBlazor.Tests/EventList/EventListTest.cs new file mode 100644 index 0000000..438c1d5 --- /dev/null +++ b/SiemensIXBlazor.Tests/EventList/EventListTest.cs @@ -0,0 +1,32 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; + +namespace SiemensIXBlazor.Tests.EventList; + +public class EventListTest : TestContextBase +{ + [Fact] + public void EventListPropertiesAreSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content"))) + .Add(p => p.Animated, true) + .Add(p => p.Chevron, true) + .Add(p => p.Compact, false) + .Add(p => p.ItemHeight, "M")); + + // Assert + cut.MarkupMatches( + "Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/ExpandingSearchTest.cs b/SiemensIXBlazor.Tests/ExpandingSearchTest.cs new file mode 100644 index 0000000..c7fd37b --- /dev/null +++ b/SiemensIXBlazor.Tests/ExpandingSearchTest.cs @@ -0,0 +1,48 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests; + +public class ExpandingSearchTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithCorrectProperties() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.Icon, "testIcon") + .Add(p => p.Placeholder, "testPlaceholder") + .Add(p => p.Value, "testValue")); + + // Assert + cut.MarkupMatches( + ""); + } + + [Fact] + public void ValueChangedEventInvokedOnValueChange() + { + // Arrange + var valueChangedEventInvoked = false; + var cut = RenderComponent(parameters => parameters + .Add(p => p.ValueChangedEvent, + EventCallback.Factory.Create(this, _ => valueChangedEventInvoked = true))); + + // Act + cut.Instance.ValueChanged(string.Empty); + + // Assert + Assert.True(valueChangedEventInvoked); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/Flip/FlipTileContentTest.cs b/SiemensIXBlazor.Tests/Flip/FlipTileContentTest.cs new file mode 100644 index 0000000..a4573b7 --- /dev/null +++ b/SiemensIXBlazor.Tests/Flip/FlipTileContentTest.cs @@ -0,0 +1,28 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests.Flip; + +public class FlipTileContentTest : TestContextBase +{ + [Fact] + public void ComponentRendersAndPropertiesSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters.Add(p => p.ChildContent, + (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content")))); + + // Assert + cut.MarkupMatches("Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/Flip/FlipTileTest.cs b/SiemensIXBlazor.Tests/Flip/FlipTileTest.cs new file mode 100644 index 0000000..95eb421 --- /dev/null +++ b/SiemensIXBlazor.Tests/Flip/FlipTileTest.cs @@ -0,0 +1,31 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests.Flip; + +public class FlipTileTest : TestContextBase +{ + [Fact] + public void ComponentRendersAndSetsPropertiesCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content"))) + .Add(p => p.State, "testState") + .Add(p => p.Height, 20.5) + .Add(p => p.Width, 25)); + + // Assert + cut.MarkupMatches("Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/Group/GroupItemTest.cs b/SiemensIXBlazor.Tests/Group/GroupItemTest.cs new file mode 100644 index 0000000..adaeed8 --- /dev/null +++ b/SiemensIXBlazor.Tests/Group/GroupItemTest.cs @@ -0,0 +1,52 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests.Group; + +public class GroupItemTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithParametersSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.Focusable, true) + .Add(p => p.Icon, "testIcon") + .Add(p => p.Index, 1) + .Add(p => p.SecondaryText, "testSecondaryText") + .Add(p => p.Selected, true) + .Add(p => p.SuppressSelection, false) + .Add(p => p.Text, "testText")); + + // Assert + cut.MarkupMatches( + ""); + } + + [Fact] + public void ItemClickedEventTriggered() + { + // Arrange + var wasCalled = false; + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.SelectedChangeEvent, EventCallback.Factory.Create(this, id => { wasCalled = true; }))); + + // Act + cut.Instance.ItemClicked(); + + // Assert + Assert.True(wasCalled); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/Group/GroupTest.cs b/SiemensIXBlazor.Tests/Group/GroupTest.cs new file mode 100644 index 0000000..f1f4a21 --- /dev/null +++ b/SiemensIXBlazor.Tests/Group/GroupTest.cs @@ -0,0 +1,66 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; + +namespace SiemensIXBlazor.Tests.Group; + +public class GroupTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithParametersSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.Collapsed, true) + .Add(p => p.ExpandOnHeaderClick, false) + .Add(p => p.Header, "testHeader") + .Add(p => p.Index, 1) + .Add(p => p.Selected, true) + .Add(p => p.SubHeader, "testSubHeader") + .Add(p => p.SuppressHeaderSelection, false) + .Add(p => p.CollapsedChangedEvent, EventCallback.Factory.Create(this, (bool value) => { })) + .Add(p => p.SelectGroupEvent, EventCallback.Factory.Create(this, (bool value) => { })) + .Add(p => p.SelectItemEvent, EventCallback.Factory.Create(this, (int value) => { }))); + + // Assert + cut.MarkupMatches( + ""); + } + + [Fact] + public void EventCallbacksTriggered() + { + // Arrange + var collapsedChangedEventWasCalled = false; + var selectGroupEventWasCalled = false; + var selectItemEventValue = 0; + + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.CollapsedChangedEvent, + EventCallback.Factory.Create(this, (bool value) => { collapsedChangedEventWasCalled = true; })) + .Add(p => p.SelectGroupEvent, + EventCallback.Factory.Create(this, (bool value) => { selectGroupEventWasCalled = true; })) + .Add(p => p.SelectItemEvent, + EventCallback.Factory.Create(this, (int value) => { selectItemEventValue = value; }))); + + // Act + cut.Instance.CollapsedChanged(true); + cut.Instance.GroupSelected(true); + cut.Instance.ItemSelected(1); + + // Assert + Assert.True(collapsedChangedEventWasCalled); + Assert.True(selectGroupEventWasCalled); + Assert.Equal(1, selectItemEventValue); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/KPITest.cs b/SiemensIXBlazor.Tests/KPITest.cs new file mode 100644 index 0000000..21fd689 --- /dev/null +++ b/SiemensIXBlazor.Tests/KPITest.cs @@ -0,0 +1,32 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using SiemensIXBlazor.Components; +using SiemensIXBlazor.Enums.KPI; + +namespace SiemensIXBlazor.Tests; + +public class KPITest : TestContextBase +{ + [Fact] + public void ComponentRendersWithParametersSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.Label, "testLabel") + .Add(p => p.Orientation, KpiOrientation.Horizontal) + .Add(p => p.State, KpiState.Neutral) + .Add(p => p.Unit, "testUnit") + .Add(p => p.Value, "testValue")); + + // Assert + cut.MarkupMatches(""); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/KeyValueListTest.cs b/SiemensIXBlazor.Tests/KeyValueListTest.cs new file mode 100644 index 0000000..421dbc5 --- /dev/null +++ b/SiemensIXBlazor.Tests/KeyValueListTest.cs @@ -0,0 +1,29 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests; + +public class KeyValueListTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithParametersSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content"))) + .Add(p => p.Striped, true)); + + // Assert + cut.MarkupMatches("Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/KeyValueTest.cs b/SiemensIXBlazor.Tests/KeyValueTest.cs new file mode 100644 index 0000000..728f4cd --- /dev/null +++ b/SiemensIXBlazor.Tests/KeyValueTest.cs @@ -0,0 +1,33 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; + +namespace SiemensIXBlazor.Tests; + +public class KeyValueTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithParametersSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content"))) + .Add(p => p.Icon, "testIcon") + .Add(p => p.Label, "testLabel") + .Add(p => p.LabelPosition, "left") + .Add(p => p.Value, "testValue")); + + // Assert + cut.MarkupMatches( + "Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/LayoutGrid/ColTest.cs b/SiemensIXBlazor.Tests/LayoutGrid/ColTest.cs new file mode 100644 index 0000000..02d4f39 --- /dev/null +++ b/SiemensIXBlazor.Tests/LayoutGrid/ColTest.cs @@ -0,0 +1,32 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components.LayoutGrid; + +namespace SiemensIXBlazor.Tests.LayoutGrid; + +public class ColTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithParametersSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content"))) + .Add(p => p.Size, "12") + .Add(p => p.SizeLg, "10") + .Add(p => p.SizeMd, "8") + .Add(p => p.SizeSm, "6")); + + // Assert + cut.MarkupMatches("Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/LayoutGrid/LayoutGridTest.cs b/SiemensIXBlazor.Tests/LayoutGrid/LayoutGridTest.cs new file mode 100644 index 0000000..9bfbc0b --- /dev/null +++ b/SiemensIXBlazor.Tests/LayoutGrid/LayoutGridTest.cs @@ -0,0 +1,31 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; + +namespace SiemensIXBlazor.Tests.LayoutGrid; + +public class LayoutGridTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithParametersSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content"))) + .Add(p => p.Columns, 12) + .Add(p => p.Gap, "24") + .Add(p => p.NoMargin, false)); + + // Assert + cut.MarkupMatches( + "Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/LayoutGrid/RowTest.cs b/SiemensIXBlazor.Tests/LayoutGrid/RowTest.cs new file mode 100644 index 0000000..590b362 --- /dev/null +++ b/SiemensIXBlazor.Tests/LayoutGrid/RowTest.cs @@ -0,0 +1,28 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components.LayoutGrid; + +namespace SiemensIXBlazor.Tests.LayoutGrid; + +public class RowTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithChildContent() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content")))); + + // Assert + cut.MarkupMatches("Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/LinkButtonTest.cs b/SiemensIXBlazor.Tests/LinkButtonTest.cs new file mode 100644 index 0000000..b1d5787 --- /dev/null +++ b/SiemensIXBlazor.Tests/LinkButtonTest.cs @@ -0,0 +1,32 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; +using SiemensIXBlazor.Enums.LinkButton; + +namespace SiemensIXBlazor.Tests; + +public class LinkButtonTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithParametersSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content"))) + .Add(p => p.Disabled, true) + .Add(p => p.Target, LinkButtonTarget._blank) + .Add(p => p.Url, "https://example.com")); + + // Assert + cut.MarkupMatches("Test content"); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.Tests/MapNavigationTest.cs b/SiemensIXBlazor.Tests/MapNavigationTest.cs new file mode 100644 index 0000000..5ba9889 --- /dev/null +++ b/SiemensIXBlazor.Tests/MapNavigationTest.cs @@ -0,0 +1,56 @@ +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components.MapNavigation; + +namespace SiemensIXBlazor.Tests; + +public class MapNavigationTest : TestContextBase +{ + [Fact] + public void ComponentRendersWithParametersSetCorrectly() + { + // Arrange + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, (RenderFragment)(builder => builder.AddMarkupContent(0, "Test content"))) + .Add(p => p.Id, "testId") + .Add(p => p.ApplicationName, "testApp") + .Add(p => p.HideContextMenu, true) + .Add(p => p.NavigationTitle, "testTitle")); + + // Assert + // Replace the expected markup with the actual expected markup of your MapNavigation component + cut.MarkupMatches("Test content"); + } + + [Fact] + public async Task EventCallbacksTriggered() + { + // Arrange + var contextMenuClickEventWasCalled = false; + var navigationToggledEventWasCalled = false; + + var cut = RenderComponent(parameters => parameters + .Add(p => p.Id, "testId") + .Add(p => p.ContextMenuClickEvent, + EventCallback.Factory.Create(this, () => { contextMenuClickEventWasCalled = true; })) + .Add(p => p.NavigationToggledEvent, + EventCallback.Factory.Create(this, value => { navigationToggledEventWasCalled = true; }))); + + // Act + await cut.Instance.ContextMenuClicked(); + await cut.Instance.NavigationToggled(true); + + // Assert + Assert.True(contextMenuClickEventWasCalled); + Assert.True(navigationToggledEventWasCalled); + } +} \ No newline at end of file diff --git a/SiemensIXBlazor.sln b/SiemensIXBlazor.sln index 81c54bc..e2b455b 100644 --- a/SiemensIXBlazor.sln +++ b/SiemensIXBlazor.sln @@ -9,7 +9,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SiemensIXBlazor", "SiemensI EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{9AA3C4E1-3873-4856-8725-D1858590EF32}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SiemensIXBlazor.Tests", "SiemensIXBlazor.Tests\SiemensIXBlazor.Tests.csproj", "{0E18AA5B-2E9A-48BA-A07F-621B5DCBBDC9}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SiemensIXBlazor.Tests", "SiemensIXBlazor.Tests\SiemensIXBlazor.Tests.csproj", "{0E18AA5B-2E9A-48BA-A07F-621B5DCBBDC9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestBlazorApp", "TestBlazorApp\TestBlazorApp.csproj", "{682ADEDC-AE1F-46C9-9F0D-7DE297BAC82D}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -25,6 +27,10 @@ Global {0E18AA5B-2E9A-48BA-A07F-621B5DCBBDC9}.Debug|Any CPU.Build.0 = Debug|Any CPU {0E18AA5B-2E9A-48BA-A07F-621B5DCBBDC9}.Release|Any CPU.ActiveCfg = Release|Any CPU {0E18AA5B-2E9A-48BA-A07F-621B5DCBBDC9}.Release|Any CPU.Build.0 = Release|Any CPU + {682ADEDC-AE1F-46C9-9F0D-7DE297BAC82D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {682ADEDC-AE1F-46C9-9F0D-7DE297BAC82D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {682ADEDC-AE1F-46C9-9F0D-7DE297BAC82D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {682ADEDC-AE1F-46C9-9F0D-7DE297BAC82D}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/SiemensIXBlazor.sln.licenseheader b/SiemensIXBlazor.sln.licenseheader new file mode 100644 index 0000000..b18cfab --- /dev/null +++ b/SiemensIXBlazor.sln.licenseheader @@ -0,0 +1,20 @@ +extensions: .cs .js +// ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- + +extensions: .razor +@* ----------------------------------------------------------------------- +// SPDX-FileCopyrightText: 2024 Siemens AG +// +// SPDX-License-Identifier: MIT +// +// This source code is licensed under the MIT license found in the +// LICENSE file in the root directory of this source tree. +// ----------------------------------------------------------------------- +*@ diff --git a/SiemensIXBlazor/Components/DatePicker/DatePicker.razor.cs b/SiemensIXBlazor/Components/DatePicker/DatePicker.razor.cs index 9d7cfcd..31e8826 100644 --- a/SiemensIXBlazor/Components/DatePicker/DatePicker.razor.cs +++ b/SiemensIXBlazor/Components/DatePicker/DatePicker.razor.cs @@ -26,7 +26,7 @@ public partial class DatePicker [Parameter] public string EventDelimiter { get; set; } = " - "; [Parameter] - public static string Format { get; set; } = "yyyy/MM/dd"; + public string Format { get; set; } = "yyyy/MM/dd"; [Parameter] public string? From { get; set; } [Parameter] diff --git a/SiemensIXBlazor/Components/DateTimePicker/DateTimePicker.razor.cs b/SiemensIXBlazor/Components/DateTimePicker/DateTimePicker.razor.cs index ce1553a..ec4822f 100644 --- a/SiemensIXBlazor/Components/DateTimePicker/DateTimePicker.razor.cs +++ b/SiemensIXBlazor/Components/DateTimePicker/DateTimePicker.razor.cs @@ -22,11 +22,11 @@ public partial class DateTimePicker [Parameter, EditorRequired] public string Id { get; set; } = string.Empty; [Parameter] - public static string DateFormat { get; set; } = "yyyy/MM/dd"; + public string DateFormat { get; set; } = "yyyy/MM/dd"; [Parameter] public string EventDelimiter { get; set; } = " - "; [Parameter] - public string From { get; set; } = DateTime.Now.ToString(DateFormat); + public string From { get; set; } = DateTime.Now.ToString("yyyy/MM/dd"); [Parameter] public string? MaxDate { get; set; } [Parameter] diff --git a/SiemensIXBlazor/Components/Group/GroupItem.razor.cs b/SiemensIXBlazor/Components/Group/GroupItem.razor.cs index 5bf4e76..02c6b91 100644 --- a/SiemensIXBlazor/Components/Group/GroupItem.razor.cs +++ b/SiemensIXBlazor/Components/Group/GroupItem.razor.cs @@ -32,7 +32,7 @@ public partial class GroupItem [Parameter] public EventCallback SelectedChangeEvent { get; set; } - private async void ItemClicked() + public async void ItemClicked() { await SelectedChangeEvent.InvokeAsync(Id); } From 75c249968a8331065c058cdad79a6e6472f57971 Mon Sep 17 00:00:00 2001 From: emregokrem Date: Tue, 28 May 2024 10:27:39 +0300 Subject: [PATCH 2/2] Remove test app from sln file fix --- SiemensIXBlazor.sln | 2 -- 1 file changed, 2 deletions(-) diff --git a/SiemensIXBlazor.sln b/SiemensIXBlazor.sln index e2b455b..376c81d 100644 --- a/SiemensIXBlazor.sln +++ b/SiemensIXBlazor.sln @@ -11,8 +11,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{9AA3C4E1 EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SiemensIXBlazor.Tests", "SiemensIXBlazor.Tests\SiemensIXBlazor.Tests.csproj", "{0E18AA5B-2E9A-48BA-A07F-621B5DCBBDC9}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestBlazorApp", "TestBlazorApp\TestBlazorApp.csproj", "{682ADEDC-AE1F-46C9-9F0D-7DE297BAC82D}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU