public void Query_TaskAsync_WithException_InTask() { var ctx = new ServerSideAsyncDomainContext(TestURIs.ServerSideAsync); var exceptionFirstQuery = ctx.GetQueryableRangeWithExceptionTaskQuery(); const int expectedErrorCode = 24; string expectedMessage = "GetQueryableRangeWithExceptionTask"; var load = ctx.Load(exceptionFirstQuery, throwOnError: false); this.EnqueueConditional(() => load.IsComplete); this.EnqueueCallback(() => { Assert.IsNotNull(load.Error, "Exception is null"); var dex = ((DomainException)load.Error); Assert.AreEqual(expectedMessage, dex.Message, "Wrong error message"); Assert.AreEqual(expectedErrorCode, dex.ErrorCode, "Wrong error code"); }); this.EnqueueTestComplete(); }
public void Query_TaskAsync() { var ctx = new ServerSideAsyncDomainContext(TestURIs.ServerSideAsync); var normalQuery = ctx.GetRangeQuery(); var asyncQuery = ctx.GetQueryableRangeQuery(); var normalLoad = ctx.Load(normalQuery); var asyncLoad = ctx.LoadAsync(asyncQuery); this.EnqueueConditional(() => normalLoad.IsComplete); this.EnqueueConditional(() => asyncLoad.IsCompleted); this.EnqueueCallback(() => { Assert.IsNull(normalLoad.Error, "Normal load failed"); Assert.IsNull(asyncLoad.Exception, "Async load failed"); CollectionAssert.AreEquivalent(normalLoad.Entities.ToArray(), asyncLoad.Result); Assert.IsTrue(normalLoad.Entities.Any(), "No entities loaded"); Assert.AreEqual(normalLoad.TotalEntityCount, asyncLoad.Result.TotalEntityCount, "TotalEntityCount different"); }); this.EnqueueTestComplete(); }