| OLD | NEW | 
|    1 // Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file |    1 // Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file | 
|    2 // for details. All rights reserved. Use of this source code is governed by a |    2 // for details. All rights reserved. Use of this source code is governed by a | 
|    3 // BSD-style license that can be found in the LICENSE file. |    3 // BSD-style license that can be found in the LICENSE file. | 
|    4  |    4  | 
|    5 library analyzer.test.src.context.context_factory_test; |    5 library analyzer.test.src.context.context_factory_test; | 
|    6  |    6  | 
|    7 import 'package:analyzer/file_system/file_system.dart'; |    7 import 'package:analyzer/file_system/file_system.dart'; | 
|    8 import 'package:analyzer/file_system/memory_file_system.dart'; |    8 import 'package:analyzer/file_system/memory_file_system.dart'; | 
|    9 import 'package:analyzer/src/context/context_factory.dart'; |    9 import 'package:analyzer/src/context/context_factory.dart'; | 
|   10 import 'package:unittest/unittest.dart'; |   10 import 'package:unittest/unittest.dart'; | 
|   11  |   11  | 
|   12 import '../../reflective_tests.dart'; |   12 import '../../reflective_tests.dart'; | 
|   13 import '../../utils.dart'; |   13 import '../../utils.dart'; | 
|   14  |   14  | 
|   15 main() { |   15 main() { | 
|   16   initializeTestEnvironment(); |   16   initializeTestEnvironment(); | 
|   17   runReflectiveTests(PackageMapProcessorTest); |   17   runReflectiveTests(PackageMapProcessorTest); | 
|   18 } |   18 } | 
|   19  |   19  | 
|   20 @reflectiveTest |   20 @reflectiveTest | 
|   21 class PackageMapProcessorTest { |   21 class PackageMapProcessorTest { | 
|   22   static MemoryResourceProvider resourceProvider = new MemoryResourceProvider(); |   22   MemoryResourceProvider resourceProvider; | 
|   23  |   23  | 
|   24   static Folder empty = resourceProvider.newFolder('/empty'); |   24   Folder empty; | 
|   25   static Folder tmp_sdk_ext = resourceProvider.newFolder('/tmp_sdk_ext'); |   25   Folder tmp_sdk_ext; | 
|   26   static Folder tmp_embedder = resourceProvider.newFolder('/tmp_embedder'); |   26   Folder tmp_embedder; | 
 |   27   Map<String, List<Folder>> packageMap; | 
|   27  |   28  | 
|   28   static Map<String, List<Folder>> packageMap = <String, List<Folder>>{ |   29   void setUp() { | 
|   29     'empty': [empty], |   30     resourceProvider = new MemoryResourceProvider(); | 
|   30     'tmp_embedder': [tmp_embedder], |   31     empty = resourceProvider.newFolder('/empty'); | 
|   31     'tmp_sdk_ext': [tmp_sdk_ext] |   32     tmp_sdk_ext = resourceProvider.newFolder('/tmp_sdk_ext'); | 
|   32   }; |   33     tmp_embedder = resourceProvider.newFolder('/tmp_embedder'); | 
 |   34     packageMap = <String, List<Folder>>{ | 
 |   35       'empty': [empty], | 
 |   36       'tmp_embedder': [tmp_embedder], | 
 |   37       'tmp_sdk_ext': [tmp_sdk_ext] | 
 |   38     }; | 
 |   39   } | 
|   33  |   40  | 
|   34   void test_basic_processing() { |   41   void test_basic_processing() { | 
|   35     resourceProvider.newFile( |   42     resourceProvider.newFile( | 
|   36         '/tmp_sdk_ext/_sdkext', |   43         '/tmp_sdk_ext/_sdkext', | 
|   37         r''' |   44         r''' | 
|   38   { |   45   { | 
|   39     "dart:ui": "ui.dart" |   46     "dart:ui": "ui.dart" | 
|   40   }'''); |   47   }'''); | 
|   41     resourceProvider.newFile( |   48     resourceProvider.newFile( | 
|   42         '/tmp_embedder/_embedder.yaml', |   49         '/tmp_embedder/_embedder.yaml', | 
|   43         r''' |   50         r''' | 
|   44 embedded_libs: |   51 embedded_libs: | 
|   45   "dart:core" : "core.dart" |   52   "dart:core" : "core.dart" | 
|   46   "dart:fox": "slippy.dart" |   53   "dart:fox": "slippy.dart" | 
|   47   "dart:bear": "grizzly.dart" |   54   "dart:bear": "grizzly.dart" | 
|   48   "dart:relative": "../relative.dart" |   55   "dart:relative": "../relative.dart" | 
|   49   "dart:deep": "deep/directory/file.dart" |   56   "dart:deep": "deep/directory/file.dart" | 
|   50 '''); |   57 '''); | 
|   51  |   58  | 
|   52     PackageMapProcessor proc = new PackageMapProcessor(packageMap); |   59     PackageMapProcessor proc = new PackageMapProcessor(packageMap); | 
|   53     expect(proc.embeddedLibraries.size(), 5); |   60     expect(proc.embeddedLibraries.size(), 5); | 
 |   61     expect(proc.embeddedLibraries.getLibrary('dart:core').path, | 
 |   62         '/tmp_embedder/core.dart'); | 
|   54     expect(proc.extendedLibraries.size(), 1); |   63     expect(proc.extendedLibraries.size(), 1); | 
 |   64     expect(proc.extendedLibraries.getLibrary('dart:ui').path, | 
 |   65         '/tmp_sdk_ext/ui.dart'); | 
 |   66   } | 
 |   67  | 
 |   68   void test_empty_package_map() { | 
 |   69     PackageMapProcessor proc = | 
 |   70         new PackageMapProcessor(<String, List<Folder>>{}); | 
 |   71     expect(proc.embeddedLibraries.size(), 0); | 
 |   72     expect(proc.extendedLibraries.size(), 0); | 
 |   73     expect(proc.libraryMap.size(), 0); | 
|   55   } |   74   } | 
|   56  |   75  | 
|   57   void test_extenders_do_not_override() { |   76   void test_extenders_do_not_override() { | 
|   58     resourceProvider.newFile( |   77     resourceProvider.newFile( | 
|   59         '/tmp_sdk_ext/_sdkext', |   78         '/tmp_sdk_ext/_sdkext', | 
|   60         r''' |   79         r''' | 
|   61   { |   80   { | 
|   62     "dart:ui": "ui2.dart" |   81     "dart:ui": "ui2.dart" | 
|   63   }'''); |   82   }'''); | 
|   64     resourceProvider.newFile( |   83     resourceProvider.newFile( | 
|   65         '/tmp_embedder/_embedder.yaml', |   84         '/tmp_embedder/_embedder.yaml', | 
|   66         r''' |   85         r''' | 
|   67 embedded_libs: |   86 embedded_libs: | 
|   68   "dart:core" : "core.dart" |   87   "dart:core" : "core.dart" | 
|   69   "dart:ui": "ui.dart" |   88   "dart:ui": "ui.dart" | 
|   70 '''); |   89 '''); | 
|   71  |   90  | 
|   72     PackageMapProcessor proc = new PackageMapProcessor(packageMap); |   91     PackageMapProcessor proc = new PackageMapProcessor(packageMap); | 
|   73     expect(proc.embeddedLibraries.size(), 2); |   92     expect(proc.embeddedLibraries.size(), 2); | 
|   74     expect(proc.extendedLibraries.size(), 1); |   93     expect(proc.extendedLibraries.size(), 1); | 
|   75     expect(proc.libraryMap.size(), 2); |   94     expect(proc.libraryMap.size(), 2); | 
|   76     expect(proc.libraryMap.getLibrary('dart:ui').path, '/tmp_embedder/ui.dart'); |   95     expect(proc.libraryMap.getLibrary('dart:ui').path, '/tmp_embedder/ui.dart'); | 
|   77   } |   96   } | 
 |   97  | 
 |   98   void test_invalid_embedder() { | 
 |   99     resourceProvider.newFile( | 
 |  100         '/tmp_embedder/_embedder.yaml', | 
 |  101         r''' | 
 |  102 invalid contents, will not parse | 
 |  103 '''); | 
 |  104  | 
 |  105     PackageMapProcessor proc = new PackageMapProcessor(packageMap); | 
 |  106     expect(proc.embeddedLibraries.size(), 0); | 
 |  107     expect(proc.extendedLibraries.size(), 0); | 
 |  108     expect(proc.libraryMap.size(), 0); | 
 |  109   } | 
 |  110  | 
 |  111   void test_invalid_extender() { | 
 |  112     resourceProvider.newFile( | 
 |  113         '/tmp_sdk_ext/_sdkext', | 
 |  114         r''' | 
 |  115 invalid contents, will not parse | 
 |  116 '''); | 
 |  117  | 
 |  118     PackageMapProcessor proc = new PackageMapProcessor(packageMap); | 
 |  119     expect(proc.embeddedLibraries.size(), 0); | 
 |  120     expect(proc.extendedLibraries.size(), 0); | 
 |  121     expect(proc.libraryMap.size(), 0); | 
 |  122   } | 
 |  123  | 
 |  124   void test_no_embedder() { | 
 |  125     resourceProvider.newFile( | 
 |  126         '/tmp_sdk_ext/_sdkext', | 
 |  127         r''' | 
 |  128   { | 
 |  129     "dart:ui": "ui2.dart" | 
 |  130   }'''); | 
 |  131  | 
 |  132     PackageMapProcessor proc = new PackageMapProcessor(packageMap); | 
 |  133     expect(proc.embeddedLibraries.size(), 0); | 
 |  134     expect(proc.extendedLibraries.size(), 1); | 
 |  135     expect(proc.libraryMap.size(), 1); | 
 |  136   } | 
 |  137  | 
 |  138   void test_no_embedder_or_extender() { | 
 |  139     PackageMapProcessor proc = new PackageMapProcessor(packageMap); | 
 |  140     expect(proc.embeddedLibraries.size(), 0); | 
 |  141     expect(proc.extendedLibraries.size(), 0); | 
 |  142     expect(proc.libraryMap.size(), 0); | 
 |  143   } | 
 |  144  | 
 |  145   void test_no_extender() { | 
 |  146     resourceProvider.newFile( | 
 |  147         '/tmp_embedder/_embedder.yaml', | 
 |  148         r''' | 
 |  149 embedded_libs: | 
 |  150   "dart:core" : "core.dart" | 
 |  151   "dart:ui": "ui.dart" | 
 |  152 '''); | 
 |  153  | 
 |  154     PackageMapProcessor proc = new PackageMapProcessor(packageMap); | 
 |  155     expect(proc.embeddedLibraries.size(), 2); | 
 |  156     expect(proc.extendedLibraries.size(), 0); | 
 |  157     expect(proc.libraryMap.size(), 2); | 
 |  158   } | 
|   78 } |  159 } | 
| OLD | NEW |