Exemple #1
0
        public async Task Newly_Created_Bucket_are_PUT_to_the_server_when_updated()
        {
            //Arrange
            var updatedId = -1;

            var httpclient = new Mock <IHttpClient>();

            httpclient
            .Setup(fake => fake.PostJsonAsync(BUCKETS, It.IsAny <Bucket>()))
            .ReturnsAsync(new Bucket {
                Id = 42
            });
            httpclient
            .Setup(mock => mock.PutJsonAsync(It.IsAny <string>(), It.IsAny <Bucket>()))
            .Callback <string, Bucket>((_, updatedBucket) => updatedId = updatedBucket.Id);


            var reader        = new BucketSync(httpclient.Object);
            var createdBucket = await reader.CreateEmptyAsync();

            //Act
            createdBucket.Add(new Story());

            //Assert
            httpclient.Verify(mock => mock.PutJsonAsync(BUCKETS, It.IsAny <Bucket>()), Times.Once);
            Assert.AreEqual(createdBucket.Id, updatedId);
        }
Exemple #2
0
        public async Task CreateEmpty_creates_a_new_Bucket_and_returns_a_SyncableBucket()
        {
            //Arrange
            var httpclient = new Mock <IHttpClient>();

            httpclient
            .Setup(fake => fake.PostJsonAsync(BUCKETS, It.IsAny <Bucket>()))
            .ReturnsAsync(new Bucket {
                Id = 42
            });
            var syncer = new BucketSync(httpclient.Object);

            //Act
            var created = await syncer.CreateEmptyAsync();

            //Assert
            Assert.IsNotNull(created);
        }
Exemple #3
0
        public async Task CreateEmpty_posts_the_new_bucket_to_the_buckets_endpoint()
        {
            //Arrange
            var httpclient = new Mock <IHttpClient>();

            httpclient
            .Setup(fake => fake.PostJsonAsync(BUCKETS, It.IsAny <Bucket>()))
            .ReturnsAsync(new Bucket {
                Id = 42
            });
            var syncer = new BucketSync(httpclient.Object);

            //Act
            _ = await syncer.CreateEmptyAsync();

            //Assert
            httpclient.Verify(mock => mock.PostJsonAsync(BUCKETS, It.IsAny <Bucket>()), Times.Once);
        }
Exemple #4
0
        public async Task CreateEmpty_sets_the_returned_id_on_the_returned_bucket()
        {
            //Arrange
            var idForNew   = 42;
            var httpclient = new Mock <IHttpClient>();

            httpclient
            .Setup(fake => fake.PostJsonAsync(BUCKETS, It.IsAny <Bucket>()))
            .ReturnsAsync(new Bucket {
                Id = idForNew
            });
            var syncer = new BucketSync(httpclient.Object);

            //Act
            var created = await syncer.CreateEmptyAsync();

            //Assert
            Assert.AreEqual(idForNew, created.Id);
        }