public ScanAndSignEnqueuerFactsBase() { _topicClientMock = new Mock <ITopicClient>(); _serializerMock = new Mock <IBrokeredMessageSerializer <ScanAndSignMessage> >(); _logger = Mock.Of <ILogger <ScanAndSignEnqueuer> >(); _configurationAccessorMock = new Mock <IOptionsSnapshot <ScanAndSignEnqueuerConfiguration> >(); _configuration = new ScanAndSignEnqueuerConfiguration(); _configurationAccessorMock .SetupGet(ca => ca.Value) .Returns(_configuration); _target = new ScanAndSignEnqueuer( _topicClientMock.Object, _serializerMock.Object, _configurationAccessorMock.Object, _logger); _validationRequest = new NuGetValidationRequest(Guid.NewGuid(), 42, "somepackage", "someversion", "https://example.com/testpackage.nupkg"); _owners = new List <string> { "Billy", "Bob" }; _serializedMessage = new BrokeredMessageWrapper("somedata"); _serializerMock .Setup(s => s.Serialize(It.IsAny <ScanAndSignMessage>())) .Callback <ScanAndSignMessage>(m => _capturedMessage = m) .Returns(_serializedMessage); _topicClientMock .Setup(tc => tc.SendAsync(It.IsAny <IBrokeredMessage>())) .Callback <IBrokeredMessage>(m => _capturedBrokeredMessage = m) .Returns(Task.CompletedTask); }
public void MinScheduledEnqueueTimeUtcWorks() { var message = new BrokeredMessageWrapper("data"); message.ScheduledEnqueueTimeUtc = DateTimeOffset.MinValue; Assert.True(message.ScheduledEnqueueTimeUtc < DateTimeOffset.Now); }
public void DoesNotMessUpScheduledEnqueueTimeUtc() { var now = DateTimeOffset.Now; var message = new BrokeredMessageWrapper("data"); message.ScheduledEnqueueTimeUtc = now; Assert.Equal(now, message.ScheduledEnqueueTimeUtc); }
public void ForcesUtcOnScheduledEnqueueTimeUtc() { var now = DateTimeOffset.Now; var nowUtc = now.UtcDateTime; var message = new BrokeredMessageWrapper("data"); message.ScheduledEnqueueTimeUtc = now; Assert.Equal(DateTimeKind.Utc, message.BrokeredMessage.ScheduledEnqueueTimeUtc.Kind); Assert.Equal(nowUtc, message.BrokeredMessage.ScheduledEnqueueTimeUtc); Assert.Equal(TimeSpan.Zero, message.ScheduledEnqueueTimeUtc.Offset); }
public static BrokeredMessage ConvertToMessage(this RaisedEvent @event) { var stream = new PreservedMemoryStream(); using (var streamWriter = new StreamWriter(stream)) using (var writer = new JsonTextWriter(streamWriter)) { serialiser.Serialize(writer, @event); writer.Flush(); } //We hand ownership of the stream to the brokered message. It is responsible for cleanly disposing of the resource. var msg = new BrokeredMessageWrapper(new Microsoft.ServiceBus.Messaging.BrokeredMessage(stream, true)); msg.Properties[propEventType] = @event.Event.GetType(); msg.Properties[propTransactionId] = @event.TransactionId; return msg; }
public void it_will_deserialise_a_brokered_msg_to_a_raised_event() { var body = @"{""Thumbprint"":""3BBADAF3-C41E-4697-9552-8E28439D2FDC"",""Event"":{""$type"":""Test.Honeycomb.Azure.DummyEvent, Test.Honeycomb.Azure"",""Prop"":""value""},""RaisedTimestamp"":""2013-01-14T21:46:22+00:00"",""TransactionId"":""txid""}"; var stream = new PreservedMemoryStream(); using (var sw = new StreamWriter(stream)) sw.Write(body); var expected = new BrokeredMessageWrapper(new BrokeredMessage(stream, true)); var actual = expected.ConvertToEvent(); actual.Event.ShouldBeType<DummyEvent>(); ((DummyEvent) actual.Event).Prop.ShouldEqual("value"); actual.RaisedTimestamp.ShouldEqual(new DateTimeOffset(2013, 01, 14, 21, 46, 22, TimeZoneInfo.Utc.BaseUtcOffset)); actual.TransactionId.ShouldEqual("txid"); }
public void DefaultScheduledEnqueueTimeUtcIsNotInTheFuture() { var message = new BrokeredMessageWrapper("data"); Assert.True(message.ScheduledEnqueueTimeUtc <= DateTimeOffset.Now); }