a575963da9
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
131 lines
3.3 KiB
C#
131 lines
3.3 KiB
C#
// Copyright (c) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information.
|
|
|
|
using System.Web.Mvc;
|
|
using Xunit;
|
|
|
|
namespace Microsoft.Web.Mvc.Controls.Test
|
|
{
|
|
public class DropDownListTest
|
|
{
|
|
[Fact]
|
|
public void NameProperty()
|
|
{
|
|
// TODO: This
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderWithNoNameNotInDesignModeThrows()
|
|
{
|
|
// TODO: This
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderWithNoNameInDesignModeRendersWithSampleData()
|
|
{
|
|
// Setup
|
|
DropDownList c = new DropDownList();
|
|
|
|
// Execute
|
|
string html = MvcTestHelper.GetControlRendering(c, true);
|
|
|
|
// Verify
|
|
Assert.Equal(@"<select>
|
|
<option>
|
|
Sample Item
|
|
</option>
|
|
</select>", html);
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderWithNoAttributes()
|
|
{
|
|
// Setup
|
|
DropDownList c = new DropDownList();
|
|
c.Name = "nameKey";
|
|
|
|
ViewDataContainer vdc = new ViewDataContainer();
|
|
vdc.Controls.Add(c);
|
|
vdc.ViewData = new ViewDataDictionary();
|
|
vdc.ViewData["nameKey"] = new SelectList(new[] { "aaa", "bbb", "ccc" }, "bbb");
|
|
|
|
// Execute
|
|
string html = MvcTestHelper.GetControlRendering(c, false);
|
|
|
|
// Verify
|
|
Assert.Equal(@"<select name=""nameKey"">
|
|
<option>
|
|
aaa
|
|
</option><option selected=""selected"">
|
|
bbb
|
|
</option><option>
|
|
ccc
|
|
</option>
|
|
</select>", html);
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderWithTextsAndValues()
|
|
{
|
|
// Setup
|
|
DropDownList c = new DropDownList();
|
|
c.Name = "nameKey";
|
|
|
|
ViewDataContainer vdc = new ViewDataContainer();
|
|
vdc.Controls.Add(c);
|
|
vdc.ViewData = new ViewDataDictionary();
|
|
vdc.ViewData["nameKey"] = new SelectList(
|
|
new[]
|
|
{
|
|
new { Text = "aaa", Value = "111" },
|
|
new { Text = "bbb", Value = "222" },
|
|
new { Text = "ccc", Value = "333" }
|
|
},
|
|
"Value",
|
|
"Text",
|
|
"222");
|
|
|
|
// Execute
|
|
string html = MvcTestHelper.GetControlRendering(c, false);
|
|
|
|
// Verify
|
|
Assert.Equal(@"<select name=""nameKey"">
|
|
<option value=""111"">
|
|
aaa
|
|
</option><option value=""222"" selected=""selected"">
|
|
bbb
|
|
</option><option value=""333"">
|
|
ccc
|
|
</option>
|
|
</select>", html);
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderWithNameAndIdRendersNameAndIdAttribute()
|
|
{
|
|
// Setup
|
|
DropDownList c = new DropDownList();
|
|
c.Name = "nameKey";
|
|
c.ID = "someID";
|
|
|
|
ViewDataContainer vdc = new ViewDataContainer();
|
|
vdc.Controls.Add(c);
|
|
vdc.ViewData = new ViewDataDictionary();
|
|
vdc.ViewData["nameKey"] = new SelectList(new[] { "aaa", "bbb", "ccc" }, "bbb");
|
|
|
|
// Execute
|
|
string html = MvcTestHelper.GetControlRendering(c, false);
|
|
|
|
// Verify
|
|
Assert.Equal(@"<select id=""someID"" name=""nameKey"">
|
|
<option>
|
|
aaa
|
|
</option><option selected=""selected"">
|
|
bbb
|
|
</option><option>
|
|
ccc
|
|
</option>
|
|
</select>", html);
|
|
}
|
|
}
|
|
}
|