public void Test() { var id = Guid.NewGuid(); var createCommand = new CreateGameBoardCommand { FriendlyName = "Transformers", MinimumNumberOfPlayers = 4, MaximumNumberOfPlayers = 16, MaxValidStartDate = new DateTime(2015, 02, 01) }; var aggregate = new GameBoardAggregateRoot(id, createCommand.DehydrateCommand()); domainRepository.Save(aggregate); var savedAggregate = domainRepository.GetById<GameBoardAggregateRoot>(id); //ACT var result = sut.Create(savedAggregate); //ASSERT Assert.That(result.Version, Is.EqualTo(1)); var json = JsonConvert.DeserializeObject<IDictionary<string, object>>(result.JsonSerialization); Assert.That(json.ContainsKey("ActualNumberOfPlayers")); Assert.That(json.ContainsKey("MinimumNumberOfPlayers")); Assert.That(json.ContainsKey("MaximumNumberOfPlayers")); Assert.That(json.ContainsKey("StartDate")); Assert.That(json["ActualNumberOfPlayers"], Is.EqualTo(0)); Assert.That(json["MinimumNumberOfPlayers"], Is.EqualTo(4)); Assert.That(json["MaximumNumberOfPlayers"], Is.EqualTo(16)); Assert.That(json["StartDate"], Is.EqualTo(new DateTime(2015, 02, 01))); Assert.That(json.Keys.Count, Is.EqualTo(4)); }
public void Recreate_v2_typeChanged_From_V1_Snapshot() { var id = Guid.NewGuid(); var createCommand = new CreateGameBoardCommand { FriendlyName = "Transformers", MinimumNumberOfPlayers = 4, MaximumNumberOfPlayers = 16, MaxValidStartDate = new DateTime(2015, 02, 01) }; var aggregate = new GameBoardAggregateRoot(id, createCommand.DehydrateCommand()); domainRepository.Save(aggregate); var savedAggregate = domainRepository.GetById<GameBoardAggregateRoot>(id); var snapshot = sut.Create(savedAggregate); Exception receivedException = null; try { sut.Get<GameBoardAggregateRoot_V2TypeChanged>(snapshot); } catch (Exception exception) { receivedException = exception; } Assert.That(receivedException, Is.Not.Null); }