所以我可以添加另一个断言f x = 1,这个断言在INT部分是不一致的。我想测试不一致性,这样我就可以否定当前的赋值,让Z3回溯并尝试其他选项。
我的问题是,我如何做到这一点。在测试中,如果不一致,我使用Z3_get_context_assignment(ctx)获取当前赋值,并断言被否定的赋值以触发回溯。我观察到的是,Z3确实发现了不一致之处,但当前赋值只包含关于(= 1 (f x))之类的大小部分的断言。或者换句话说,关于像(= x set1) and not (= x set2)这
我正在尝试编写两个jest函数,它们期望一个对象是某个类型的实例,或者不是。 正面的例子expectInstanceOf很有魅力,但是负面的expectNotInstanceOf就不一样了。 export function expectInstanceOf<E, A extends unknown[]>(obj: unknown, type: new (...args: A) => E): asserts obj is E {}
export function expectNotInstanceOf