var chai = require("chai"), plugin = require("chai-jq"); chai.use(plugin); var expect = require("chai").expect, Browser = require("zombie"); describe("Testes de conteúdo de HTML da barra", function() { var browser, barraUrl, barraFonte, barraJS; barraUrl = "http://localhost/"; barraFonte = barraUrl + "static/opensans-bold.woff"; barraJS = barraUrl +"barra.js"; beforeEach(function() { browser = new Browser(); browser.runScripts = true; browser.headers = {}; }); it("trocar o conteúdo do #barra-brasil pelo correto em pt-BR", function(done) { browser.headers['Accept-Language'] = 'pt-BR'; browser.visit(barraUrl, function() { var inner_barra = browser.document.getElementById("barra-brasil"); expect(inner_barra.innerHTML).to.equal("
Brasil
Serviços
"); done(); }); }); it("trocar o conteúdo do #barra-brasil pelo correto em en", function(done) { browser.headers['Accept-Language'] = 'en'; browser.visit(barraUrl, function() { var inner_barra = browser.document.getElementById("barra-brasil"); expect(inner_barra.innerHTML).to.equal("
Brazil
Services
"); done(); }); }); it("trocar o conteúdo do #barra-brasil pelo correto em es", function(done) { browser.headers['Accept-Language'] = 'es'; browser.visit(barraUrl, function() { var inner_barra = browser.document.getElementById("barra-brasil"); expect(inner_barra.innerHTML).to.equal("
Brasil
Servicios
"); done(); }); }); it("trocar o conteúdo do #barra-brasil pelo correto em fr", function(done) { browser.headers['Accept-Language'] = 'fr'; browser.visit(barraUrl, function() { var inner_barra = browser.document.getElementById("barra-brasil"); expect(inner_barra.innerHTML).to.equal("
Brésil
Prestations de service
"); done(); }); }); it("trocar o conteúdo do #footer-brasil pelo correto", function(done) { browser.visit(barraUrl, function() { var inner_footer = browser.document.getElementById("footer-brasil"); expect(inner_footer.innerHTML).to.equal(""); done(); }); }); it("A fonte deve estar respondendo", function(done) { browser.visit(barraFonte, function() { expect(browser.response.headers._headers[10]).to.include.members(['etag']); expect(browser.response.headers._headers[11]).to.include.members(['access-control-allow-origin', '*']); expect(browser.response.headers._headers[12]).to.include.members(["content-type","application/x-font-woff"]); expect(browser.response.status).to.equal(200); done(); }); }); it("Cabeçalhos HTTP do barra.js devem estar ok", function(done) { browser.headers['Accept-Encoding'] = 'gzip'; browser.visit(barraJS, function() { expect(browser.response.headers._headers[9]).to.include.members(['content-encoding', 'gzip']); expect(browser.response.headers._headers[10]).to.include.members(['cache-control','max-age=604800, public']); expect(browser.response.headers._headers[12]).to.include.members(['etag']); expect(browser.response.headers._headers[13]).to.include.members(['access-control-allow-origin', '*']); expect(browser.response.status).to.equal(200); done(); }); }); it("Língua default é pt-br", function(done) { browser.visit(barraJS, function() { expect(browser.response.headers._headers[15]).to.include.members(['content-language', 'pt-br']); expect(browser.response.status).to.equal(200); done(); }); }); it("Barra.js responde 304", function(done) { browser.visit(barraJS, function() { browser.headers['If-Modified-Since'] = browser.response.headers._headers[7][1]; browser.visit(barraJS, function() { expect(browser.response.status).to.equal(304); done(); }); }); }); it("a barra deve ter o css correto para visualizacao maior que 960px"); it("a barra deve ter o css correto para visualização menor que 960px"); it("o rodapé deve ter o css correto", function(done) { browser.visit(barraUrl, function() { var $ = browser.window.$; var logo_acesso_footer = $("#wrapper-footer-brasil a span"); expect(logo_acesso_footer).to.have.$class("logo-acesso-footer"); var logo_brasil_footer = $("#wrapper-footer-brasil a").next().children(); expect(logo_brasil_footer).to.have.$class("logo-brasil-footer"); done(); }); }); });