Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro ao executar o SpecRunner com o código do curso

Estou usando a versão 2.8.0 do jasmine e tentando rodar o código do curso.

Arquivo MaiorEMenor.js

function MaiorEMenor() {

    var menor;
    var maior;

    var clazz = {

        encontra : function(numeros) {

            menor = Number.MAX_VALUE;
            maior = Number.MIN_VALUE;

            for (var x=0; x>numeros.size; x++) {
                if(num < menor) menor = num;
                else if(num > maior) maior = num;
            });
        },

        pegaMenor : function() { return menor; },
        pegaMaior : function() { return maior; }
    };

    return clazz;
}

Arquivo MaiorEMenorSpec.js

describe("MaiorEMenor", function(){

  it("Deve entender numeros em ordem sequencial", function() {
    var algoritimo = new MaiorEMenor();

    algoritimo.encontra(5,15,11,7);
    expect(algoritimo.pegaMaior()).toEqual(15);
    expect(algoritimo.pegaMenor()).toEqual(5);
  });

});

Arquivo SpecRunner.html

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Jasmine Spec Runner v2.8.0</title>

  <link rel="shortcut icon" type="image/png" href="lib/jasmine-2.8.0/jasmine_favicon.png">
  <link rel="stylesheet" href="lib/jasmine-2.8.0/jasmine.css">

  <script src="lib/jasmine-2.8.0/jasmine.js"></script>
  <script src="lib/jasmine-2.8.0/jasmine-html.js"></script>
  <script src="lib/jasmine-2.8.0/boot.js"></script>

  <!-- include source files here... -->
  <script src="src/MaiorEMenor.js"></script>

  <!-- include spec files here... -->
  <script src="spec/MaiorEMenorSpec.js"></script>

</head>

<body>
</body>
</html>

Resultado

1 spec, 1 failure
Spec List | Failures
MaiorEMenor Deve entender numeros em ordem sequencial
ReferenceError: MaiorEMenor is not defined
ReferenceError: MaiorEMenor is not defined
    at UserContext.<anonymous> (file:///E:/Desenvolvimento/alura/jasmine/spec/MaiorEMenorSpec.js:4:26)
    at attempt (file:///E:/Desenvolvimento/alura/jasmine/lib/jasmine-2.8.0/jasmine.js:4289:46)
    at QueueRunner.run (file:///E:/Desenvolvimento/alura/jasmine/lib/jasmine-2.8.0/jasmine.js:4217:20)
    at QueueRunner.execute (file:///E:/Desenvolvimento/alura/jasmine/lib/jasmine-2.8.0/jasmine.js:4199:10)
    at Spec.queueRunnerFactory (file:///E:/Desenvolvimento/alura/jasmine/lib/jasmine-2.8.0/jasmine.js:909:35)
    at Spec.execute (file:///E:/Desenvolvimento/alura/jasmine/lib/jasmine-2.8.0/jasmine.js:526:10)
    at UserContext.fn (file:///E:/Desenvolvimento/alura/jasmine/lib/jasmine-2.8.0/jasmine.js:5340:37)
    at attempt (file:///E:/Desenvolvimento/alura/jasmine/lib/jasmine-2.8.0/jasmine.js:4297:26)
    at QueueRunner.run (file:///E:/Desenvolvimento/alura/jasmine/lib/jasmine-2.8.0/jasmine.js:4217:20)
    at QueueRunner.execute (file:///E:/Desenvolvimento/alura/jasmine/lib/jasmine-2.8.0/jasmine.js:4199:10)
2 respostas
solução!

Instalei o Visual Studio Code e consegui achar o erro de sintaxe.

Segue correção realizada

        encontra : function(numeros) {

            menor = Number.MAX_VALUE;
            maior = Number.MIN_VALUE;

            for (x=0; x>numeros.size; x++) {
                if(num < menor) menor = num;
                else if(num > maior) maior = num;
            };
        },

Tire o Else if, ele está aí de proposito.