asp.net mvc 5 单元测试小例子
2024-10-21 14:28:32
using System.Collections.Generic; using System.Linq; using Microsoft.VisualStudio.TestTools.UnitTesting; namespace TestingDemo.Tests { [TestClass] public class AdminControllerTests { [TestMethod] public void CanChangeLoginName() { // Arrange (set up a scenario) User user = new User() { LoginName = "Bob" }; FakeRepository repositoryParam = new FakeRepository(); repositoryParam.Add(user); AdminController target = new AdminController(repositoryParam); string oldLoginParam = user.LoginName; string newLoginParam = "Joe"; // Act (attempt the operation) target.ChangeLoginName(oldLoginParam, newLoginParam); // Assert (verify the result) Assert.AreEqual(newLoginParam, user.LoginName); Assert.IsTrue(repositoryParam.DidSubmitChanges); } } /// <summary> /// 模仿接口的实现 /// </summary> class FakeRepository : IUserRepository { public List<User> Users = new List<User>(); public bool DidSubmitChanges = false; public void Add(User user) { Users.Add(user); } public User FetchByLoginName(string loginName) { return Users.First(m => m.LoginName == loginName); } public void SubmitChanges() { DidSubmitChanges = true; } } }
最新文章
- Best code水题之路
- UWP学习记录2-设计和UI之布局
- NYOJ 536 开心的mdd(DP)
- 纯HTML页面为了避免频繁前后台Ajax交互方案
- C# SqlHelper
- 运行第一个Hadoop程序,WordCount
- Oracle 10g体系结构及安全管理
- Codeforces Round #389(div 2)
- uva 10671 - Grid Speed(dp)
- Digi. Certificates: Key pairs usages
- hdu_1019Least Common Multiple(最小公倍数)
- Redis的部署
- [自用]多项式类数学相关(定理&;证明&;板子)
- java(MyEclipse)创建webservice和测试webservice
- Linux CentOS7 安装wkhtmltopdf工具
- leetcode python 007
- Django项目中使用celery做异步任务
- hdu-2063-过山车(匈牙利算法)
- django面试四
- MySql安装完成后,Navicat连接不上的问题
热门文章
- Node学习笔记:建立TCP服务器和客户端之间的通信
- mac 终端光标在单词之间移动
- apache kafka系列之在zookeeper中存储结构
- day43 数据库学习egon的博客 视图、触发器、事务、存储过程、函数
- 高阶组件 Higher-order Components (HOC) 知识点
- Ansible 常用模块之ping(四)
- ORACLE SQL Developer日期显示格式不全
- [转]Python中yield的解释
- Java生成PDF文档(表格、列表、添加图片等)
- Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(3)