// 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(@"", 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(@"", 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(@"", 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(@"", html);
}
}
}