1 | var assert = require('assert');
|
2 | var fs = require('fs');
|
3 | var path = require('path');
|
4 | var continuation = require('../continuation');
|
5 |
|
6 | var files = [
|
7 | 'readfile.js',
|
8 | 'fib.js',
|
9 | 'if.js',
|
10 | 'ifvar.js',
|
11 | 'loop.js',
|
12 | 'switch.js',
|
13 | 'switchbreak.js',
|
14 | 'whilebreak.js',
|
15 | 'continue.js',
|
16 | 'factor.js',
|
17 | 'pi.js',
|
18 | 'diskusage.js',
|
19 | 'try_body.js',
|
20 | 'try_catch.js',
|
21 | 'try_both.js',
|
22 | 'list.js',
|
23 | 'defer.js',
|
24 | 'for.js',
|
25 | 'forin.js',
|
26 | 'try_if.js',
|
27 | ];
|
28 |
|
29 | var test = function(filename, done) {
|
30 | fs.readFile('test/cases/' + filename, 'utf-8', function (err, code) {
|
31 | if (err) done(err);
|
32 | code = continuation.transform(code);
|
33 | fs.readFile('test/results/' + filename, 'utf-8', function(err, result) {
|
34 | if (err) done(err);
|
35 | assert.equal(code, result);
|
36 | done();
|
37 | });
|
38 | });
|
39 | }
|
40 |
|
41 | describe('Transformation', function () {
|
42 | describe('Test', function () {
|
43 | files.forEach(function (filename) {
|
44 | it(filename, function(done){
|
45 | test(filename, done);
|
46 | });
|
47 | });
|
48 | });
|
49 | });
|