| OLD | NEW |
| 1 /// <reference path="../typings/chai/chai.d.ts"/> | 1 /// <reference path="../typings/chai/chai.d.ts"/> |
| 2 /// <reference path="../typings/mocha/mocha.d.ts"/> | 2 /// <reference path="../typings/mocha/mocha.d.ts"/> |
| 3 /// <reference path="../typings/node/node.d.ts"/> | 3 /// <reference path="../typings/node/node.d.ts"/> |
| 4 import chai = require('chai'); | 4 import chai = require('chai'); |
| 5 import fs = require('fs'); | 5 import fs = require('fs'); |
| 6 import main = require('../lib/main'); | 6 import main = require('../lib/main'); |
| 7 import ts = require('typescript'); | 7 import ts = require('typescript'); |
| 8 | 8 |
| 9 export type StringMap = { | 9 export type StringMap = { |
| 10 [k: string]: string | 10 [k: string]: string |
| (...skipping 25 matching lines...) Expand all Loading... |
| 36 } | 36 } |
| 37 if (sourceName === defaultLibName) { | 37 if (sourceName === defaultLibName) { |
| 38 if (!libSourceFile) { | 38 if (!libSourceFile) { |
| 39 // Cache to avoid excessive test times. | 39 // Cache to avoid excessive test times. |
| 40 libSourceFile = ts.createSourceFile(sourceName, libSource, compilerOpt
ions.target, true); | 40 libSourceFile = ts.createSourceFile(sourceName, libSource, compilerOpt
ions.target, true); |
| 41 } | 41 } |
| 42 return libSourceFile; | 42 return libSourceFile; |
| 43 } | 43 } |
| 44 return undefined; | 44 return undefined; |
| 45 }, | 45 }, |
| 46 writeFile: function(name, text, writeByteOrderMark) { result = text; }, | 46 writeFile: function(name, text, writeByteOrderMark) { |
| 47 fileExists: (sourceName) => { return !!nameToContent[sourceName]; }, | 47 result = text; |
| 48 readFile: (filename): string => { throw new Error('unexpected call to readFi
le'); }, | 48 }, |
| 49 fileExists: (sourceName) => { |
| 50 return !!nameToContent[sourceName]; |
| 51 }, |
| 52 readFile: (filename): string => { |
| 53 throw new Error('unexpected call to readFile'); |
| 54 }, |
| 49 getDefaultLibFileName: () => defaultLibName, | 55 getDefaultLibFileName: () => defaultLibName, |
| 50 useCaseSensitiveFileNames: () => false, | 56 useCaseSensitiveFileNames: () => false, |
| 51 getCanonicalFileName: (filename) => '../' + filename, | 57 getCanonicalFileName: (filename) => '../' + filename, |
| 52 getCurrentDirectory: () => '', | 58 getCurrentDirectory: () => '', |
| 53 getNewLine: () => '\n', | 59 getNewLine: () => '\n', |
| 54 }; | 60 }; |
| 55 compilerHost.resolveModuleNames = main.getModuleResolver(compilerHost); | 61 compilerHost.resolveModuleNames = main.getModuleResolver(compilerHost); |
| 56 // Create a program from inputs | 62 // Create a program from inputs |
| 57 let entryPoints = Object.keys(nameToContent); | 63 let entryPoints = Object.keys(nameToContent); |
| 58 let program: ts.Program = ts.createProgram(entryPoints, compilerOptions, compi
lerHost); | 64 let program: ts.Program = ts.createProgram(entryPoints, compilerOptions, compi
lerHost); |
| (...skipping 25 matching lines...) Expand all Loading... |
| 84 | 90 |
| 85 export function translateSource(contents: Input, options: main.TranspilerOptions
= {}): string { | 91 export function translateSource(contents: Input, options: main.TranspilerOptions
= {}): string { |
| 86 let results = translateSources(contents, options); | 92 let results = translateSources(contents, options); |
| 87 // Return the main outcome, from 'main.ts'. | 93 // Return the main outcome, from 'main.ts'. |
| 88 let result = results[FAKE_MAIN]; | 94 let result = results[FAKE_MAIN]; |
| 89 // strip out the package:js import as it clutters the output. | 95 // strip out the package:js import as it clutters the output. |
| 90 result = result.replace(/import "package:js\/js.dart";\s+/g, ''); | 96 result = result.replace(/import "package:js\/js.dart";\s+/g, ''); |
| 91 result = result.replace(/^@JS\("?[^)]*"?\)\s+library [^;]+;\s+/g, ''); | 97 result = result.replace(/^@JS\("?[^)]*"?\)\s+library [^;]+;\s+/g, ''); |
| 92 return result.trim(); | 98 return result.trim(); |
| 93 } | 99 } |
| OLD | NEW |