Created
May 5, 2012 00:34
-
-
Save heslei/2598779 to your computer and use it in GitHub Desktop.
Coding Dojo - 20120503 - Lâmpadas no corredor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" | |
| "http://www.w3.org/TR/html4/loose.dtd"> | |
| <html> | |
| <head> | |
| <script src="http://code.jquery.com/jquery-latest.js"></script> | |
| <link rel="stylesheet" href="http://code.jquery.com/qunit/git/qunit.css" type="text/css" media="screen" /> | |
| <script type="text/javascript" src="http://code.jquery.com/qunit/git/qunit.js"></script> | |
| <script> | |
| var corredor = { | |
| percorrerCorredor : function (quantidadeDeLampadas) { | |
| var lampadasDoCorredor = []; | |
| for (i = 1; i <= quantidadeDeLampadas; i++) { | |
| var raiz = Math.sqrt(i); | |
| var piso = Math.floor(raiz); | |
| if(raiz === piso){ | |
| lampadasDoCorredor.push(true); | |
| } else { | |
| lampadasDoCorredor.push(false); | |
| } | |
| } | |
| return lampadasDoCorredor; | |
| } | |
| } | |
| $(document).ready(function(){ | |
| test("para 1 lampada retorna para lampada 1 ligada", function() { | |
| var lampadas = 1; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = [true]; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| test("para 0 lampada retorna nenhuma lampada", function() { | |
| var lampadas = 0; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = []; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| test("para 2 lampadas retorna primeira ligada e a segunda desligada ", function() { | |
| var lampadas = 2; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = [true, false]; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| test("para 3 lampadas retorna primeira ligada, segunda desligada, terceira desligada ", function() { | |
| var lampadas = 3; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = [true, false, false]; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| test("para 4 lampadas retorna ligada, desligada, desligada, ligada", function() { | |
| var lampadas = 4; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = [true, false, false, true]; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| test("para 6 lampadas retorna ligada, desligada, desligada, ligada, desligada, desligada", function() { | |
| var lampadas = 6; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = [true, false, false, true, false, false]; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| test("para 8 lampadas retorna O..O....", function() { | |
| var lampadas = 8; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = [true, false, false, true, false, false, false, false]; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| test("para 9 lampadas retorna O..O....O", function() { | |
| var lampadas = 9; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = [true, false, false, true, false, false, false, false, true]; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| test("para 12 lampadas retorna O..O.... O...)", function() { | |
| var lampadas = 12; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = | |
| [ | |
| true, false, false, true, false, | |
| false, false, false, true, false, | |
| false, false | |
| ]; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| test("para 16 lampadas retorna O..O.... O......O)", function() { | |
| var lampadas = 16; | |
| var resultado = corredor.percorrerCorredor(lampadas); | |
| var esperado = | |
| [ | |
| true, false, false, true, false, | |
| false, false, false, true, false, | |
| false, false, false, false, false, | |
| true | |
| ]; | |
| deepEqual(resultado, esperado ); | |
| }); | |
| }); | |
| document.write(new Date()); | |
| </script> | |
| </head> | |
| <body> | |
| <h1 id="qunit-header">QUnit example</h1> | |
| <h2 id="qunit-banner"></h2> | |
| <div id="qunit-testrunner-toolbar"></div> | |
| <h2 id="qunit-userAgent"></h2> | |
| <ol id="qunit-tests"></ol> | |
| <div id="qunit-fixture">test markup, will be hidden</div> | |
| </body> | |
| </html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment