コード例 #1
0
        public async Task PostNewMiner()
        {
            // Arrange
            var miner      = new Miner();
            var controller = new MinersController(_minerService.Object, _collectorService.Object);

            // Act
            var result = await controller.PostAsync(miner);

            // Assert
            _minerService.Verify(m => m.AddAsync(It.IsAny <Miner>(), CancellationToken.None));
            Assert.That(result, Has.Property(nameof(result.StatusCode)).EqualTo(200));
            Assert.That(result, Has.Property(nameof(result.Value)).EqualTo(miner));
        }
コード例 #2
0
        public async Task PostInvalidMiner()
        {
            // Arrange
            var miner      = new Miner();
            var controller = new MinersController(_minerService.Object, _collectorService.Object);

            controller.ModelState.AddModelError("test-key", "test-validation-message");

            // Act
            var result = await controller.PostAsync(miner);

            // Assert
            _minerService.Verify(m => m.AddAsync(It.IsAny <Miner>(), CancellationToken.None), Times.Never);
            Assert.That(result, Has.Property(nameof(result.StatusCode)).EqualTo(400));
            Assert.That(result, Has.Property(nameof(result.Value)).ContainKey("test-key"));
        }