public void Preload_test() { // arrange var maker = "Intel"; var processorSpeed = 500; var ramSize = 2000; processors[0] = new Dictionary<string, object> { { "Maker", maker}, { "Speed", processorSpeed}, { "RamId", 0 } }; rams[0] = new Dictionary<string, object> { { "Size", ramSize } }; var aggregatorProvider = aggregatorProviderMock.Object; var processorModel = new ProcessorModel(0, processorCollectionMock.Object); var ramModel = new RAMModel(0, ramCollectionMock.Object); var computer = new Computer(aggregatorProvider, processorModel); var ram = new RAM(aggregatorProvider, ramModel); aggregatorProvider.Save(computer, ram); // act computer.PreloadAgg(x => x.Maker, x => x.ProcessorSpeed, x => x.RAM); // assert computer.RAM.Size.Should().Be(ramSize); computer.ProcessorSpeed.Should().Be(processorSpeed); computer.Maker.Should().Be(maker); processorCollectionMock.Verify(x => x.GetFields(It.IsAny<Id>(), It.IsAny<string[]>()), Times.Once); processorCollectionMock.Verify(x => x.GetModelField(It.IsAny<Id>(), It.IsAny<string>()), Times.Never); ramCollectionMock.Verify(x => x.GetFields(It.IsAny<Id>(), It.IsAny<string[]>()), Times.Once); ramCollectionMock.Verify(x => x.GetModelField(It.IsAny<Id>(), It.IsAny<string>()), Times.Never); }
public void Preload_test() { // arrange var maker = "Intel"; var processorSpeed = 500; var ramSize = 2000; processors[0] = new Dictionary<string, object> { { "Maker", maker}, { "Speed", processorSpeed} }; rams[0] = new Dictionary<string, object> { { "Size", ramSize } }; var processor = new Processor(0, processorCollectionMock.Object); var ram = new RAM(0, ramCollectionMock.Object); var computer = new Computer(aggregatorProviderMock.Object, processor, ram); // act computer.PreloadAgg(x => x.Maker, x => x.ProcessorSpeed, x => x.RAMSize); // assert var sth = computer.Maker; var sth2 = computer.Maker; var sth3 = computer.Maker; computer.Maker.Should().Be(maker); computer.ProcessorSpeed.Should().Be(processorSpeed); computer.RAMSize.Should().Be(ramSize); processorCollectionMock.Verify(x => x.GetFields(It.IsAny<Id>(), It.IsAny<string[]>()), Times.Once()); ramCollectionMock.Verify(x => x.GetFields(It.IsAny<Id>(), It.IsAny<string[]>()), Times.Once()); }