public function testZiskavanieZnamok() { $a = Znamka::fromString('A'); $this->assertEquals(1.0, $a->getNumerickaHodnota()); $b = Znamka::fromString('b'); $this->assertEquals(1.5, $b->getNumerickaHodnota()); $fx = Znamka::fromString('Fx'); $this->assertEquals(4, $fx->getNumerickaHodnota()); $nic = Znamka::fromString('nieco divne'); $this->assertEquals(null, $nic); }
/** * Prida predmet s danou znamkou, zarata do neohodnotenych ak * sa znamku nepodarilo rozpoznat alebo nie je vyplnena * @param string $castRoka do ktorej casti roka sa ma znamka zaratat * @param string $znamkaText nazov znamky (A, B, ...) * @param int $kredity pocet kreditov pre danu znamku */ public function add($castRoka, $znamkaText, $kredity) { Preconditions::check(in_array($castRoka, array(self::SEMESTER_LETNY, self::SEMESTER_ZIMNY, self::AKADEMICKY_ROK)), "Neplatná časť študijného roka."); $znamka = null; if ($znamkaText !== '') { $znamka = Znamka::fromString($znamkaText); } $this->obdobia[$castRoka]->add($kredity, $znamka); // Ak pridavame do akademickeho roka, tak hodnotu nechceme zaratat dvakrat if ($castRoka !== self::AKADEMICKY_ROK) { $this->obdobia[self::AKADEMICKY_ROK]->add($kredity, $znamka); } }