Exemplo n.º 1
0
        public async Task AddingMultipleResourcesToPoolShouldMakeThemAvailable()
        {
            var pool = new ResourcePool <string>();

            Assert.Equal(0, pool.ItemCount);

            var test1 = "test1";
            var test2 = "test2";
            var test3 = "test3";

            pool.Add(test1);
            Assert.Equal(1, pool.ItemCount);

            var rented1 = await pool.RentAsync();

            Assert.Equal(test1, rented1);

            pool.AddRange(new[] { test2, test3 });
            var rented2 = await pool.RentAsync();

            Assert.Equal(test2, rented2);

            var rented3 = await pool.RentAsync();

            Assert.Equal(test3, rented3);
        }
Exemplo n.º 2
0
        public async Task AddingResourceToPoolShouldMakeItAvailable()
        {
            var pool = new ResourcePool <string>();

            Assert.Equal(0, pool.ItemCount);

            var expected = "test";

            pool.Add(expected);
            Assert.Equal(1, pool.ItemCount);
            var rented = await pool.RentAsync();

            Assert.Equal(expected, rented);
        }