public void TestBeforeDone() { FutureCall <string> f = FutureFactory.NewFuture <string>(); // Test properties Assert.False(f.Done); Assert.False(f.Success); Assert.False(f.HasError); // Test wait Assert.ExpectException(new TimeoutException("Wait timeout")); f.Wait(0.5f); }
public void TestSetResult() { FutureCall <string> f = FutureFactory.NewFuture <string>(); string result = "Succeess!"; f.SetResult(result); // Test properties after set result Assert.True(f.Done); Assert.True(f.Success); Assert.False(f.HasError); Assert.Equal(result, f.Result); Assert.ExpectException(new NotAllowedOperationException("Can't get result from succeeded future")); var e = f.Error; Assert.False(true, "Never called" + e); }