Skip to content

Commit

Permalink
add test
Browse files Browse the repository at this point in the history
  • Loading branch information
ElderJames committed Sep 5, 2022
1 parent 81fa630 commit d0f45b5
Showing 1 changed file with 72 additions and 53 deletions.
125 changes: 72 additions & 53 deletions tests/AntDesign.Tests/tabs/TabsTests.razor
Original file line number Diff line number Diff line change
@@ -1,78 +1,97 @@
@inherits AntDesignTestBase
@code {
public TabsTests()
{
JSInterop.Setup<HtmlElement>(JSInteropConstants.GetDomInfo, _ => true)
.SetResult(new HtmlElement());
public TabsTests()
{
JSInterop.Setup<HtmlElement>(JSInteropConstants.GetDomInfo, _ => true)
.SetResult(new HtmlElement());

JSInterop.SetupVoid(JSInteropConstants.StyleHelper.AddClsToFirstChild, _ => true);
JSInterop.SetupVoid(JSInteropConstants.StyleHelper.AddCls, _ => true);
}
JSInterop.SetupVoid(JSInteropConstants.StyleHelper.AddClsToFirstChild, _ => true);
JSInterop.SetupVoid(JSInteropConstants.StyleHelper.AddCls, _ => true);
}

[Fact]
public void Render_tab_pane_without_forceRender()
{
var cut = Context.Render(
@<Tabs>
<TabPane Key="tab1" Tab="Tab 1">Tab Content 1</TabPane>
<TabPane Key="tab2" Tab="Tab 2">Tab Content 2</TabPane>
</Tabs>);
[Fact]
public void Render_tab_pane_without_forceRender()
{
var cut = Context.Render(
@<Tabs>
<TabPane Key="tab1" Tab="Tab 1">Tab Content 1</TabPane>
<TabPane Key="tab2" Tab="Tab 2">Tab Content 2</TabPane>
</Tabs>);

var paneElements = cut.FindAll(".ant-tabs-tabpane");
paneElements[0].TextContent.Trim().Should().Be("Tab Content 1");
paneElements[1].TextContent.Trim().Should().Be("");
var paneElements = cut.FindAll(".ant-tabs-tabpane");
paneElements[0].TextContent.Trim().Should().Be("Tab Content 1");
paneElements[1].TextContent.Trim().Should().Be("");

cut.FindAll("div.ant-tabs-tab")[1].Click();
var paneElements2 = cut.FindAll(".ant-tabs-tabpane");
paneElements2[0].TextContent.Trim().Should().Be("Tab Content 1");
paneElements2[1].TextContent.Trim().Should().Be("Tab Content 2");
}
cut.FindAll("div.ant-tabs-tab")[1].Click();
var paneElements2 = cut.FindAll(".ant-tabs-tabpane");
paneElements2[0].TextContent.Trim().Should().Be("Tab Content 1");
paneElements2[1].TextContent.Trim().Should().Be("Tab Content 2");
}

[Fact]
public void Render_tab_pane_wit_forceRender()
{
var cut = Context.Render(
@<Tabs>
<TabPane Key="tab1" Tab="Tab 1" ForceRender>Tab Content 1</TabPane>
<TabPane Key="tab2" Tab="Tab 2" ForceRender>Tab Content 2</TabPane>
</Tabs>);
[Fact]
public void Render_tab_pane_wit_forceRender()
{
var cut = Context.Render(
@<Tabs>
<TabPane Key="tab1" Tab="Tab 1" ForceRender>Tab Content 1</TabPane>
<TabPane Key="tab2" Tab="Tab 2" ForceRender>Tab Content 2</TabPane>
</Tabs>);

var paneElements = cut.FindAll(".ant-tabs-tabpane");
paneElements[0].TextContent.Trim().Should().Be("Tab Content 1");
paneElements[1].TextContent.Trim().Should().Be("Tab Content 2");
}
var paneElements = cut.FindAll(".ant-tabs-tabpane");
paneElements[0].TextContent.Trim().Should().Be("Tab Content 1");
paneElements[1].TextContent.Trim().Should().Be("Tab Content 2");
}

[Fact]
public void Render_tab_pane_with_tabTemplate()
{
var cut = Context.Render(
@<Tabs>
<TabPane Key="tab1">
<TabTemplate>Tab 1</TabTemplate>
</TabPane>
</Tabs>
);
@<Tabs>
<TabPane Key="tab1">
<TabTemplate>Tab 1</TabTemplate>
</TabPane>
</Tabs>
);

var tabElement = cut.Find(".ant-tabs-tab-btn");
tabElement.InnerHtml.Trim().Should().Be("Tab 1");
}

[Fact]
public void Bind_OnClose_event()
{
var closeTab = "";
Action<string> OnClose = (string key) => closeTab = key;
{
var closeTab = "";
Action<string> OnClose = (string key) => closeTab = key;

var cut = Context.Render(
@<Tabs Type="@TabType.EditableCard" OnClose="OnClose">
<TabPane Key="tab1" Tab="Tab 1">
</TabPane>
</Tabs>
);

var removeElement = cut.Find(".ant-tabs-tab-remove");
removeElement.Click();

var cut = Context.Render(
@<Tabs Type="@TabType.EditableCard" OnClose="OnClose">
<TabPane Key="tab1" Tab="Tab 1">
</TabPane>
</Tabs>
);
closeTab.Should().Be("tab1");
}

[Fact]
public async Task Render_tab_pane_with_aniamted()
{
var activeKey = "tab1";
var cut = Context.Render(
@<Tabs Animated @bind-ActiveKey="activeKey">
<TabPane Key="tab1" Tab="Tab 1"></TabPane>
<TabPane Key="tab2" Tab="Tab 2"></TabPane>
</Tabs>
);
var paneElements = cut.FindAll(".ant-tabs-tabpane");
paneElements[0].ClassList.Should().Contain("ant-tabs-tabpane-active");

var removeElement = cut.Find(".ant-tabs-tab-remove");
removeElement.Click();
cut.FindAll("div.ant-tabs-tab")[1].Click();

closeTab.Should().Be("tab1");
activeKey.Should().Be("tab2");
paneElements[1].OuterHtml.Should().Contain("visibility: hidden; height: 0px; overflow-y: hidden;");
}
}

0 comments on commit d0f45b5

Please sign in to comment.