Example #1
0
        public async Task PropagateTestAsync(string type, int x, int y, int expectedCount)
        {
            var propagator = new PropagateManager(PropagateManager.DefaultNeighborsGetter);
            var drops      = new Dictionary <WaterDrop, PointInt> {
                { new WaterDrop(0.1), new PointInt(x, y) }
            };

            var newDrops = await propagator.PropagateAsync(_maps[type], drops);

            Assert.Equal(expectedCount, newDrops.Count);
        }
Example #2
0
        public async Task PropagateAsyncCancelTest()
        {
            var propagator = new PropagateManager(PropagateManager.DefaultNeighborsGetter);
            var drops      = new Dictionary <WaterDrop, PointInt> {
                { new WaterDrop(0.1), new PointInt(2, 2) }
            };

            var cts = new CancellationTokenSource();

            cts.Cancel();

            await Assert.ThrowsAnyAsync <OperationCanceledException>(() => propagator.PropagateAsync(_maps["plato"], drops, cts.Token));
        }