的TDD练习又开始了。回头看看上一次留下的任务。
  To-Do-List:
  猜测数字
  输入验证
  生成答案
  输入次数
  输出猜测结果
  我们把输入验证和随机生成答案搞定。
  新建ValidationTest文件。
  分析需求:(1)不重复。(2)4位(3)数字。(4)不为空。
  按照我们分析出来的4个明确点我们开始写CASE。
  注意命名!
[TestClass]
public class ValidatorTest
{
private Validator validator;
[TestInitialize]
public void Init()
{
validator = new Validator();
}
[TestMethod]
public void should_return_input_must_be_four_digits_when_input_figures_digit_is_not_four_digits()
{
var input = "29546";
validator.Validate(input);
var actual = validator.ErrorMsg;
Assert.AreEqual("the input must be four digits.", actual);
}
[TestMethod]
public void should_return_input_must_be_fully_digital_when_input_is_not_all_digital()
{
var input = "a4s5";
validator.Validate(input);
var actual = validator.ErrorMsg;
Assert.AreEqual("the input must be fully digital.", actual);
}
[TestMethod]
public void should_return_input_can_not_be_empty_when_input_is_empty()
{
var input = "";
validator.Validate(input);
var actual = validator.ErrorMsg;
Assert.AreEqual("the input can't be empty.", actual);
}
[TestMethod]
public void should_return_input_can_not_contain_duplicate_when_input_figures_contain_duplicate()
{
var input = "2259";
validator.Validate(input);
var actual = validator.ErrorMsg;
Assert.AreEqual("the input figures can't contain duplicate.", actual);
}
}