Quellcode durchsuchen

Create tests on the fly.

Alexander I. Zaytsev vor 11 Jahren
Ursprung
Commit
70ac01a17a
1 geänderte Dateien mit 17 neuen und 44 gelöschten Zeilen
  1. 17 44
      test/jsfuck_test.js

+ 17 - 44
test/jsfuck_test.js

@@ -26,49 +26,22 @@ exports['integration'] = {
 	}
 };
 
-exports['encode_tests'] = {
-	'encode numbers': function(test) {
-		for (var i=0; i<=10; i++) {
-			test_encode(test, i+"");
-		}
-		test.done();
-	},
-	'encode "false"': function(test) {
-		test_encode(test, 'false');
-		test.done();
-	},
-	'encode "falsefalsetrue"': function(test) {
-		test_encode(test, 'falsefalsetrue');
-		test.done();
-	},
-	'encode "a"': function(test) {
-		test_encode(test, 'a');
-		test.done();
-	},
-	'encode "ABCDEFGHIJKLMNOPQRSTUVWXYZ"': function(test) {
-		test_encode(test, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ');
-		test.done();
-	},
-	'encode "abcdefghijklmnopqrstuvwxyz"': function(test) {
-		test_encode(test, 'abcdefghijklmnopqrstuvwxyz');
-		test.done();
-	}
+var test = function (c, test) {
+	test_encode(test, c);
+	test.done();
 };
 
-exports['tests'] = {
-	'encode 1': function(test) {
-		var encoded = JSFuck.encode('1');
-		test.equal(encoded, '[+!+[]]+[]');
-		test.done();
-	},
-	'encode 2': function(test) {
-		var encoded = JSFuck.encode('2');
-		test.equal(encoded, '[!+[]+!+[]]+[]');
-		test.done();
-	},
-	'encode 3': function(test) {
-		var encoded = JSFuck.encode('3');
-		test.equal(encoded, '[!+[]+!+[]+!+[]]+[]');
-		test.done();
-	}
-};
+var createTest = function (input) {
+	exports['encode_tests']['encode "'+input+'"'] = test.bind(undefined, input);
+};
+
+exports['encode_tests'] = {};
+
+createTest('false');
+createTest('falsefalsetrue');
+createTest('ABCDEFGHIJKLMNOPQRSTUVWXYZ');
+createTest('abcdefghijklmnopqrstuvwxyz');
+
+for(var i=MIN; i<MAX ;i++) {
+	createTest(String.fromCharCode(i));
+}