public void SyncAsyncMismatchTest() { var model = new EdmModel(); var payloadDescriptors = Test.OData.Utils.ODataLibTest.TestFeeds.GetFeeds(model, true /*withTypeNames*/); var testDescriptors = this.PayloadDescriptorsToReaderDescriptors(payloadDescriptors); this.CombinatorialEngineProvider.RunCombinations( testDescriptors, this.ReaderTestConfigurationProvider.ExplicitFormatConfigurations, (testDescriptor, testConfiguration) => { var message = TestReaderUtils.CreateInputMessage(testConfiguration, testDescriptor, this.Settings, false); message.IgnoreSynchronousError = true; message.TestStream.IgnoreSynchronousError = true; Exception exception = TestExceptionUtils.RunCatching(() => { using (ODataMessageReaderTestWrapper messageReaderWrapper = TestReaderUtils.CreateMessageReader(message, model, testConfiguration)) { var feedReader = messageReaderWrapper.MessageReader.CreateODataFeedReader(model.EntityContainer.FindEntitySet("MyBaseType"), model.EntityTypes().FirstOrDefault()); if (testConfiguration.Synchronous) { feedReader.Read(); feedReader.ReadAsync(); } else { feedReader.ReadAsync(); feedReader.Read(); } } }); var expected = ODataExpectedExceptions.ODataException("ODataReaderCore_AsyncCallOnSyncReader"); ExceptionVerifier.VerifyExceptionResult(expected, exception); }); }