簡體   English   中英

使用 IStringLocalizer 進行單元測試 class<t></t>

[英]Unit Testing class with IStringLocalizer<T>

我有一個帶有構造函數的 class ,它注入了一個IStringLocalizer<T>

public MailBuilder(IStringLocalizer<MailTexte> stringLocalizer)
{ ... }

我正在嘗試設置假的字符串本地化器:

A.CallTo(() => this.stringLocalizer["ConfirmationMailTitel"]).Returns(subject);

但我得到了消息

IReturnValueArgumentValidationConfiguration LocalizedString 不包含“返回”的定義

IStringLocalizer 的交互如下所示:

LocalizedString this[string name] { get; }

如何在 FakeItEasy 中正確設置此索引器?

提前致謝

您收到異常是因為您很可能沒有返回正確的類型(即subject

如界面所示,索引器返回一個LocalizedString

這意味着需要相應地配置模擬。

//...

var stringLocalizer = A.Fake<IStringLocalizer<MailTexte>>();
key = "ConfirmationMailTitel";
var localizedString = new LocalizedString(key, "desired localised value here");

A.CallTo(() => stringLocalizer["ConfirmationMailTitel"]).Returns(localizedString);

//...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM