From 971f35d1659d7a5e4f46aa51c436c24b1700ebd3 Mon Sep 17 00:00:00 2001 From: Brendan Dahl Date: Fri, 23 Dec 2011 21:19:15 -0800 Subject: [PATCH] Add unit files to lint, fix lint errors. --- Makefile | 2 +- src/function.js | 19 ++-- test/unit/function_spec.js | 215 ++++++++++++++++++------------------- test/unit/obj_spec.js | 8 +- 4 files changed, 122 insertions(+), 122 deletions(-) diff --git a/Makefile b/Makefile index 0ad2eb09c..2ce3aba6f 100644 --- a/Makefile +++ b/Makefile @@ -129,7 +129,7 @@ browser-test: # # SRC_DIRS := . src utils web test examples/helloworld extensions/firefox \ - extensions/firefox/components extensions/chrome + extensions/firefox/components extensions/chrome test/unit GJSLINT_FILES = $(foreach DIR,$(SRC_DIRS),$(wildcard $(DIR)/*.js)) lint: gjslint --nojsdoc $(GJSLINT_FILES) diff --git a/src/function.js b/src/function.js index e9099a68a..af06a091f 100644 --- a/src/function.js +++ b/src/function.js @@ -336,15 +336,16 @@ var PDFFunction = (function PDFFunctionClosure() { }; }, - constructPostScript: function pdfFunctionConstructPostScript(fn, dict, xref) { + constructPostScript: function pdfFunctionConstructPostScript(fn, dict, + xref) { var domain = dict.get('Domain'); var range = dict.get('Range'); if (!domain) error('No domain.'); - if(!range) - error('No range.') + if (!range) + error('No range.'); var lexer = new PostScriptLexer(fn); var parser = new PostScriptParser(lexer); @@ -399,7 +400,7 @@ var FunctionCache = (function FunctionCache() { } FunctionCache.prototype = { has: function(key) { - return key in this.cache + return key in this.cache; }, get: function(key) { return this.cache[key]; @@ -446,8 +447,8 @@ var PostScriptStack = (function PostScriptStack() { // algorithm from http://jsfromhell.com/array/rotate var l = a.length, p = (Math.abs(p) >= l && (p %= l), p < 0 && (p += l), p), i, x; - for(; p; p = (Math.ceil(l / p) - 1) * p - l + (l = p)) - for(i = l; i > p; x = a[--i], a[i] = a[i - p], a[i - p] = x); + for (; p; p = (Math.ceil(l / p) - 1) * p - l + (l = p)) + for (i = l; i > p; x = a[--i], a[i] = a[i - p], a[i - p] = x); this.stack = this.stack.concat(a); } }; @@ -677,12 +678,12 @@ var PostScriptEvaluator = (function PostScriptEvaluator() { break; default: error('Unknown operator ' + operator); - break + break; } } return stack.stack; } - } + }; return PostScriptEvaluator; })(); @@ -741,7 +742,7 @@ var PostScriptParser = (function PostScriptParser() { // The true block is right after the 'if' so it just falls through on // true else it jumps and skips the true block. condition.push('jz', this.code.length); - } else if(this.accept(PostScriptTokenTypes.LBRACE)) { + } else if (this.accept(PostScriptTokenTypes.LBRACE)) { var jump = []; this.code.push(jump); var endOfTrue = this.code.length; diff --git a/test/unit/function_spec.js b/test/unit/function_spec.js index 7c336a65d..d34599437 100644 --- a/test/unit/function_spec.js +++ b/test/unit/function_spec.js @@ -4,37 +4,37 @@ 'use strict'; describe('function', function() { - beforeEach(function () { - this.addMatchers({ - toMatchArray: function(expected) { - var actual = this.actual; - if (actual.length != expected.length) - return false; - for (var i = 0; i < expected.length; i++) { - var a = actual[i], b = expected[i]; - if (isArray(b)) { - if (a.length != b.length) - return false; - for (var j = 0; j < a.length; j++) { - var suba = a[j], subb = b[j]; - if (suba !== subb) - return false - } - } else { - if (a !== b) - return false; - } - } - return true; - } - }); - }); + beforeEach(function() { + this.addMatchers({ + toMatchArray: function(expected) { + var actual = this.actual; + if (actual.length != expected.length) + return false; + for (var i = 0; i < expected.length; i++) { + var a = actual[i], b = expected[i]; + if (isArray(b)) { + if (a.length != b.length) + return false; + for (var j = 0; j < a.length; j++) { + var suba = a[j], subb = b[j]; + if (suba !== subb) + return false; + } + } else { + if (a !== b) + return false; + } + } + return true; + } + }); + }); describe('PostScriptParser', function() { function parse(program) { var stream = new StringStream(program); - var parser = new PostScriptParser(new PostScriptLexer(stream)); - return parser.parse(); + var parser = new PostScriptParser(new PostScriptLexer(stream)); + return parser.parse(); } it('parses empty programs', function() { var output = parse('{}'); @@ -44,180 +44,179 @@ describe('function', function() { var number = 999; var program = parse('{ ' + number + ' }'); var expectedProgram = [ - ['push', number] + ['push', number] ]; - expect(program).toMatchArray(expectedProgram); + expect(program).toMatchArray(expectedProgram); }); it('parses negative numbers', function() { var number = -999; var program = parse('{ ' + number + ' }'); var expectedProgram = [ - ['push', number] + ['push', number] ]; - expect(program).toMatchArray(expectedProgram); + expect(program).toMatchArray(expectedProgram); }); it('parses negative floats', function() { var number = 3.3; var program = parse('{ ' + number + ' }'); var expectedProgram = [ - ['push', number] + ['push', number] ]; - expect(program).toMatchArray(expectedProgram); + expect(program).toMatchArray(expectedProgram); }); it('parses operators', function() { var program = parse('{ sub }'); var expectedProgram = [ - ['sub'] + ['sub'] ]; - expect(program).toMatchArray(expectedProgram); + expect(program).toMatchArray(expectedProgram); }); it('parses if statements', function() { var program = parse('{ { 99 } if }'); var expectedProgram = [ - ['jz', 2], - ['push', 99] + ['jz', 2], + ['push', 99] ]; - expect(program).toMatchArray(expectedProgram); + expect(program).toMatchArray(expectedProgram); }); it('parses ifelse statements', function() { var program = parse('{ { 99 } { 44 } ifelse }'); var expectedProgram = [ - ['jz', 3], - ['push', 99], - ['j', 4], - ['push', 44], + ['jz', 3], + ['push', 99], + ['j', 4], + ['push', 44] ]; - expect(program).toMatchArray(expectedProgram); + expect(program).toMatchArray(expectedProgram); }); it('handles missing brackets', function() { - expect(function() { parse('{'); }).toThrow( - new Error('Unexpected symbol: found undefined expected 1.')); + expect(function() { parse('{'); }).toThrow( + new Error('Unexpected symbol: found undefined expected 1.')); }); }); describe('PostScriptEvaluator', function() { function evaluate(program) { var stream = new StringStream(program); - var parser = new PostScriptParser(new PostScriptLexer(stream)); - var code = parser.parse(); - var evaluator = new PostScriptEvaluator(code); - var output = evaluator.execute(); - console.log(output); - return output; + var parser = new PostScriptParser(new PostScriptLexer(stream)); + var code = parser.parse(); + var evaluator = new PostScriptEvaluator(code); + var output = evaluator.execute(); + return output; } it('pushes stack', function() { var stack = evaluate('{ 99 }'); var expectedStack = [99]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); it('handles if with true', function() { var stack = evaluate('{ 1 {99} if }'); var expectedStack = [99]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); it('handles if with false', function() { var stack = evaluate('{ 0 {99} if }'); var expectedStack = []; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); it('handles ifelse with true', function() { var stack = evaluate('{ 1 {99} {77} ifelse }'); var expectedStack = [99]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); it('handles ifelse with false', function() { var stack = evaluate('{ 0 {99} {77} ifelse }'); var expectedStack = [77]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); it('handles nested if', function() { var stack = evaluate('{ 1 {1 {77} if} if }'); var expectedStack = [77]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); - + it('abs', function() { var stack = evaluate('{ -2 abs }'); var expectedStack = [2]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); it('adds', function() { var stack = evaluate('{ 1 2 add }'); var expectedStack = [3]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); it('boolean ands', function() { var stack = evaluate('{ true false and }'); var expectedStack = [false]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); it('bitwise ands', function() { var stack = evaluate('{ 254 1 and }'); var expectedStack = [254 & 1]; - expect(stack).toMatchArray(expectedStack); - }); - // TODO atan - // TODO bitshift - // TODO ceiling - // TODO copy - // TODO cos - // TODO cvi - // TODO cvr - // TODO div + expect(stack).toMatchArray(expectedStack); + }); + // TODO atan + // TODO bitshift + // TODO ceiling + // TODO copy + // TODO cos + // TODO cvi + // TODO cvr + // TODO div it('duplicates', function() { var stack = evaluate('{ 99 dup }'); var expectedStack = [99, 99]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); - // TODO eq - it('exchanges', function() { + // TODO eq + it('exchanges', function() { var stack = evaluate('{ 44 99 exch }'); var expectedStack = [99, 44]; - expect(stack).toMatchArray(expectedStack); - }); - // TODO exp - // TODO false - // TODO floor - // TODO ge - // TODO gt - // TODO idiv - it('duplicates index', function() { + expect(stack).toMatchArray(expectedStack); + }); + // TODO exp + // TODO false + // TODO floor + // TODO ge + // TODO gt + // TODO idiv + it('duplicates index', function() { var stack = evaluate('{ 4 3 2 1 2 index }'); var expectedStack = [4, 3, 2, 1, 3]; - expect(stack).toMatchArray(expectedStack); - }); - // TODO le - // TODO ln - // TODO log - // TODO lt - // TODO mod - // TODO mul - // TODO ne - // TODO neg - // TODO not - // TODO or - it('pops stack', function() { + expect(stack).toMatchArray(expectedStack); + }); + // TODO le + // TODO ln + // TODO log + // TODO lt + // TODO mod + // TODO mul + // TODO ne + // TODO neg + // TODO not + // TODO or + it('pops stack', function() { var stack = evaluate('{ 1 2 pop }'); var expectedStack = [1]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); - it('rolls stack right', function() { + it('rolls stack right', function() { var stack = evaluate('{ 1 3 2 2 4 1 roll }'); var expectedStack = [2, 1, 3, 2]; - expect(stack).toMatchArray(expectedStack); + expect(stack).toMatchArray(expectedStack); }); it('rolls stack left', function() { var stack = evaluate('{ 1 3 2 2 4 -1 roll }'); var expectedStack = [3, 2, 2, 1]; - expect(stack).toMatchArray(expectedStack); - }); - // TODO round - // TODO sin - // TODO sqrt - // TODO sub - // TODO true - // TODO truncate - // TODO xor + expect(stack).toMatchArray(expectedStack); + }); + // TODO round + // TODO sin + // TODO sqrt + // TODO sub + // TODO true + // TODO truncate + // TODO xor }); }); diff --git a/test/unit/obj_spec.js b/test/unit/obj_spec.js index 4f1a0b57a..f3a4185dd 100644 --- a/test/unit/obj_spec.js +++ b/test/unit/obj_spec.js @@ -3,11 +3,11 @@ 'use strict'; -describe("obj", function() { +describe('obj', function() { - describe("Name", function() { - it("should retain the given name", function() { - var givenName = "Font"; + describe('Name', function() { + it('should retain the given name', function() { + var givenName = 'Font'; var name = new Name(givenName); expect(name.name).toEqual(givenName); });