Пример #1
0
    public async Task Single()
    {
        await DelayedTestDataBuilder.SendData(table);

        var reader = new DelayedQueueManager(table, SqlConnection);

        await using var result = await reader.Read(1);
        await Verify(result !.ToVerifyTarget());
    }
Пример #2
0
    public async Task Single_nulls()
    {
        await DelayedTestDataBuilder.SendNullData(table);

        var consumer = new DelayedQueueManager(table, SqlConnection);

        await using var result = await consumer.Consume();
        await Verify(result !.ToVerifyTarget());
    }
Пример #3
0
    public async Task Batch()
    {
        await DelayedTestDataBuilder.SendMultipleData(table);

        var consumer = new DelayedQueueManager(table, SqlConnection);
        var messages = new ConcurrentBag <IncomingDelayedVerifyTarget>();
        var result   = await consumer.Consume(size : 3,
                                              action : message => { messages.Add(message.ToVerifyTarget()); });

        Assert.Equal(3, result.Count);
        Assert.Equal(3, result.LastRowVersion);
        await Verify(messages.OrderBy(x => x.Due));
    }