* remove `wraps` syntax enhancements for imports and support new `import * as module from ...` syntax - default imports are the wrong construct for importing everything from a module * moved tests from transpiler to jasmine and karma - transpiler tests are included when running karma in main project folder - transpiler is reloaded after every test run in karma, so no need to restart karma when the transpiler has been changed. - removed own gulp build for transpiler and `postinstall.sh` as they are no more needed. - transpiler tests are now executed in Dart AND JavaScript (used to be executed only in Dart), which allowed to catch some bugs (see the bug with the import specification above). * made tests work in dart as well by using the following hack: - dependencies are loaded from the `build` folder, which makes running `gulp build` necessary before running karma for dart - for this to work, the dependencies are included in main `pubspec.yaml` of project - reason for the hack: `karma-dart` loads all `packages` urls directly from disc (should rather use the karma file list) * added explicit annotations `FIELD`, `ABSTRACT`, ... to `facade/lang.*` - needed for now that we can run tests and don't get errors for undefined annotations. * added `README.md` with details about the build and tests
29 lines
750 B
JavaScript
29 lines
750 B
JavaScript
import {describe, it, expect} from 'test_lib/test_lib';
|
|
|
|
import {Foo, Bar} from './foo';
|
|
// TODO: Does not work, as dart does not support renaming imports
|
|
// import {Foo as F} from './fixtures/foo';
|
|
import * as fooModule from './foo';
|
|
|
|
import * as exportModule from './export';
|
|
|
|
import {Type} from 'facade/lang';
|
|
|
|
export function main() {
|
|
describe('imports', function() {
|
|
it('should work', function() {
|
|
expect(Foo).toBe('FOO');
|
|
expect(Bar).toBe('BAR');
|
|
// TODO: Does not work
|
|
// assert(F == 'FOO');
|
|
expect(fooModule.Foo).toBe('FOO');
|
|
expect(fooModule.Bar).toBe('BAR');
|
|
|
|
expect(exportModule.Foo).toBe('FOO');
|
|
expect(exportModule.Bar).toBe('BAR');
|
|
|
|
expect(Type).toBeTruthy();
|
|
});
|
|
});
|
|
}
|