def testSwitchableBecomesResolved(self): with scopedVat(testingVat()): p, r = makePromise() self.assertFalse(isResolved(p)) r.resolve(IntObject(42)) self.assertTrue(isResolved(p))
def testRefEqualitySettled(self): with scopedVat(testingVat()): first, r = makePromise() r.resolve(IntObject(42)) second, r = makePromise() r.resolve(IntObject(42)) self.assertEqual(optSame(first, second), EQUAL)
def testSwitchableChains(self): with scopedVat(testingVat()): p, r = makePromise() p2, r2 = makePromise() r.resolve(p2) self.assertFalse(isResolved(p)) r2.resolve(IntObject(42)) self.assertTrue(isResolved(p))
def testPromise(self): with scopedVat(testingVat()): p, r = makePromise() self.assertFalse(isSettled(p))
def testUnwrapListPromise(self): with scopedVat(testingVat()): p = makeNear(wrapList([])) self.assertEqual(unwrapList(p), [])
def testUnwrapMapPromise(self): with scopedVat(testingVat()): p = makeNear(ConstMap({})) self.assertEqual(unwrapMap(p).items(), [])
def testUnwrapBoolPromise(self): with scopedVat(testingVat()): p = makeNear(wrapBool(False)) self.assertFalse(unwrapBool(p))
def testUnwrapIntPromise(self): with scopedVat(testingVat()): p = makeNear(IntObject(42)) self.assertEqual(unwrapInt(p), 42)
def testUnwrapListPromise(self): with scopedVat(testingVat()): p = makeNear(ConstList([])) self.assertEqual(unwrapList(p), [])
def testRefEquality(self): with scopedVat(testingVat()): first, r = makePromise() second, r = makePromise() self.assertEqual(optSame(first, second), NOTYET)
def testResolveNear(self): with scopedVat(testingVat()): p = makeNear(wrapBool(False)) self.assertFalse(resolution(p).isTrue())
def testPromiseResolved(self): with scopedVat(testingVat()): p, r = makePromise() r.resolve(IntObject(42)) self.assertTrue(p.isSettled())
def testPromise(self): with scopedVat(testingVat()): p, r = makePromise() self.assertFalse(p.isSettled())
def testPromiseResolved(self): with scopedVat(testingVat()): p, r = makePromise() r.resolve(IntObject(42)) self.assertTrue(isSettled(p))
def testRefEqualityReflexive(self): with scopedVat(testingVat()): p, r = makePromise() self.assertEqual(optSame(p, p), EQUAL)
def testPromoteToDoublePromise(self): with scopedVat(testingVat()): p = makeNear(DoubleObject(4.2)) self.assertAlmostEqual(promoteToDouble(p), 4.2)