public function chamaElevador() { $elevador = new Elevador(); if ($this->andarAtualPessoa < $elevador->andarAtualElevador) { $elevador->desce($this->andarAtualPessoa); } else { $elevador->sobe($this->andarAtualPessoa); } }
public static function getInstance() { if (self::$instance == NULL) { self::$instance = new self(); } return self::$instance; }
public function testElevador() { /** * Testar o andar do elevador */ $this->assertEquals(5, Elevador::getInstance()->getAndarElevador()); $pessoa = new Pessoa(3); $pessoa->chamaElevador(); /** * Testar o andar do elevador */ $this->assertEquals(3, Elevador::getInstance()->getAndarElevador()); /** * Testar se existem pessoas no elevador - nesse momento não deve existir */ $this->assertFalse(Elevador::getInstance()->temPessoas()); $pessoa->entrarNoElevador(); /** * Testar o andar do elevador */ $this->assertEquals(3, Elevador::getInstance()->getAndarElevador()); /** * Testar se existem pessoas no elevador - nesse momento deve existir 1 pessoa */ $this->assertTrue(Elevador::getInstance()->temPessoas()); $pessoa->vaiParaAndar(8); /** * Testar o andar do elevador */ $this->assertEquals(8, Elevador::getInstance()->getAndarElevador()); $pessoa->sairElevador(); /** * Testar o andar do elevador */ $this->assertEquals(8, Elevador::getInstance()->getAndarElevador()); /** * Testar se existem pessoas no elevador - nesse momento não deve existir */ $this->assertFalse(Elevador::getInstance()->temPessoas()); }