/** @test */
 public function resultado_da_soma_modulo_11_esperado()
 {
     $valor_entrada = "14000000000000019";
     // 17 Posições (Nosso Numero)
     $resultado_esperado = 59;
     $this->assertEquals($resultado_esperado, Calculator::getResultadoSomaModulo11($valor_entrada));
     $valor_entrada = "005507";
     // 6 Posições (Código do Beneficiário)
     $resultado_esperado = 59;
     $this->assertEquals($resultado_esperado, Calculator::getResultadoSomaModulo11($valor_entrada));
     $valor_entrada = "005507722213334777777777";
     // 6 Posições (Código do Beneficiário)
     $resultado_esperado = 538;
     $this->assertEquals($resultado_esperado, Calculator::getResultadoSomaModulo11($valor_entrada));
     $valor_entrada = "1049324200000321120055077222133347777777771";
     $resultado_esperado = 788;
     $this->assertEquals($resultado_esperado, Calculator::getResultadoSomaModulo11($valor_entrada));
 }
Beispiel #2
0
 /**
  * @param string $nosso_numero_sem_dv
  * @return int
  */
 public function calculaDVNossoNumero($nosso_numero_sem_dv = NULL)
 {
     $peso_inferior = 2;
     $peso_superior = 9;
     if ($nosso_numero_sem_dv === NULL) {
         $nosso_numero = $this->getNossoNumeroSemDV();
     } else {
         $nosso_numero = $nosso_numero_sem_dv;
     }
     $soma_resultados = Calculator::getResultadoSomaModulo11($nosso_numero);
     $resto_divisao = $soma_resultados % 11;
     $valor_final = 11 - $resto_divisao;
     if ($valor_final > 9) {
         return 0;
     } else {
         return $valor_final;
     }
 }