public void BuildsCustomComputer() { // Arrange var computerBuilder = new ComputerBuilder(); // Act var computer = computerBuilder .Motherboard(new OEMMotherboard()) .Ram(new OEMRam("16GB")) .GraphicsCard(new OEMGraphicsCard("8GB")) .HardDiskDrive(new OEMHDD("1TB")) .CPU(new CPU("Intel i7")) .Build(); // Assert Assert.Equal("OEMMotherboard, 16GB RAM, 8GB graphics card, 1TB HDD, Intel i7", computer.HardwareInfo()); }
public void BuildsCustomComputerWithNonOEMParts() { // Arrange var computerBuilder = new ComputerBuilder(); // Act var computer = computerBuilder .Motherboard(new MotherBoard("Gigabyte")) .Ram(new Ram("Kingstone 32GB")) .GraphicsCard(new GraphicsCard("Nvidia 16GB")) .HardDiskDrive(new HDD("Seagate 1TB")) .CPU(new CPU("Intel i7")) .Build(); // Assert Assert.Equal ( "Gigabyte, Kingstone 32GB RAM, Nvidia 16GB graphics card, Seagate 1TB HDD, Intel i7", computer.HardwareInfo() ); }