我实际上正在开发一个Ionic应用程序。在这个上下文中,我实现了一个AlertService
类,它具有以下两个属性:
messageAlert: Alert;
errorAlert: Alert;
Alert
类是Ionic框架之一,所以我对它没有任何控制权。我的想法是通过类似下面的类的自制模拟来模拟Alert
类:
class AlertMock {
opts: Object;
presented: boolean;
constructor(opts) {
this.opts = opts;
this.presented = false;
}
present() {
this.presented = true;
}
dismiss() {
this.presented = false;
}
}
它允许我通过检查presented
属性的值来简单地测试警报状态。
但是,我如何向AlertService
表明它有两个Alert
属性类型为AlertMock
?我不知道是否有可能。但在我看来,能够像这样模拟类是非常基本的。我找到的每个主题都谈到了嘲弄服务。使用DI,将类型替换为另一个类型非常简单,但有没有任何机制可以使用Ionic框架的Alert
之类的简单类来完成它?
答案 0 :(得分:0)
导入并延伸var list1 = new List<int>();
list1.Add(100);
var temp = "ABC";
bool foundOne = false;
foreach( var i in list1)
{
if (i == 200 || temp == "ABC")
{
foundOne = true;
break;
}
}
// what value has foundOne here if the list has 0 elements or 1 elemnt?
中的Alert
:
AlertMock
在import { Alert } from ...
class AlertMock extends Alert {
opts: Object;
presented: boolean;
constructor(opts) {
this.opts = opts;
this.presented = false;
}
present() {
this.presented = true;
}
dismiss() {
this.presented = false;
}
}
:
AlertService