mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 02:27:39 +00:00
Flush memento objects.
R=brianwilkerson@google.com BUG= Review URL: https://codereview.chromium.org//1129173003 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45610 260f80e4-7a28-3924-810f-c04153c831b5
This commit is contained in:
parent
9aeccc0d2f
commit
1bc667b086
|
@ -817,6 +817,7 @@ class ResultData {
|
|||
void flush() {
|
||||
state = CacheState.FLUSHED;
|
||||
value = descriptor.defaultValue;
|
||||
memento = null;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -420,9 +420,11 @@ class CacheEntryTest extends EngineTestCase {
|
|||
AnalysisTarget target = new TestSource();
|
||||
CacheEntry entry = new CacheEntry();
|
||||
cache.put(target, entry);
|
||||
Object memento1 = 'aaa';
|
||||
{
|
||||
entry.setValue(descriptor1, 1, TargetedResult.EMPTY_LIST, null);
|
||||
entry.setValue(descriptor1, 1, TargetedResult.EMPTY_LIST, memento1);
|
||||
expect(entry.getState(descriptor1), CacheState.VALID);
|
||||
expect(entry.getMemento(descriptor1), memento1);
|
||||
}
|
||||
{
|
||||
entry.setValue(descriptor2, 2, TargetedResult.EMPTY_LIST, null);
|
||||
|
@ -434,6 +436,7 @@ class CacheEntryTest extends EngineTestCase {
|
|||
expect(entry.getState(descriptor1), CacheState.FLUSHED);
|
||||
expect(entry.getState(descriptor2), CacheState.VALID);
|
||||
expect(entry.getState(descriptor3), CacheState.VALID);
|
||||
expect(entry.getMemento(descriptor1), isNull);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -717,6 +720,18 @@ class ResultDataTest extends EngineTestCase {
|
|||
expect(data.state, CacheState.INVALID);
|
||||
expect(data.value, value);
|
||||
}
|
||||
|
||||
test_flush() {
|
||||
ResultDescriptor result = new ResultDescriptor('test', -1);
|
||||
ResultData data = new ResultData(result);
|
||||
data.state = CacheState.VALID;
|
||||
data.value = 123;
|
||||
data.memento = 'abc';
|
||||
data.flush();
|
||||
expect(data.state, CacheState.FLUSHED);
|
||||
expect(data.value, -1);
|
||||
expect(data.memento, isNull);
|
||||
}
|
||||
}
|
||||
|
||||
@reflectiveTest
|
||||
|
|
Loading…
Reference in a new issue