| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 test.src.task.driver_test; | 5 library test.src.task.driver_test; |
| 6 | 6 |
| 7 import 'package:analyzer/src/context/cache.dart'; | 7 import 'package:analyzer/src/context/cache.dart'; |
| 8 import 'package:analyzer/src/generated/engine.dart' | 8 import 'package:analyzer/src/generated/engine.dart' |
| 9 show | 9 show |
| 10 AnalysisContext, | 10 AnalysisContext, |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 void test_getContextFor() { | 55 void test_getContextFor() { |
| 56 AnalysisContext context = new TestAnalysisContext(); | 56 AnalysisContext context = new TestAnalysisContext(); |
| 57 AnalysisCache cache = createCache(context: context); | 57 AnalysisCache cache = createCache(context: context); |
| 58 AnalysisTarget target = new TestSource(); | 58 AnalysisTarget target = new TestSource(); |
| 59 expect(cache.getContextFor(target), context); | 59 expect(cache.getContextFor(target), context); |
| 60 } | 60 } |
| 61 | 61 |
| 62 void test_iterator() { | 62 void test_iterator() { |
| 63 AnalysisCache cache = createCache(); | 63 AnalysisCache cache = createCache(); |
| 64 AnalysisTarget target = new TestSource(); | 64 AnalysisTarget target = new TestSource(); |
| 65 CacheEntry entry = new CacheEntry(); | 65 CacheEntry entry = new CacheEntry(target); |
| 66 cache.put(target, entry); | 66 cache.put(entry); |
| 67 MapIterator<AnalysisTarget, CacheEntry> iterator = cache.iterator(); | 67 MapIterator<AnalysisTarget, CacheEntry> iterator = cache.iterator(); |
| 68 expect(iterator.moveNext(), isTrue); | 68 expect(iterator.moveNext(), isTrue); |
| 69 expect(iterator.key, same(target)); | 69 expect(iterator.key, same(target)); |
| 70 expect(iterator.value, same(entry)); | 70 expect(iterator.value, same(entry)); |
| 71 expect(iterator.moveNext(), isFalse); | 71 expect(iterator.moveNext(), isFalse); |
| 72 } | 72 } |
| 73 | 73 |
| 74 void test_put() { | 74 void test_put() { |
| 75 AnalysisCache cache = createCache(); | 75 AnalysisCache cache = createCache(); |
| 76 AnalysisTarget target = new TestSource(); | 76 AnalysisTarget target = new TestSource(); |
| 77 CacheEntry entry = new CacheEntry(); | 77 CacheEntry entry = new CacheEntry(target); |
| 78 expect(cache.get(target), isNull); | 78 expect(cache.get(target), isNull); |
| 79 cache.put(target, entry); | 79 cache.put(entry); |
| 80 expect(cache.get(target), entry); | 80 expect(cache.get(target), entry); |
| 81 } | 81 } |
| 82 | 82 |
| 83 void test_remove() { | 83 void test_remove() { |
| 84 AnalysisCache cache = createCache(); | 84 AnalysisCache cache = createCache(); |
| 85 AnalysisTarget target = new TestSource(); | 85 AnalysisTarget target = new TestSource(); |
| 86 cache.remove(target); | 86 cache.remove(target); |
| 87 } | 87 } |
| 88 | 88 |
| 89 void test_size() { | 89 void test_size() { |
| 90 AnalysisCache cache = createCache(); | 90 AnalysisCache cache = createCache(); |
| 91 int size = 4; | 91 int size = 4; |
| 92 for (int i = 0; i < size; i++) { | 92 for (int i = 0; i < size; i++) { |
| 93 AnalysisTarget target = new TestSource("/test$i.dart"); | 93 AnalysisTarget target = new TestSource("/test$i.dart"); |
| 94 cache.put(target, new CacheEntry()); | 94 cache.put(new CacheEntry(target)); |
| 95 } | 95 } |
| 96 expect(cache.size(), size); | 96 expect(cache.size(), size); |
| 97 } | 97 } |
| 98 } | 98 } |
| 99 | 99 |
| 100 @reflectiveTest | 100 @reflectiveTest |
| 101 class CacheEntryTest extends EngineTestCase { | 101 class CacheEntryTest extends EngineTestCase { |
| 102 InternalAnalysisContext context; | 102 InternalAnalysisContext context; |
| 103 AnalysisCache cache; | 103 AnalysisCache cache; |
| 104 | 104 |
| 105 void setUp() { | 105 void setUp() { |
| 106 context = new _InternalAnalysisContextMock(); | 106 context = new _InternalAnalysisContextMock(); |
| 107 when(context.priorityTargets).thenReturn([]); | 107 when(context.priorityTargets).thenReturn([]); |
| 108 cache = createCache(context: context); | 108 cache = createCache(context: context); |
| 109 when(context.analysisCache).thenReturn(cache); | 109 when(context.analysisCache).thenReturn(cache); |
| 110 } | 110 } |
| 111 | 111 |
| 112 test_explicitlyAdded() { | 112 test_explicitlyAdded() { |
| 113 CacheEntry entry = new CacheEntry(); | 113 AnalysisTarget target = new TestSource(); |
| 114 CacheEntry entry = new CacheEntry(target); |
| 114 expect(entry.explicitlyAdded, false); | 115 expect(entry.explicitlyAdded, false); |
| 115 entry.explicitlyAdded = true; | 116 entry.explicitlyAdded = true; |
| 116 expect(entry.explicitlyAdded, true); | 117 expect(entry.explicitlyAdded, true); |
| 117 } | 118 } |
| 118 | 119 |
| 119 test_fixExceptionState_error_exception() { | 120 test_fixExceptionState_error_exception() { |
| 121 AnalysisTarget target = new TestSource(); |
| 120 ResultDescriptor result = new ResultDescriptor('test', null); | 122 ResultDescriptor result = new ResultDescriptor('test', null); |
| 121 CaughtException exception = new CaughtException(null, null); | 123 CaughtException exception = new CaughtException(null, null); |
| 122 CacheEntry entry = new CacheEntry(); | 124 CacheEntry entry = new CacheEntry(target); |
| 123 entry.setErrorState(exception, <ResultDescriptor>[result]); | 125 entry.setErrorState(exception, <ResultDescriptor>[result]); |
| 124 entry.fixExceptionState(); | 126 entry.fixExceptionState(); |
| 125 expect(entry.getState(result), CacheState.ERROR); | 127 expect(entry.getState(result), CacheState.ERROR); |
| 126 expect(entry.exception, exception); | 128 expect(entry.exception, exception); |
| 127 } | 129 } |
| 128 | 130 |
| 129 test_fixExceptionState_noError_exception() { | 131 test_fixExceptionState_noError_exception() { |
| 132 AnalysisTarget target = new TestSource(); |
| 130 ResultDescriptor result = new ResultDescriptor('test', null); | 133 ResultDescriptor result = new ResultDescriptor('test', null); |
| 131 CacheEntry entry = new CacheEntry(); | 134 CacheEntry entry = new CacheEntry(target); |
| 132 // set one result to ERROR | 135 // set one result to ERROR |
| 133 CaughtException exception = new CaughtException(null, null); | 136 CaughtException exception = new CaughtException(null, null); |
| 134 entry.setErrorState(exception, <ResultDescriptor>[result]); | 137 entry.setErrorState(exception, <ResultDescriptor>[result]); |
| 135 // set the same result to VALID | 138 // set the same result to VALID |
| 136 entry.setValue(result, 1, TargetedResult.EMPTY_LIST, null); | 139 entry.setValue(result, 1, TargetedResult.EMPTY_LIST, null); |
| 137 // fix the exception state | 140 // fix the exception state |
| 138 entry.fixExceptionState(); | 141 entry.fixExceptionState(); |
| 139 expect(entry.exception, isNull); | 142 expect(entry.exception, isNull); |
| 140 } | 143 } |
| 141 | 144 |
| 142 test_fixExceptionState_noError_noException() { | 145 test_fixExceptionState_noError_noException() { |
| 146 AnalysisTarget target = new TestSource(); |
| 143 ResultDescriptor result = new ResultDescriptor('test', null); | 147 ResultDescriptor result = new ResultDescriptor('test', null); |
| 144 CacheEntry entry = new CacheEntry(); | 148 CacheEntry entry = new CacheEntry(target); |
| 145 entry.fixExceptionState(); | 149 entry.fixExceptionState(); |
| 146 expect(entry.getState(result), CacheState.INVALID); | 150 expect(entry.getState(result), CacheState.INVALID); |
| 147 expect(entry.exception, isNull); | 151 expect(entry.exception, isNull); |
| 148 } | 152 } |
| 149 | 153 |
| 150 test_getMemento_noResult() { | 154 test_getMemento_noResult() { |
| 151 String defaultValue = 'value'; | 155 AnalysisTarget target = new TestSource(); |
| 152 ResultDescriptor result = new ResultDescriptor('test', defaultValue); | 156 ResultDescriptor result = new ResultDescriptor('test', null); |
| 153 CacheEntry entry = new CacheEntry(); | 157 CacheEntry entry = new CacheEntry(target); |
| 154 expect(entry.getMemento(result), null); | 158 expect(entry.getMemento(result), null); |
| 155 } | 159 } |
| 156 | 160 |
| 157 test_getState() { | 161 test_getState() { |
| 162 AnalysisTarget target = new TestSource(); |
| 158 ResultDescriptor result = new ResultDescriptor('test', null); | 163 ResultDescriptor result = new ResultDescriptor('test', null); |
| 159 CacheEntry entry = new CacheEntry(); | 164 CacheEntry entry = new CacheEntry(target); |
| 160 expect(entry.getState(result), CacheState.INVALID); | 165 expect(entry.getState(result), CacheState.INVALID); |
| 161 } | 166 } |
| 162 | 167 |
| 163 test_getValue() { | 168 test_getValue_default() { |
| 169 AnalysisTarget target = new TestSource(); |
| 164 String defaultValue = 'value'; | 170 String defaultValue = 'value'; |
| 165 ResultDescriptor result = new ResultDescriptor('test', defaultValue); | 171 ResultDescriptor result = new ResultDescriptor('test', defaultValue); |
| 166 CacheEntry entry = new CacheEntry(); | 172 CacheEntry entry = new CacheEntry(target); |
| 167 expect(entry.getValue(result), defaultValue); | 173 expect(entry.getValue(result), defaultValue); |
| 168 } | 174 } |
| 169 | 175 |
| 170 test_getValue_flushResults() { | 176 test_getValue_flushResults() { |
| 171 ResultCachingPolicy cachingPolicy = new SimpleResultCachingPolicy(2, 2); | 177 ResultCachingPolicy cachingPolicy = new SimpleResultCachingPolicy(2, 2); |
| 172 ResultDescriptor descriptor1 = | 178 ResultDescriptor descriptor1 = |
| 173 new ResultDescriptor('result1', null, cachingPolicy: cachingPolicy); | 179 new ResultDescriptor('result1', null, cachingPolicy: cachingPolicy); |
| 174 ResultDescriptor descriptor2 = | 180 ResultDescriptor descriptor2 = |
| 175 new ResultDescriptor('result2', null, cachingPolicy: cachingPolicy); | 181 new ResultDescriptor('result2', null, cachingPolicy: cachingPolicy); |
| 176 ResultDescriptor descriptor3 = | 182 ResultDescriptor descriptor3 = |
| 177 new ResultDescriptor('result3', null, cachingPolicy: cachingPolicy); | 183 new ResultDescriptor('result3', null, cachingPolicy: cachingPolicy); |
| 178 AnalysisTarget target = new TestSource(); | 184 AnalysisTarget target = new TestSource(); |
| 179 CacheEntry entry = new CacheEntry(); | 185 CacheEntry entry = new CacheEntry(target); |
| 180 cache.put(target, entry); | 186 cache.put(entry); |
| 181 { | 187 { |
| 182 entry.setValue(descriptor1, 1, TargetedResult.EMPTY_LIST, null); | 188 entry.setValue(descriptor1, 1, TargetedResult.EMPTY_LIST, null); |
| 183 expect(entry.getState(descriptor1), CacheState.VALID); | 189 expect(entry.getState(descriptor1), CacheState.VALID); |
| 184 } | 190 } |
| 185 { | 191 { |
| 186 entry.setValue(descriptor2, 2, TargetedResult.EMPTY_LIST, null); | 192 entry.setValue(descriptor2, 2, TargetedResult.EMPTY_LIST, null); |
| 187 expect(entry.getState(descriptor1), CacheState.VALID); | 193 expect(entry.getState(descriptor1), CacheState.VALID); |
| 188 expect(entry.getState(descriptor2), CacheState.VALID); | 194 expect(entry.getState(descriptor2), CacheState.VALID); |
| 189 } | 195 } |
| 190 // get descriptor1, so that descriptor2 will be flushed | 196 // get descriptor1, so that descriptor2 will be flushed |
| 191 entry.getValue(descriptor1); | 197 entry.getValue(descriptor1); |
| 192 { | 198 { |
| 193 entry.setValue(descriptor3, 3, TargetedResult.EMPTY_LIST, null); | 199 entry.setValue(descriptor3, 3, TargetedResult.EMPTY_LIST, null); |
| 194 expect(entry.getState(descriptor1), CacheState.VALID); | 200 expect(entry.getState(descriptor1), CacheState.VALID); |
| 195 expect(entry.getState(descriptor2), CacheState.FLUSHED); | 201 expect(entry.getState(descriptor2), CacheState.FLUSHED); |
| 196 expect(entry.getState(descriptor3), CacheState.VALID); | 202 expect(entry.getState(descriptor3), CacheState.VALID); |
| 197 } | 203 } |
| 198 } | 204 } |
| 199 | 205 |
| 200 test_hasErrorState_false() { | 206 test_hasErrorState_false() { |
| 201 CacheEntry entry = new CacheEntry(); | 207 AnalysisTarget target = new TestSource(); |
| 208 CacheEntry entry = new CacheEntry(target); |
| 202 expect(entry.hasErrorState(), false); | 209 expect(entry.hasErrorState(), false); |
| 203 } | 210 } |
| 204 | 211 |
| 205 test_hasErrorState_true() { | 212 test_hasErrorState_true() { |
| 213 AnalysisTarget target = new TestSource(); |
| 206 ResultDescriptor result = new ResultDescriptor('test', null); | 214 ResultDescriptor result = new ResultDescriptor('test', null); |
| 207 CaughtException exception = new CaughtException(null, null); | 215 CaughtException exception = new CaughtException(null, null); |
| 208 CacheEntry entry = new CacheEntry(); | 216 CacheEntry entry = new CacheEntry(target); |
| 209 entry.setErrorState(exception, <ResultDescriptor>[result]); | 217 entry.setErrorState(exception, <ResultDescriptor>[result]); |
| 210 expect(entry.hasErrorState(), true); | 218 expect(entry.hasErrorState(), true); |
| 211 } | 219 } |
| 212 | 220 |
| 213 test_invalidateAllInformation() { | 221 test_invalidateAllInformation() { |
| 222 AnalysisTarget target = new TestSource(); |
| 214 ResultDescriptor result = new ResultDescriptor('test', null); | 223 ResultDescriptor result = new ResultDescriptor('test', null); |
| 215 CacheEntry entry = new CacheEntry(); | 224 CacheEntry entry = new CacheEntry(target); |
| 216 entry.setValue(result, 'value', TargetedResult.EMPTY_LIST, null); | 225 entry.setValue(result, 'value', TargetedResult.EMPTY_LIST, null); |
| 217 entry.invalidateAllInformation(); | 226 entry.invalidateAllInformation(); |
| 218 expect(entry.getState(result), CacheState.INVALID); | 227 expect(entry.getState(result), CacheState.INVALID); |
| 219 expect(entry.getValue(result), isNull); | 228 expect(entry.getValue(result), isNull); |
| 220 } | 229 } |
| 221 | 230 |
| 222 test_setErrorState() { | 231 test_setErrorState() { |
| 232 AnalysisTarget target = new TestSource(); |
| 223 ResultDescriptor result1 = new ResultDescriptor('res1', 1); | 233 ResultDescriptor result1 = new ResultDescriptor('res1', 1); |
| 224 ResultDescriptor result2 = new ResultDescriptor('res2', 2); | 234 ResultDescriptor result2 = new ResultDescriptor('res2', 2); |
| 225 ResultDescriptor result3 = new ResultDescriptor('res3', 3); | 235 ResultDescriptor result3 = new ResultDescriptor('res3', 3); |
| 226 // prepare some good state | 236 // prepare some good state |
| 227 CacheEntry entry = new CacheEntry(); | 237 CacheEntry entry = new CacheEntry(target); |
| 228 entry.setValue(result1, 10, TargetedResult.EMPTY_LIST, null); | 238 entry.setValue(result1, 10, TargetedResult.EMPTY_LIST, null); |
| 229 entry.setValue(result2, 20, TargetedResult.EMPTY_LIST, null); | 239 entry.setValue(result2, 20, TargetedResult.EMPTY_LIST, null); |
| 230 entry.setValue(result3, 30, TargetedResult.EMPTY_LIST, null); | 240 entry.setValue(result3, 30, TargetedResult.EMPTY_LIST, null); |
| 231 // set error state | 241 // set error state |
| 232 CaughtException exception = new CaughtException(null, null); | 242 CaughtException exception = new CaughtException(null, null); |
| 233 entry.setErrorState(exception, <ResultDescriptor>[result1, result2]); | 243 entry.setErrorState(exception, <ResultDescriptor>[result1, result2]); |
| 234 // verify | 244 // verify |
| 235 expect(entry.exception, exception); | 245 expect(entry.exception, exception); |
| 236 expect(entry.getState(result1), CacheState.ERROR); | 246 expect(entry.getState(result1), CacheState.ERROR); |
| 237 expect(entry.getState(result2), CacheState.ERROR); | 247 expect(entry.getState(result2), CacheState.ERROR); |
| 238 expect(entry.getState(result3), CacheState.VALID); | 248 expect(entry.getState(result3), CacheState.VALID); |
| 239 expect(entry.getValue(result1), 1); | 249 expect(entry.getValue(result1), 1); |
| 240 expect(entry.getValue(result2), 2); | 250 expect(entry.getValue(result2), 2); |
| 241 expect(entry.getValue(result3), 30); | 251 expect(entry.getValue(result3), 30); |
| 242 } | 252 } |
| 243 | 253 |
| 244 test_setErrorState_invalidateDependent() { | 254 test_setErrorState_invalidateDependent() { |
| 245 AnalysisTarget target1 = new TestSource('/a.dart'); | 255 AnalysisTarget target1 = new TestSource('/a.dart'); |
| 246 AnalysisTarget target2 = new TestSource('/b.dart'); | 256 AnalysisTarget target2 = new TestSource('/b.dart'); |
| 247 CacheEntry entry1 = new CacheEntry(); | 257 CacheEntry entry1 = new CacheEntry(target1); |
| 248 CacheEntry entry2 = new CacheEntry(); | 258 CacheEntry entry2 = new CacheEntry(target2); |
| 249 cache.put(target1, entry1); | 259 cache.put(entry1); |
| 250 cache.put(target2, entry2); | 260 cache.put(entry2); |
| 251 ResultDescriptor result1 = new ResultDescriptor('result1', -1); | 261 ResultDescriptor result1 = new ResultDescriptor('result1', -1); |
| 252 ResultDescriptor result2 = new ResultDescriptor('result2', -2); | 262 ResultDescriptor result2 = new ResultDescriptor('result2', -2); |
| 253 ResultDescriptor result3 = new ResultDescriptor('result3', -3); | 263 ResultDescriptor result3 = new ResultDescriptor('result3', -3); |
| 254 ResultDescriptor result4 = new ResultDescriptor('result4', -4); | 264 ResultDescriptor result4 = new ResultDescriptor('result4', -4); |
| 255 // set results, all of them are VALID | 265 // set results, all of them are VALID |
| 256 entry1.setValue(result1, 111, TargetedResult.EMPTY_LIST, null); | 266 entry1.setValue(result1, 111, TargetedResult.EMPTY_LIST, null); |
| 257 entry2.setValue(result2, 222, [new TargetedResult(target1, result1)], null); | 267 entry2.setValue(result2, 222, [new TargetedResult(target1, result1)], null); |
| 258 entry2.setValue(result3, 333, [new TargetedResult(target2, result2)], null); | 268 entry2.setValue(result3, 333, [new TargetedResult(target2, result2)], null); |
| 259 entry2.setValue(result4, 444, [], null); | 269 entry2.setValue(result4, 444, [], null); |
| 260 expect(entry1.getState(result1), CacheState.VALID); | 270 expect(entry1.getState(result1), CacheState.VALID); |
| (...skipping 14 matching lines...) Expand all Loading... |
| 275 expect(entry2.getState(result4), CacheState.VALID); | 285 expect(entry2.getState(result4), CacheState.VALID); |
| 276 expect(entry1.getValue(result1), -1); | 286 expect(entry1.getValue(result1), -1); |
| 277 expect(entry2.getValue(result2), -2); | 287 expect(entry2.getValue(result2), -2); |
| 278 expect(entry2.getValue(result3), -3); | 288 expect(entry2.getValue(result3), -3); |
| 279 expect(entry2.getValue(result4), 444); | 289 expect(entry2.getValue(result4), 444); |
| 280 expect(entry1.exception, exception); | 290 expect(entry1.exception, exception); |
| 281 expect(entry2.exception, exception); | 291 expect(entry2.exception, exception); |
| 282 } | 292 } |
| 283 | 293 |
| 284 test_setErrorState_noDescriptors() { | 294 test_setErrorState_noDescriptors() { |
| 295 AnalysisTarget target = new TestSource(); |
| 285 CaughtException exception = new CaughtException(null, null); | 296 CaughtException exception = new CaughtException(null, null); |
| 286 CacheEntry entry = new CacheEntry(); | 297 CacheEntry entry = new CacheEntry(target); |
| 287 expect(() { | 298 expect(() { |
| 288 entry.setErrorState(exception, <ResultDescriptor>[]); | 299 entry.setErrorState(exception, <ResultDescriptor>[]); |
| 289 }, throwsArgumentError); | 300 }, throwsArgumentError); |
| 290 } | 301 } |
| 291 | 302 |
| 292 test_setErrorState_noException() { | 303 test_setErrorState_noException() { |
| 304 AnalysisTarget target = new TestSource(); |
| 293 ResultDescriptor result = new ResultDescriptor('test', null); | 305 ResultDescriptor result = new ResultDescriptor('test', null); |
| 294 CacheEntry entry = new CacheEntry(); | 306 CacheEntry entry = new CacheEntry(target); |
| 295 expect(() { | 307 expect(() { |
| 296 entry.setErrorState(null, <ResultDescriptor>[result]); | 308 entry.setErrorState(null, <ResultDescriptor>[result]); |
| 297 }, throwsArgumentError); | 309 }, throwsArgumentError); |
| 298 } | 310 } |
| 299 | 311 |
| 300 test_setErrorState_nullDescriptors() { | 312 test_setErrorState_nullDescriptors() { |
| 313 AnalysisTarget target = new TestSource(); |
| 301 CaughtException exception = new CaughtException(null, null); | 314 CaughtException exception = new CaughtException(null, null); |
| 302 CacheEntry entry = new CacheEntry(); | 315 CacheEntry entry = new CacheEntry(target); |
| 303 expect(() { | 316 expect(() { |
| 304 entry.setErrorState(exception, null); | 317 entry.setErrorState(exception, null); |
| 305 }, throwsArgumentError); | 318 }, throwsArgumentError); |
| 306 } | 319 } |
| 307 | 320 |
| 308 test_setState_error() { | 321 test_setState_error() { |
| 322 AnalysisTarget target = new TestSource(); |
| 309 ResultDescriptor result = new ResultDescriptor('test', null); | 323 ResultDescriptor result = new ResultDescriptor('test', null); |
| 310 CacheEntry entry = new CacheEntry(); | 324 CacheEntry entry = new CacheEntry(target); |
| 311 entry.setValue(result, 42, TargetedResult.EMPTY_LIST, null); | 325 entry.setValue(result, 42, TargetedResult.EMPTY_LIST, null); |
| 312 // an invalid state change | 326 // an invalid state change |
| 313 expect(() { | 327 expect(() { |
| 314 entry.setState(result, CacheState.ERROR); | 328 entry.setState(result, CacheState.ERROR); |
| 315 }, throwsArgumentError); | 329 }, throwsArgumentError); |
| 316 // no changes | 330 // no changes |
| 317 expect(entry.getState(result), CacheState.VALID); | 331 expect(entry.getState(result), CacheState.VALID); |
| 318 expect(entry.getValue(result), 42); | 332 expect(entry.getValue(result), 42); |
| 319 } | 333 } |
| 320 | 334 |
| 321 test_setState_flushed() { | 335 test_setState_flushed() { |
| 336 AnalysisTarget target = new TestSource(); |
| 322 ResultDescriptor result = new ResultDescriptor('test', 1); | 337 ResultDescriptor result = new ResultDescriptor('test', 1); |
| 323 CacheEntry entry = new CacheEntry(); | 338 CacheEntry entry = new CacheEntry(target); |
| 324 // set VALID | 339 // set VALID |
| 325 entry.setValue(result, 10, TargetedResult.EMPTY_LIST, null); | 340 entry.setValue(result, 10, TargetedResult.EMPTY_LIST, null); |
| 326 expect(entry.getState(result), CacheState.VALID); | 341 expect(entry.getState(result), CacheState.VALID); |
| 327 expect(entry.getValue(result), 10); | 342 expect(entry.getValue(result), 10); |
| 328 // set FLUSHED | 343 // set FLUSHED |
| 329 entry.setState(result, CacheState.FLUSHED); | 344 entry.setState(result, CacheState.FLUSHED); |
| 330 expect(entry.getState(result), CacheState.FLUSHED); | 345 expect(entry.getState(result), CacheState.FLUSHED); |
| 331 expect(entry.getValue(result), 1); | 346 expect(entry.getValue(result), 1); |
| 332 } | 347 } |
| 333 | 348 |
| 334 test_setState_inProcess() { | 349 test_setState_inProcess() { |
| 350 AnalysisTarget target = new TestSource(); |
| 335 ResultDescriptor result = new ResultDescriptor('test', 1); | 351 ResultDescriptor result = new ResultDescriptor('test', 1); |
| 336 CacheEntry entry = new CacheEntry(); | 352 CacheEntry entry = new CacheEntry(target); |
| 337 // set VALID | 353 // set VALID |
| 338 entry.setValue(result, 10, TargetedResult.EMPTY_LIST, null); | 354 entry.setValue(result, 10, TargetedResult.EMPTY_LIST, null); |
| 339 expect(entry.getState(result), CacheState.VALID); | 355 expect(entry.getState(result), CacheState.VALID); |
| 340 expect(entry.getValue(result), 10); | 356 expect(entry.getValue(result), 10); |
| 341 // set IN_PROCESS | 357 // set IN_PROCESS |
| 342 entry.setState(result, CacheState.IN_PROCESS); | 358 entry.setState(result, CacheState.IN_PROCESS); |
| 343 expect(entry.getState(result), CacheState.IN_PROCESS); | 359 expect(entry.getState(result), CacheState.IN_PROCESS); |
| 344 expect(entry.getValue(result), 10); | 360 expect(entry.getValue(result), 10); |
| 345 } | 361 } |
| 346 | 362 |
| 347 test_setState_invalid() { | 363 test_setState_invalid() { |
| 364 AnalysisTarget target = new TestSource(); |
| 348 ResultDescriptor result = new ResultDescriptor('test', 1); | 365 ResultDescriptor result = new ResultDescriptor('test', 1); |
| 349 CacheEntry entry = new CacheEntry(); | 366 CacheEntry entry = new CacheEntry(target); |
| 350 // set VALID | 367 // set VALID |
| 351 String memento = 'main() {}'; | 368 String memento = 'main() {}'; |
| 352 entry.setValue(result, 10, TargetedResult.EMPTY_LIST, memento); | 369 entry.setValue(result, 10, TargetedResult.EMPTY_LIST, memento); |
| 353 expect(entry.getState(result), CacheState.VALID); | 370 expect(entry.getState(result), CacheState.VALID); |
| 354 expect(entry.getValue(result), 10); | 371 expect(entry.getValue(result), 10); |
| 355 // set INVALID | 372 // set INVALID |
| 356 entry.setState(result, CacheState.INVALID); | 373 entry.setState(result, CacheState.INVALID); |
| 357 expect(entry.getState(result), CacheState.INVALID); | 374 expect(entry.getState(result), CacheState.INVALID); |
| 358 expect(entry.getValue(result), 1); | 375 expect(entry.getValue(result), 1); |
| 359 expect(entry.getMemento(result), memento); | 376 expect(entry.getMemento(result), memento); |
| 360 } | 377 } |
| 361 | 378 |
| 362 test_setState_invalid_invalidateDependent() { | 379 test_setState_invalid_invalidateDependent() { |
| 363 AnalysisTarget target = new TestSource(); | 380 AnalysisTarget target = new TestSource(); |
| 364 CacheEntry entry = new CacheEntry(); | 381 CacheEntry entry = new CacheEntry(target); |
| 365 cache.put(target, entry); | 382 cache.put(entry); |
| 366 ResultDescriptor result1 = new ResultDescriptor('result1', -1); | 383 ResultDescriptor result1 = new ResultDescriptor('result1', -1); |
| 367 ResultDescriptor result2 = new ResultDescriptor('result2', -2); | 384 ResultDescriptor result2 = new ResultDescriptor('result2', -2); |
| 368 ResultDescriptor result3 = new ResultDescriptor('result3', -3); | 385 ResultDescriptor result3 = new ResultDescriptor('result3', -3); |
| 369 ResultDescriptor result4 = new ResultDescriptor('result4', -4); | 386 ResultDescriptor result4 = new ResultDescriptor('result4', -4); |
| 370 // set results, all of them are VALID | 387 // set results, all of them are VALID |
| 371 entry.setValue(result1, 111, TargetedResult.EMPTY_LIST, null); | 388 entry.setValue(result1, 111, TargetedResult.EMPTY_LIST, null); |
| 372 entry.setValue(result2, 222, [new TargetedResult(target, result1)], null); | 389 entry.setValue(result2, 222, [new TargetedResult(target, result1)], null); |
| 373 entry.setValue(result3, 333, [new TargetedResult(target, result2)], null); | 390 entry.setValue(result3, 333, [new TargetedResult(target, result2)], null); |
| 374 entry.setValue(result4, 444, [], null); | 391 entry.setValue(result4, 444, [], null); |
| 375 expect(entry.getState(result1), CacheState.VALID); | 392 expect(entry.getState(result1), CacheState.VALID); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 386 expect(entry.getState(result2), CacheState.INVALID); | 403 expect(entry.getState(result2), CacheState.INVALID); |
| 387 expect(entry.getState(result3), CacheState.INVALID); | 404 expect(entry.getState(result3), CacheState.INVALID); |
| 388 expect(entry.getState(result4), CacheState.VALID); | 405 expect(entry.getState(result4), CacheState.VALID); |
| 389 expect(entry.getValue(result1), -1); | 406 expect(entry.getValue(result1), -1); |
| 390 expect(entry.getValue(result2), -2); | 407 expect(entry.getValue(result2), -2); |
| 391 expect(entry.getValue(result3), -3); | 408 expect(entry.getValue(result3), -3); |
| 392 expect(entry.getValue(result4), 444); | 409 expect(entry.getValue(result4), 444); |
| 393 } | 410 } |
| 394 | 411 |
| 395 test_setState_valid() { | 412 test_setState_valid() { |
| 413 AnalysisTarget target = new TestSource(); |
| 396 ResultDescriptor result = new ResultDescriptor('test', null); | 414 ResultDescriptor result = new ResultDescriptor('test', null); |
| 397 CacheEntry entry = new CacheEntry(); | 415 CacheEntry entry = new CacheEntry(target); |
| 398 expect(() => entry.setState(result, CacheState.VALID), throwsArgumentError); | 416 expect(() => entry.setState(result, CacheState.VALID), throwsArgumentError); |
| 399 } | 417 } |
| 400 | 418 |
| 401 test_setValue() { | 419 test_setValue() { |
| 420 AnalysisTarget target = new TestSource(); |
| 402 ResultDescriptor result = new ResultDescriptor('test', null); | 421 ResultDescriptor result = new ResultDescriptor('test', null); |
| 403 String value = 'value'; | 422 String value = 'value'; |
| 404 String memento = 'main() {}'; | 423 String memento = 'main() {}'; |
| 405 CacheEntry entry = new CacheEntry(); | 424 CacheEntry entry = new CacheEntry(target); |
| 406 entry.setValue(result, value, TargetedResult.EMPTY_LIST, memento); | 425 entry.setValue(result, value, TargetedResult.EMPTY_LIST, memento); |
| 407 expect(entry.getState(result), CacheState.VALID); | 426 expect(entry.getState(result), CacheState.VALID); |
| 408 expect(entry.getValue(result), value); | 427 expect(entry.getValue(result), value); |
| 409 expect(entry.getMemento(result), memento); | 428 expect(entry.getMemento(result), memento); |
| 410 } | 429 } |
| 411 | 430 |
| 412 test_setValue_flushResults() { | 431 test_setValue_flushResults() { |
| 413 ResultCachingPolicy cachingPolicy = new SimpleResultCachingPolicy(2, 2); | 432 ResultCachingPolicy cachingPolicy = new SimpleResultCachingPolicy(2, 2); |
| 414 ResultDescriptor descriptor1 = | 433 ResultDescriptor descriptor1 = |
| 415 new ResultDescriptor('result1', null, cachingPolicy: cachingPolicy); | 434 new ResultDescriptor('result1', null, cachingPolicy: cachingPolicy); |
| 416 ResultDescriptor descriptor2 = | 435 ResultDescriptor descriptor2 = |
| 417 new ResultDescriptor('result2', null, cachingPolicy: cachingPolicy); | 436 new ResultDescriptor('result2', null, cachingPolicy: cachingPolicy); |
| 418 ResultDescriptor descriptor3 = | 437 ResultDescriptor descriptor3 = |
| 419 new ResultDescriptor('result3', null, cachingPolicy: cachingPolicy); | 438 new ResultDescriptor('result3', null, cachingPolicy: cachingPolicy); |
| 420 AnalysisTarget target = new TestSource(); | 439 AnalysisTarget target = new TestSource(); |
| 421 CacheEntry entry = new CacheEntry(); | 440 CacheEntry entry = new CacheEntry(target); |
| 422 cache.put(target, entry); | 441 cache.put(entry); |
| 423 Object memento1 = 'aaa'; | 442 Object memento1 = 'aaa'; |
| 424 { | 443 { |
| 425 entry.setValue(descriptor1, 1, TargetedResult.EMPTY_LIST, memento1); | 444 entry.setValue(descriptor1, 1, TargetedResult.EMPTY_LIST, memento1); |
| 426 expect(entry.getState(descriptor1), CacheState.VALID); | 445 expect(entry.getState(descriptor1), CacheState.VALID); |
| 427 expect(entry.getMemento(descriptor1), memento1); | 446 expect(entry.getMemento(descriptor1), memento1); |
| 428 } | 447 } |
| 429 { | 448 { |
| 430 entry.setValue(descriptor2, 2, TargetedResult.EMPTY_LIST, null); | 449 entry.setValue(descriptor2, 2, TargetedResult.EMPTY_LIST, null); |
| 431 expect(entry.getState(descriptor1), CacheState.VALID); | 450 expect(entry.getState(descriptor1), CacheState.VALID); |
| 432 expect(entry.getState(descriptor2), CacheState.VALID); | 451 expect(entry.getState(descriptor2), CacheState.VALID); |
| 433 } | 452 } |
| 434 { | 453 { |
| 435 entry.setValue(descriptor3, 3, TargetedResult.EMPTY_LIST, null); | 454 entry.setValue(descriptor3, 3, TargetedResult.EMPTY_LIST, null); |
| 436 expect(entry.getState(descriptor1), CacheState.FLUSHED); | 455 expect(entry.getState(descriptor1), CacheState.FLUSHED); |
| 437 expect(entry.getState(descriptor2), CacheState.VALID); | 456 expect(entry.getState(descriptor2), CacheState.VALID); |
| 438 expect(entry.getState(descriptor3), CacheState.VALID); | 457 expect(entry.getState(descriptor3), CacheState.VALID); |
| 439 expect(entry.getMemento(descriptor1), isNull); | 458 expect(entry.getMemento(descriptor1), isNull); |
| 440 } | 459 } |
| 441 } | 460 } |
| 442 | 461 |
| 443 test_setValue_invalidateDependent() { | 462 test_setValue_invalidateDependent() { |
| 444 AnalysisTarget target = new TestSource(); | 463 AnalysisTarget target = new TestSource(); |
| 445 CacheEntry entry = new CacheEntry(); | 464 CacheEntry entry = new CacheEntry(target); |
| 446 cache.put(target, entry); | 465 cache.put(entry); |
| 447 ResultDescriptor result1 = new ResultDescriptor('result1', -1); | 466 ResultDescriptor result1 = new ResultDescriptor('result1', -1); |
| 448 ResultDescriptor result2 = new ResultDescriptor('result2', -2); | 467 ResultDescriptor result2 = new ResultDescriptor('result2', -2); |
| 449 ResultDescriptor result3 = new ResultDescriptor('result3', -3); | 468 ResultDescriptor result3 = new ResultDescriptor('result3', -3); |
| 450 ResultDescriptor result4 = new ResultDescriptor('result4', -4); | 469 ResultDescriptor result4 = new ResultDescriptor('result4', -4); |
| 451 // set results, all of them are VALID | 470 // set results, all of them are VALID |
| 452 entry.setValue(result1, 111, TargetedResult.EMPTY_LIST, null); | 471 entry.setValue(result1, 111, TargetedResult.EMPTY_LIST, null); |
| 453 entry.setValue(result2, 222, [new TargetedResult(target, result1)], null); | 472 entry.setValue(result2, 222, [new TargetedResult(target, result1)], null); |
| 454 entry.setValue(result3, 333, [new TargetedResult(target, result2)], null); | 473 entry.setValue(result3, 333, [new TargetedResult(target, result2)], null); |
| 455 entry.setValue(result4, 444, [], null); | 474 entry.setValue(result4, 444, [], null); |
| 456 expect(entry.getState(result1), CacheState.VALID); | 475 expect(entry.getState(result1), CacheState.VALID); |
| (...skipping 12 matching lines...) Expand all Loading... |
| 469 expect(entry.getState(result4), CacheState.VALID); | 488 expect(entry.getState(result4), CacheState.VALID); |
| 470 expect(entry.getValue(result1), 1111); | 489 expect(entry.getValue(result1), 1111); |
| 471 expect(entry.getValue(result2), -2); | 490 expect(entry.getValue(result2), -2); |
| 472 expect(entry.getValue(result3), -3); | 491 expect(entry.getValue(result3), -3); |
| 473 expect(entry.getValue(result4), 444); | 492 expect(entry.getValue(result4), 444); |
| 474 } | 493 } |
| 475 | 494 |
| 476 test_setValue_invalidateDependent2() { | 495 test_setValue_invalidateDependent2() { |
| 477 AnalysisTarget target1 = new TestSource('a'); | 496 AnalysisTarget target1 = new TestSource('a'); |
| 478 AnalysisTarget target2 = new TestSource('b'); | 497 AnalysisTarget target2 = new TestSource('b'); |
| 479 CacheEntry entry1 = new CacheEntry(); | 498 CacheEntry entry1 = new CacheEntry(target1); |
| 480 CacheEntry entry2 = new CacheEntry(); | 499 CacheEntry entry2 = new CacheEntry(target2); |
| 481 cache.put(target1, entry1); | 500 cache.put(entry1); |
| 482 cache.put(target2, entry2); | 501 cache.put(entry2); |
| 483 ResultDescriptor result1 = new ResultDescriptor('result1', -1); | 502 ResultDescriptor result1 = new ResultDescriptor('result1', -1); |
| 484 ResultDescriptor result2 = new ResultDescriptor('result2', -2); | 503 ResultDescriptor result2 = new ResultDescriptor('result2', -2); |
| 485 ResultDescriptor result3 = new ResultDescriptor('result3', -3); | 504 ResultDescriptor result3 = new ResultDescriptor('result3', -3); |
| 486 // set results, all of them are VALID | 505 // set results, all of them are VALID |
| 487 entry1.setValue(result1, 111, TargetedResult.EMPTY_LIST, null); | 506 entry1.setValue(result1, 111, TargetedResult.EMPTY_LIST, null); |
| 488 entry1.setValue(result2, 222, [new TargetedResult(target1, result1)], null); | 507 entry1.setValue(result2, 222, [new TargetedResult(target1, result1)], null); |
| 489 entry2.setValue(result3, 333, [new TargetedResult(target1, result2)], null); | 508 entry2.setValue(result3, 333, [new TargetedResult(target1, result2)], null); |
| 490 expect(entry1.getState(result1), CacheState.VALID); | 509 expect(entry1.getState(result1), CacheState.VALID); |
| 491 expect(entry1.getState(result2), CacheState.VALID); | 510 expect(entry1.getState(result2), CacheState.VALID); |
| 492 expect(entry2.getState(result3), CacheState.VALID); | 511 expect(entry2.getState(result3), CacheState.VALID); |
| 493 expect(entry1.getValue(result1), 111); | 512 expect(entry1.getValue(result1), 111); |
| 494 expect(entry1.getValue(result2), 222); | 513 expect(entry1.getValue(result2), 222); |
| 495 expect(entry2.getValue(result3), 333); | 514 expect(entry2.getValue(result3), 333); |
| 496 // set result1, invalidates result2 and result3 | 515 // set result1, invalidates result2 and result3 |
| 497 entry1.setValue(result1, 1111, TargetedResult.EMPTY_LIST, null); | 516 entry1.setValue(result1, 1111, TargetedResult.EMPTY_LIST, null); |
| 498 expect(entry1.getState(result1), CacheState.VALID); | 517 expect(entry1.getState(result1), CacheState.VALID); |
| 499 expect(entry1.getState(result2), CacheState.INVALID); | 518 expect(entry1.getState(result2), CacheState.INVALID); |
| 500 expect(entry2.getState(result3), CacheState.INVALID); | 519 expect(entry2.getState(result3), CacheState.INVALID); |
| 501 expect(entry1.getValue(result1), 1111); | 520 expect(entry1.getValue(result1), 1111); |
| 502 expect(entry1.getValue(result2), -2); | 521 expect(entry1.getValue(result2), -2); |
| 503 expect(entry2.getValue(result3), -3); | 522 expect(entry2.getValue(result3), -3); |
| 504 } | 523 } |
| 505 | 524 |
| 506 test_toString_empty() { | 525 test_toString_empty() { |
| 507 CacheEntry entry = new CacheEntry(); | 526 AnalysisTarget target = new TestSource(); |
| 527 CacheEntry entry = new CacheEntry(target); |
| 508 expect(entry.toString(), isNotNull); | 528 expect(entry.toString(), isNotNull); |
| 509 } | 529 } |
| 510 | 530 |
| 511 test_toString_nonEmpty() { | 531 test_toString_nonEmpty() { |
| 512 String value = 'value'; | 532 AnalysisTarget target = new TestSource(); |
| 513 ResultDescriptor result = new ResultDescriptor('test', null); | 533 ResultDescriptor result = new ResultDescriptor('test', null); |
| 514 CacheEntry entry = new CacheEntry(); | 534 CacheEntry entry = new CacheEntry(target); |
| 515 entry.setValue(result, value, TargetedResult.EMPTY_LIST, null); | 535 entry.setValue(result, 42, TargetedResult.EMPTY_LIST, null); |
| 516 expect(entry.toString(), isNotNull); | 536 expect(entry.toString(), isNotNull); |
| 517 } | 537 } |
| 518 } | 538 } |
| 519 | 539 |
| 520 @reflectiveTest | 540 @reflectiveTest |
| 521 class CacheFlushManagerTest { | 541 class CacheFlushManagerTest { |
| 522 CacheFlushManager manager = new CacheFlushManager( | 542 CacheFlushManager manager = new CacheFlushManager( |
| 523 new SimpleResultCachingPolicy(15, 3), (AnalysisTarget target) => false); | 543 new SimpleResultCachingPolicy(15, 3), (AnalysisTarget target) => false); |
| 524 | 544 |
| 525 test_madeActive() { | 545 test_madeActive() { |
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 661 abstract class CachePartitionTest extends EngineTestCase { | 681 abstract class CachePartitionTest extends EngineTestCase { |
| 662 CachePartition createPartition(); | 682 CachePartition createPartition(); |
| 663 | 683 |
| 664 void test_creation() { | 684 void test_creation() { |
| 665 expect(createPartition(), isNotNull); | 685 expect(createPartition(), isNotNull); |
| 666 } | 686 } |
| 667 | 687 |
| 668 void test_entrySet() { | 688 void test_entrySet() { |
| 669 CachePartition partition = createPartition(); | 689 CachePartition partition = createPartition(); |
| 670 AnalysisTarget target = new TestSource(); | 690 AnalysisTarget target = new TestSource(); |
| 671 CacheEntry entry = new CacheEntry(); | 691 CacheEntry entry = new CacheEntry(target); |
| 672 partition.put(target, entry); | 692 partition.put(entry); |
| 673 Map<AnalysisTarget, CacheEntry> entryMap = partition.map; | 693 Map<AnalysisTarget, CacheEntry> entryMap = partition.map; |
| 674 expect(entryMap, hasLength(1)); | 694 expect(entryMap, hasLength(1)); |
| 675 AnalysisTarget entryKey = entryMap.keys.first; | 695 AnalysisTarget entryKey = entryMap.keys.first; |
| 676 expect(entryKey, target); | 696 expect(entryKey, target); |
| 677 expect(entryMap[entryKey], entry); | 697 expect(entryMap[entryKey], entry); |
| 678 } | 698 } |
| 679 | 699 |
| 680 void test_get() { | 700 void test_get() { |
| 681 CachePartition partition = createPartition(); | 701 CachePartition partition = createPartition(); |
| 682 AnalysisTarget target = new TestSource(); | 702 AnalysisTarget target = new TestSource(); |
| 683 expect(partition.get(target), isNull); | 703 expect(partition.get(target), isNull); |
| 684 } | 704 } |
| 685 | 705 |
| 686 void test_put_alreadyInPartition() { | 706 void test_put_alreadyInPartition() { |
| 687 CachePartition partition1 = createPartition(); | 707 CachePartition partition1 = createPartition(); |
| 688 CachePartition partition2 = createPartition(); | 708 CachePartition partition2 = createPartition(); |
| 689 AnalysisTarget target = new TestSource(); | 709 AnalysisTarget target = new TestSource(); |
| 690 CacheEntry entry = new CacheEntry(); | 710 CacheEntry entry = new CacheEntry(target); |
| 691 partition1.put(target, entry); | 711 partition1.put(entry); |
| 692 expect(() => partition2.put(target, entry), throwsStateError); | 712 expect(() => partition2.put(entry), throwsStateError); |
| 693 } | 713 } |
| 694 | 714 |
| 695 void test_put_noFlush() { | 715 void test_put_noFlush() { |
| 696 CachePartition partition = createPartition(); | 716 CachePartition partition = createPartition(); |
| 697 AnalysisTarget target = new TestSource(); | 717 AnalysisTarget target = new TestSource(); |
| 698 CacheEntry entry = new CacheEntry(); | 718 CacheEntry entry = new CacheEntry(target); |
| 699 partition.put(target, entry); | 719 partition.put(entry); |
| 700 expect(partition.get(target), entry); | 720 expect(partition.get(target), entry); |
| 701 } | 721 } |
| 702 | 722 |
| 703 void test_remove() { | 723 void test_remove() { |
| 704 CachePartition partition = createPartition(); | 724 CachePartition partition = createPartition(); |
| 705 AnalysisTarget target = new TestSource(); | 725 AnalysisTarget target = new TestSource(); |
| 706 CacheEntry entry = new CacheEntry(); | 726 CacheEntry entry = new CacheEntry(target); |
| 707 partition.put(target, entry); | 727 partition.put(entry); |
| 708 expect(partition.get(target), entry); | 728 expect(partition.get(target), entry); |
| 709 partition.remove(target); | 729 partition.remove(target); |
| 710 expect(partition.get(target), isNull); | 730 expect(partition.get(target), isNull); |
| 711 } | 731 } |
| 712 } | 732 } |
| 713 | 733 |
| 714 @reflectiveTest | 734 @reflectiveTest |
| 715 class ResultDataTest extends EngineTestCase { | 735 class ResultDataTest extends EngineTestCase { |
| 716 test_creation() { | 736 test_creation() { |
| 717 String value = 'value'; | 737 String value = 'value'; |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 765 UniversalCachePartition partition = new UniversalCachePartition(null); | 785 UniversalCachePartition partition = new UniversalCachePartition(null); |
| 766 TestSource source = new TestSource(); | 786 TestSource source = new TestSource(); |
| 767 expect(partition.isResponsibleFor(source), isTrue); | 787 expect(partition.isResponsibleFor(source), isTrue); |
| 768 } | 788 } |
| 769 } | 789 } |
| 770 | 790 |
| 771 class _InternalAnalysisContextMock extends TypedMock | 791 class _InternalAnalysisContextMock extends TypedMock |
| 772 implements InternalAnalysisContext { | 792 implements InternalAnalysisContext { |
| 773 noSuchMethod(Invocation invocation) => super.noSuchMethod(invocation); | 793 noSuchMethod(Invocation invocation) => super.noSuchMethod(invocation); |
| 774 } | 794 } |
| OLD | NEW |