Ejemplo n.º 1
0
        public async Task Test1()
        {
            var order = Generator.NewOrder();

            await using var client = new EventHubProducerClient(_config["Azure:EventHubs:ConnectionString"], "orders");
            var publisher = new Publisher(client);
            await publisher.Publish("CreateOrder", order, DateTimeOffset.UtcNow);

            var blob = new BlobServiceClient(_config["Azure:EventHubs:StorageConnectionString"]);

            await using var service = new EventProcessorClient(
                            await blob.StoreFor("service-a"),
                            EventHubConsumerClient.DefaultConsumerGroupName,
                            _config["Azure:EventHubs:ConnectionString"],
                            "orders")
                                      .AttachTo(new ServiceA(publisher), "CreateOrder");
            await service.Start();

            await using var test = new EventProcessorClient(
                            await blob.StoreFor("test"),
                            EventHubConsumerClient.DefaultConsumerGroupName,
                            _config["Azure:EventHubs:ConnectionString"],
                            "orders")
                                   .AttachTo <OrderCreated>("OrderCreated");
            await test.Start();

            await test.Assert(x => x.Should().BeEquivalentTo(order));
        }