小编Con*_*sed的帖子

使用AAA的Rhino Mocks AssertWasCalled(多次)在属性getter上

我有一个模拟对象作为构造函数参数传递给另一个对象.

如何测试已调用模拟对象的属性?这是我目前使用的代码:

INewContactAttributes newContact = MockRepository.GenerateMock<INewContactAttributes>();
newContact.Stub(x => x.Forenames).Return("One Two Three");
someobject.ConsumeContact(newContact);
newContact.AssertWasCalled(x => { var dummy = x.Forenames; });
Run Code Online (Sandbox Code Playgroud)

这有效,除非在"someobject"中,Forenames属性的getter被多次使用.那时我得到"Rhino.Mocks.Exceptions.ExpectationViolationException:INewContactAttributes.get_Forenames();期望#1,实际#2 .."

简单地使用

newContact.AssertWasCalled(x => { var dummy = x.Forenames; }, options => options.Repeat.Any());
Run Code Online (Sandbox Code Playgroud)

不起作用,并给出以下错误:

"期望已从等待期望列表中删除,您是否调用了Repeat.Any()?AssertWasCalled()不支持这种情况."

那么我该如何迎合多次通话呢?

c# getter unit-testing rhino-mocks properties

51
推荐指数
2
解决办法
2万
查看次数

使用C#在String或Char上使用ToString()时,在什么情况下需要提供CultureInfo IFormatProvider?

用C#在什么情况下,我需要提供一个CultureInfo IFormatProvider使用时ToString()String还是Char

我通过数字或日期转换得到它,例如

(-10000.4).ToString(provider: new System.Globalization.CultureInfo("es-ES"));
(-10000.4).ToString(provider: new System.Globalization.CultureInfo("en-US"));

DateTime.Now.ToString(provider: new System.Globalization.CultureInfo("es-ES"));
DateTime.Now.ToString(provider: new System.Globalization.CultureInfo("en-US"));
Run Code Online (Sandbox Code Playgroud)

赠送:

-10000,4
-10000.4
01/05/2018 22:49:09
5/1/2018 10:49:09 PM
Run Code Online (Sandbox Code Playgroud)

但是以下内容如何:

"Some string".ToString(provider: new System.Globalization.CultureInfo("es-ES"));
"Some string".ToString(provider: new System.Globalization.CultureInfo("en-US"));
Run Code Online (Sandbox Code Playgroud)

我可能会使用哪些字符串受文化影响?

同样的char.

.net c# culture tostring

2
推荐指数
1
解决办法
76
查看次数

如何避免两次进行函数调用?

Haskell新手问题:是否有一种技术可以提高效率并避免对tail原始列表进行两次调用

func1 originalList =
    func2 (doSomething (tail originalList)) (doSomethingDifferent (tail originalList))

doSomething listA =
....

doSomethingDifferent listB =
....

func2 listA listB =
....
Run Code Online (Sandbox Code Playgroud)

haskell

1
推荐指数
1
解决办法
300
查看次数

标签 统计

c# ×2

.net ×1

culture ×1

getter ×1

haskell ×1

properties ×1

rhino-mocks ×1

tostring ×1

unit-testing ×1