bool buildGamingComputerTest2() { ComputerBuilder *builder = new GamingComputerBuilder(); builder->createComputer(); Computer *computer = builder->getResult(); Ram* ram = computer->getRamSet().getRamSticks(); int amountOfRam = 0; for (int i = 0; i < computer->getRamSet().getNumberOfRamSticks(); ++i) { amountOfRam += ram[i].getRamSize(); } if (amountOfRam >= 16) { delete builder; delete computer; return true; } delete builder; delete computer; return false; }
bool buildServerTest1() { ComputerBuilder *builder = new ServerBuilder(); builder->createComputer(); Computer *computer = builder->getResult(); Ram* ram = computer->getRamSet().getRamSticks(); int amountOfRam = 0; for (int i = 0; i < computer->getRamSet().getNumberOfRamSticks(); ++i) { amountOfRam += ram[i].getRamSize(); } if (256 == amountOfRam) { HardDrive** drives = computer->getHardDriveSet().getHardDrives(); int amountOfHardDriveSpace = 0; for (int i = 0; i < computer->getHardDriveSet().getNumberOfHardDrives(); ++i) { amountOfHardDriveSpace += drives[i]->getHardDriveSize(); } if (13440 == amountOfHardDriveSpace) { delete builder; delete computer; return true; } } delete builder; delete computer; return false; }
bool createBuilderTest() { ComputerBuilder *builder = new OfficeComputerBuilder(); builder->createComputer(); Computer *computer = builder->getResult(); bool success = (2 == computer->getRamSet().getNumberOfRamSticks()) && (1 == computer->getHardDriveSet().getNumberOfHardDrives()); delete builder; delete computer; return success; }
bool computerRamDeepCopyTest() { Computer* computer = new Computer(); Ram* ram = new Ram[4]; ram[0] = Ram("HyperX FURY", 1866, 8); ram[1] = Ram("HyperX FURY", 1600, 8); ram[2] = Ram("HyperX FURY", 1866, 8); ram[3] = Ram("HyperX FURY", 1866, 4); computer->setRAM(ram, 4); std::string expected = "Ram: Number Of Sticks: 4\n"; expected += "Slot 1: HyperX FURY, Frequency: 1866 Mhz, Size: 8 GB\n"; expected += "Slot 2: HyperX FURY, Frequency: 1600 Mhz, Size: 8 GB\n"; expected += "Slot 3: HyperX FURY, Frequency: 1866 Mhz, Size: 8 GB\n"; expected += "Slot 4: HyperX FURY, Frequency: 1866 Mhz, Size: 4 GB"; delete[] ram; std::string actual = std::string(computer->getRamSet().getPartInformation()); delete computer; return expected == actual; }