public void Test_PubSubMessenger_InvalidOperation() { // Arrange var messenger = new PubSubMessenger(new PubSubJsonAuthConfig() { JsonAuthFile = new ConfigurationBuilder().AddJsonFile("appSettings.json").Build()["CredentialPath"], ProjectId = "12345" }); // Act/Assert Assert.Throws <InvalidOperationException>(() => messenger.Receive <object>(null, null)); Assert.Throws <ArgumentException>(() => messenger.ReceiveOne <object>("").GetAwaiter().GetResult()); Assert.Throws <InvalidOperationException>(() => messenger.StartReceive <object>()); Assert.Throws <InvalidOperationException>(() => messenger.ReceiveOne <object>()); Assert.Throws <InvalidOperationException>(() => messenger.ReceiveBatchEntity <object>().GetAwaiter().GetResult()); // Additional runs here purely to increase code coverage. Not particularly useful tests but it does confirm functionality. messenger.Complete <object>(null).GetAwaiter().GetResult(); messenger.CompleteAll(new object[] { null }).GetAwaiter().GetResult(); messenger.Abandon(new object()); messenger.Error <object>(null).GetAwaiter().GetResult(); messenger.Error(new object()).GetAwaiter().GetResult(); var props = messenger.ReadProperties <object>(null); props.Should().BeNull(); }
public void Test_PubSubMessenger_Abandon() { // Arrange using var pubSub = new PubSubMessenger(new PubSubConfig { ProjectId = "test" }); var test = "test"; // Act pubSub.Messages.AddOrUpdate(test, null); pubSub.Abandon(test).GetAwaiter().GetResult(); pubSub.Abandon <object>(null).GetAwaiter().GetResult(); // done for branch coverage. // Act/Assert pubSub.Messages.ContainsKey(test).Should().BeFalse(); pubSub.Messages.Count.Should().Be(0); pubSub.Dispose(); // done for branch coverage. }
public void Test_PubSubMessenger_AbandonMessageEntity1() { // Arrange using var pubSub = new PubSubMessenger(new PubSubConfig { ProjectId = "test" }); var test = new PubSubMessageEntity <string> { Body = "test" }; // Act pubSub.Messages.AddOrUpdate(test.Body, null); pubSub.Abandon(test).GetAwaiter().GetResult(); // Act/Assert pubSub.Messages.ContainsKey(test).Should().BeFalse(); pubSub.Messages.Count.Should().Be(0); }