var assert = require("assert"); var prefix = require("../index.js"); describe("browser-prefix", function() { it("doesn't mess with things without @prefix", function(done) { var str = "foo: bar; prefix: none;"; if (str !== prefix(str)) throw "Input string doesn't match output string."; done(); }); it("manages basic prefixing", function(done) { assert.equal( prefix("@prefix foo: bar;"), "-moz-foo: bar; -webkit-foo: bar; -o-foo: bar; "+ "-ms-foo: bar; foo: bar;" ); done(); }); it("deals with multiple @prefixes on the same line", function(done) { assert.equal( prefix("@prefix foo: bar; @prefix bar: foo;"), "-moz-foo: bar; -webkit-foo: bar; -o-foo: bar; "+ "-ms-foo: bar; foo: bar; "+ "-moz-bar: foo; -webkit-bar: foo; -o-bar: foo; "+ "-ms-bar: foo; bar: foo;" ); done(); }); it("deals with multiple @prefixes on separate lines", function(done) { assert.equal( prefix( "@prefix foo: bar;\n"+ "foo: bar;\n"+ "@prefix bar: foo;" ), "-moz-foo: bar; -webkit-foo: bar; -o-foo: bar; "+ "-ms-foo: bar; foo: bar;\n"+ "foo: bar;\n"+ "-moz-bar: foo; -webkit-bar: foo; -o-bar: foo; "+ "-ms-bar: foo; bar: foo;" ); done(); }); it("deals with tabs for indentation", function(done) { assert.equal( prefix( "\t\t\t"+ "@prefix foo: bar;" ), "\t\t\t"+ "-moz-foo: bar; -webkit-foo: bar; -o-foo: bar; "+ "-ms-foo: bar; foo: bar;" ); done(); }); it("deals with spaces for indentation", function(done) { assert.equal( prefix( " "+ "@prefix foo: bar;" ), " "+ "-moz-foo: bar; -webkit-foo: bar; -o-foo: bar; "+ "-ms-foo: bar; foo: bar;" ); done(); }); });