public async Task DelistStock() { var mockRepository = new MockRepository(MockBehavior.Strict); var stockId = Guid.NewGuid(); var messageHandler = mockRepository.Create <IRestClientMessageHandler>(); messageHandler.Setup(x => x.PostAsync <DelistStockCommand>( It.Is <string>(x => x == "stocks/" + stockId + "/delist"), It.Is <DelistStockCommand>(x => x.Id == stockId && x.DelistingDate == new Date(2000, 01, 02)))) .Returns(Task.CompletedTask) .Verifiable(); var resource = new StockResource(messageHandler.Object); var delist = new DelistStockCommand() { Id = stockId, DelistingDate = new Date(2000, 01, 02), }; await resource.DelistStock(delist); mockRepository.Verify(); }
public void DelistStock() { var command = new DelistStockCommand() { Id = _Stock.Id, DelistingDate = new Date(2012, 01, 01) }; var response = _Controller.DelistStock(_Stock.Id, command); response.Should().BeOkResult(); }
public void DelistStockValidationError() { var command = new DelistStockCommand() { Id = _ValidationErrorId, DelistingDate = new Date(2012, 01, 01) }; var response = _Controller.DelistStock(_MissingStockId, command); response.Should().BeBadRequestObjectResult(); }
public void DelistStockInvalidId() { var command = new DelistStockCommand() { Id = _MissingStockId, DelistingDate = new Date(2012, 01, 01) }; var response = _Controller.DelistStock(_MissingStockId, command); response.Should().BeNotFoundResult(); }
public ActionResult DelistStock([FromRoute] Guid id, [FromBody] DelistStockCommand command) { // Check id in URL and id in command match if (id != command.Id) { return(BadRequest("Id in command doesn't match id on URL")); } var result = _StockService.DelistStock(id, command.DelistingDate); return(result.ToActionResult()); }
public void DeserializeDelistStockCommand() { var serializer = new RestClientSerializer(); var id = Guid.NewGuid(); var json = "{\"id\":\"" + id + "\"," + "\"delistingDate\":\"2013-01-02\"}"; var command = serializer.Deserialize <DelistStockCommand>(json); var expected = new DelistStockCommand() { Id = id, DelistingDate = new Date(2013, 01, 02) }; command.Should().BeEquivalentTo(expected); }
public void SerializeDelistStockCommand() { var serializer = new RestClientSerializer(); var id = Guid.NewGuid(); var command = new DelistStockCommand() { Id = id, DelistingDate = new Date(2013, 01, 02) }; var json = JToken.Parse(serializer.Serialize(command)); var expectedJson = JToken.Parse("{\"id\":\"" + id + "\"," + "\"delistingDate\":\"2013-01-02\"}"); json.Should().BeEquivalentTo(expectedJson); }
public async Task DelistStock(DelistStockCommand command) { await _MessageHandler.PostAsync <DelistStockCommand>("stocks/" + command.Id.ToString() + "/delist", command); }