public void ValidateMethodSadPath1() { // Null senderMessage Action act = () => TestCloudEvent.Validate(null); act.Should().ThrowExactly <ArgumentNullException>().WithMessage("*senderMessage*"); }
public void ValidateMethodHappyPath2() { var senderMessage = new SenderMessage("Hello, world!"); senderMessage.Headers.Add(CloudEvent.SpecVersionAttribute, "1.0"); senderMessage.Headers.Add(CloudEvent.IdAttribute, "MyId"); senderMessage.Headers.Add(CloudEvent.SourceAttribute, "http://MySource"); senderMessage.Headers.Add(CloudEvent.TypeAttribute, "MyType"); senderMessage.Headers.Add(CloudEvent.TimeAttribute, DateTime.UtcNow.ToString("O")); Action act = () => TestCloudEvent.Validate(senderMessage); act.Should().NotThrow(); }
public void ValidateMethodSadPath4() { // Missing Source var senderMessage = new SenderMessage("Hello, world!"); senderMessage.Headers.Add(CloudEvent.SpecVersionAttribute, "1.0"); senderMessage.Headers.Add(CloudEvent.IdAttribute, "MyId"); senderMessage.Headers.Add(CloudEvent.TypeAttribute, "MyType"); senderMessage.Headers.Add(CloudEvent.TimeAttribute, DateTime.UtcNow); Action act = () => TestCloudEvent.Validate(senderMessage); act.Should().ThrowExactly <CloudEventValidationException>(); }
public void ValidateMethodHappyPath3() { // Non-default protocol binding var senderMessage = new SenderMessage("Hello, world!"); senderMessage.Headers.Add("test-" + CloudEvent.SpecVersionAttribute, "1.0"); senderMessage.Headers.Add("test-" + CloudEvent.IdAttribute, "MyId"); senderMessage.Headers.Add("test-" + CloudEvent.SourceAttribute, new Uri("http://MySource")); senderMessage.Headers.Add("test-" + CloudEvent.TypeAttribute, "MyType"); senderMessage.Headers.Add("test-" + CloudEvent.TimeAttribute, DateTime.UtcNow); var mockProtocolBinding = new Mock <IProtocolBinding>(); mockProtocolBinding.Setup(m => m.GetHeaderName(It.IsAny <string>())).Returns <string>(header => "test-" + header); Action act = () => TestCloudEvent.Validate(senderMessage, mockProtocolBinding.Object); act.Should().NotThrow(); }
public void ValidateMethodSadPath6() { // Missing Time var senderMessage = new SenderMessage("Hello, world!"); senderMessage.Headers.Add("test-" + CloudEvent.SpecVersionAttribute, "1.0"); senderMessage.Headers.Add("test-" + CloudEvent.IdAttribute, "MyId"); senderMessage.Headers.Add("test-" + CloudEvent.SourceAttribute, new Uri("http://MySource")); senderMessage.Headers.Add("test-" + CloudEvent.TypeAttribute, "MyType"); var mockProtocolBinding = new Mock <IProtocolBinding>(); mockProtocolBinding.Setup(m => m.GetHeaderName(It.IsAny <string>())).Returns <string>(header => "test-" + header); Action act = () => TestCloudEvent.Validate(senderMessage, mockProtocolBinding.Object); act.Should().NotThrow(); senderMessage.Headers.Should().ContainKey("test-" + CloudEvent.TimeAttribute).WhichValue.Should().NotBeNull(); }