假设我有以下JSON和handlebars.js模板:
{
rootPath: '/some/path/',
items:[ {
title: 'Hello World',
href: 'hello-world'
}, {
title: 'About',
href: 'about'
}, {
title: 'Latest News',
href: 'latest-news'
}
}
Run Code Online (Sandbox Code Playgroud)
<script id="test-template" type="text/x-handlebars-template">
<ul class="nav">
{{#each items}}
<li><a href="{{../rootPath}}{{href}}">{{title}}</a></li>
{{/each}}
</ul>
</script>
Run Code Online (Sandbox Code Playgroud)
上面的模板工作,直到我想要过滤项目 - 让我们说有2个列表一个奇数,另一个甚至,这里是一个奇怪的简单模板:
<script id="test-template" type="text/x-handlebars-template">
<ul class="nav">
{{#each items}}
{{#isOdd @index}}
<li><a href="{{../rootPath}}{{href}}">{{title}}</a></li>
{{/isOdd}}
{{/each}}
</ul>
</script>
Run Code Online (Sandbox Code Playgroud)
和注册助手:
// isOdd, helper to identify Odd items
Handlebars.registerHelper('isOdd', function (rawValue, options) {
if (+rawValue % 2) {
return options.fn(this);
} else …Run Code Online (Sandbox Code Playgroud) 我正在尝试在UnitTests中编写一些TestMethods,它们共享一个公共静态资源的单个实例.
在我的单元测试的构造函数中,我实例化了另一个C#项目中的公共静态.然后我的所有测试都访问这个公共静态.
但是,似乎在该UnitTest类中为每个TestMethod实例化了一个新的Test Class实例.
有没有办法允许这些测试共享公共静态的同一个实例?
或者我应该使用另一种技术来测试服务?
**更新**
好吧,似乎我正在使用错误的方法来实现我想要的目标.
我已经安装了UnitTests,它们正在单独测试,没有任何共享资源,它们正在按预期工作.
我想要实现的是一种测试并发连接到服务的方法,该服务将通过Web服务/ HTTP接口公开或通过TcpListener直接连接以传递序列化的byte [].
每个连接的客户端通过服务相互交互.
这些测试仅用于测试虚拟客户端的可靠性和互操作性,其级别低于公开的网络接口.
该服务已被包装到一些公共静态对象中,这些对象公开与通过网络接口公开的功能相同的功能.
我需要一种方法来创建将连接到这些对象的虚拟客户端,并根据响应断言不同的结果.
我有一个属性,比如MyList,类型List<int>.
在set属性的子句中,执行一些其他逻辑.
我想在修改List时执行相同的逻辑.
public class MyType
{
public List<int> MyList
{
get { return _MyList; }
set
{
listUpdate();
_MyList = value;
}
}
private List<int> _MyList
private void listUpdate()
{
// Do something...
}
}
Run Code Online (Sandbox Code Playgroud)
我知道我可以创建自己的类继承List<T>并覆盖所有修改它的方法,List但是想知道是否有人有更好的想法?