public void SaveLoad_ReleationsDto() { var diagramDto = new DiagramDataDto { Classifiers = new List<ClassifierDto> { CarDto, TireDto }, }; var serializer = new JsonSerializer(); var json = serializer.SaveDto(diagramDto); var newDiagramDto = serializer.LoadDto(json); var loadedCar = newDiagramDto.Classifiers[0]; var loadedTire = newDiagramDto.Classifiers[1]; var relation = loadedCar.Associations.Single(); Assert.AreSame(loadedCar, relation.Start); Assert.AreSame(loadedTire, relation.End); Assert.AreEqual("has", relation.Name); Assert.AreEqual(RelationType.Aggregation, relation.RelationType); Assert.AreEqual(Multiplicity.ZeroToMany, relation.EndMultiplicity); }
public void SaveLoad_MethodDtos() { var diagramDto = new DiagramDataDto { Classifiers = new List<ClassifierDto> { StringDto,IntegerDto,ServiceDto } }; var serializer = new JsonSerializer(); var content = serializer.SaveDto(diagramDto); var restoredDtos = serializer .LoadDto(content) .Classifiers .ToList(); var service = restoredDtos.Single(x => x.Name == "Service"); // ensure that classifiers references are reused Assert.AreSame(restoredDtos[0], service.Methods[0].Parameters[0].Type); // ensure that all method data was read correctly Assert.AreEqual(service.Methods[0],ServiceDto.Methods[0]); }