是否可以要求模拟物派遣绑定事件?

例如,给定此类:

class Person {
    [Bindable]
    public var name:String;
}

我想要模拟:

var mockPerson:Person = nice(Person);

派遣a propertyChangeEvent 当。。。的时候 name 字段是变化。

有帮助吗?

解决方案

正如您提到的,约束性事件是 PropertyChangeEvent, ,只需使用 PropertyChangeEvent.createUpdateEvent() 并将其与 .dispatches().

像这样:

mock(person).setter("name").arg(anything())
    .dispatches(PropertyChangeEvent.createUpdateEvent(person, "name", oldValue, newValue));

但是请注意 oldValuenewValue 将需要提供。

我认为,在这种情况下,将其视为绑定的捷径很高。唯一的棘手部分是保持上一个值。

如果您想自己解决这个问题,我建议看 AnswerDecorator 课程和子类。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top