59 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
		
		
			
		
	
	
			59 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
|  | library angular2.test.transform.deferred_rewriter.all_tests; | ||
|  | 
 | ||
|  | import 'package:barback/barback.dart'; | ||
|  | import 'package:angular2/src/transform/deferred_rewriter/transformer.dart'; | ||
|  | import 'package:angular2/src/transform/common/annotation_matcher.dart'; | ||
|  | import 'package:angular2/src/transform/common/asset_reader.dart'; | ||
|  | import 'package:angular2/src/transform/common/logging.dart' as log; | ||
|  | import 'package:code_transformers/messages/build_logger.dart'; | ||
|  | import 'package:dart_style/dart_style.dart'; | ||
|  | import 'package:guinness/guinness.dart'; | ||
|  | import 'package:path/path.dart' as path; | ||
|  | import '../common/read_file.dart'; | ||
|  | 
 | ||
|  | var formatter = new DartFormatter(); | ||
|  | 
 | ||
|  | main() { | ||
|  |   allTests(); | ||
|  | } | ||
|  | 
 | ||
|  | void allTests() { | ||
|  |   _testRewriteDeferredLibraries( | ||
|  |       'should return null when no deferred libraries found.', | ||
|  |       'no_deferred_libraries/index.dart'); | ||
|  |   _testRewriteDeferredLibraries( | ||
|  |       'should return null when deferred libraries with no ng_deps.', | ||
|  |       'no_ng_deps_libraries/index.dart'); | ||
|  |   _testRewriteDeferredLibraries( | ||
|  |       'should rewrite deferred libraries with ng_deps.', | ||
|  |       'simple_deferred_example/index.dart'); | ||
|  |   _testRewriteDeferredLibraries( | ||
|  |       'should not rewrite deferred libraries without ng_deps.', | ||
|  |       'deferred_example_no_ng_deps/index.dart'); | ||
|  |   _testRewriteDeferredLibraries( | ||
|  |       'should rewrite deferred libraries with ng_deps leave other deferred library alone.', | ||
|  |       'complex_deferred_example/index.dart'); | ||
|  | } | ||
|  | 
 | ||
|  | void _testRewriteDeferredLibraries(String name, String inputPath) { | ||
|  |   it(name, () async { | ||
|  |     var inputId = _assetIdForPath(inputPath); | ||
|  |     var reader = new TestAssetReader(); | ||
|  |     var expectedPath = path.join( | ||
|  |         path.dirname(inputPath), 'expected', path.basename(inputPath)); | ||
|  |     var expectedId = _assetIdForPath(expectedPath); | ||
|  | 
 | ||
|  |     var output = await rewriteDeferredLibraries(reader, inputId); | ||
|  |     var input = await reader.readAsString(expectedId); | ||
|  |     if (input == null) { | ||
|  |       // Null input signals no output. Ensure that is true.
 | ||
|  |       expect(output).toBeNull(); | ||
|  |     } else { | ||
|  |       expect(formatter.format(output)).toEqual(formatter.format(input)); | ||
|  |     } | ||
|  |   }); | ||
|  | } | ||
|  | 
 | ||
|  | AssetId _assetIdForPath(String path) => | ||
|  |     new AssetId('angular2', 'test/transform/deferred_rewriter/$path'); |