コード例 #1
0
        public async Task Should_enrich_events(AssetEvent @event, EnrichedAssetEventType type)
        {
            var envelope = Envelope.Create <AppEvent>(@event).SetEventStreamNumber(12);

            A.CallTo(() => assetLoader.GetAsync(@event.AssetId, 12))
            .Returns(new AssetEntity());

            var result = await sut.CreateEnrichedEventAsync(envelope) as EnrichedAssetEvent;

            Assert.Equal(type, result !.Type);
        }
コード例 #2
0
        public async Task Should_enrich_events(ContentEvent @event, EnrichedContentEventType type)
        {
            var envelope = Envelope.Create <AppEvent>(@event).SetEventStreamNumber(12);

            A.CallTo(() => contentLoader.GetAsync(@event.ContentId, 12))
            .Returns(new ContentEntity {
                SchemaId = SchemaMatch
            });

            var result = await sut.CreateEnrichedEventAsync(envelope) as EnrichedContentEvent;

            Assert.Equal(type, result !.Type);
        }
コード例 #3
0
        public async Task Should_not_create_job_if_not_triggered_with_precheck()
        {
            var rule = ValidRule();

            var @event = Envelope.Create(new ContentCreated());

            A.CallTo(() => ruleTriggerHandler.Trigger(@event.Payload, rule.Trigger, ruleId))
            .Returns(false);

            var job = await sut.CreateJobAsync(rule, ruleId, @event);

            Assert.Null(job);

            A.CallTo(() => ruleTriggerHandler.CreateEnrichedEventAsync(A <Envelope <AppEvent> > .Ignored))
            .MustNotHaveHappened();
        }
コード例 #4
0
        public async Task Should_enrich_events(SchemaEvent @event, EnrichedSchemaEventType type)
        {
            var envelope = Envelope.Create <AppEvent>(@event).SetEventStreamNumber(12);

            var result = await sut.CreateEnrichedEventAsync(envelope);

            Assert.Equal(type, ((EnrichedSchemaEvent)result).Type);
        }
コード例 #5
0
        public async Task Should_create_event_with_name()
        {
            var envelope = Envelope.Create <AppEvent>(new RuleManuallyTriggered());

            var result = await sut.CreateEnrichedEventAsync(envelope);

            Assert.Equal("Manual", result !.Name);
        }
コード例 #6
0
        public async Task Should_create_enriched_event()
        {
            var @event = new AppUsageExceeded {
                CallsCurrent = 80, CallsLimit = 120
            };

            var result = await sut.CreateEnrichedEventAsync(Envelope.Create <AppEvent>(@event)) as EnrichedUsageExceededEvent;

            Assert.Equal(@event.CallsCurrent, result !.CallsCurrent);
            Assert.Equal(@event.CallsLimit, result !.CallsLimit);
        }
コード例 #7
0
        public async Task Should_enrich_events(AssetEvent @event, EnrichedAssetEventType type)
        {
            var envelope = Envelope.Create <AppEvent>(@event).SetEventStreamNumber(12);

            var assetGrain = A.Fake <IAssetGrain>();

            A.CallTo(() => grainFactory.GetGrain <IAssetGrain>(@event.AssetId, null))
            .Returns(assetGrain);

            A.CallTo(() => assetGrain.GetStateAsync(12))
            .Returns(A.Fake <IAssetEntity>().AsJ());

            var result = await sut.CreateEnrichedEventAsync(envelope);

            Assert.Equal(type, ((EnrichedAssetEvent)result).Type);
        }
コード例 #8
0
        public async Task Should_enrich_events(ContentEvent @event, EnrichedContentEventType type)
        {
            var envelope = Envelope.Create <AppEvent>(@event).SetEventStreamNumber(12);

            var contentGrain = A.Fake <IContentGrain>();

            A.CallTo(() => grainFactory.GetGrain <IContentGrain>(@event.ContentId, null))
            .Returns(contentGrain);

            A.CallTo(() => contentGrain.GetStateAsync(12))
            .Returns(J.Of <IContentEntity>(new ContentEntity {
                SchemaId = SchemaMatch
            }));

            var result = await sut.CreateEnrichedEventAsync(envelope);

            Assert.Equal(type, ((EnrichedContentEvent)result).Type);
        }