Example #1
0
 public function chamaElevador()
 {
     $elevador = new Elevador();
     if ($this->andarAtualPessoa < $elevador->andarAtualElevador) {
         $elevador->desce($this->andarAtualPessoa);
     } else {
         $elevador->sobe($this->andarAtualPessoa);
     }
 }
Example #2
0
 public static function getInstance()
 {
     if (self::$instance == NULL) {
         self::$instance = new self();
     }
     return self::$instance;
 }
Example #3
0
 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());
 }