This commit is contained in:
Anna Kozlova
2010-09-07 20:46:49 +04:00
committed by Roman Shevchenko
parent 7f597a62a9
commit 0fefc2c9cf
@@ -68,7 +68,7 @@ public class TestsPacketsReceiver implements PacketProcessor, Disposable {
private final InputObjectRegistry myObjectRegistry;
private Set<TestProxy> myCurrentTests = new HashSet<TestProxy>();
private final Set<TestProxy> myCurrentTests = new HashSet<TestProxy>();
private boolean myIsTerminated = false;
private JUnitRunningModel myModel;
private final JUnitConsoleProperties myConsoleProperties;
@@ -81,7 +81,9 @@ public class TestsPacketsReceiver implements PacketProcessor, Disposable {
}
public Set<TestProxy> getCurrentTests() {
return new HashSet<TestProxy>(myCurrentTests);
synchronized (myCurrentTests) {
return new HashSet<TestProxy>(myCurrentTests);
}
}
public void processPacket(final String packet) {
@@ -125,7 +127,9 @@ public class TestsPacketsReceiver implements PacketProcessor, Disposable {
public void notifyTestStart(ObjectReader reader) {
final TestProxy testProxy = reader.readObject();
myCurrentTests.add(testProxy);
synchronized (myCurrentTests) {
myCurrentTests.add(testProxy);
}
final JUnitRunningModel model = getModel();
if (model != null && testProxy.getParent() == null && model.getRoot() != testProxy) {
getDynamicParent(model, testProxy).addChild(testProxy);
@@ -161,7 +165,9 @@ public class TestsPacketsReceiver implements PacketProcessor, Disposable {
public void notifyTestResult(ObjectReader reader) {
final TestProxy testProxy = reader.readObject();
myCurrentTests.remove(testProxy);
synchronized (myCurrentTests) {
myCurrentTests.remove(testProxy);
}
final int state = reader.readInt();
final StateChanger stateChanger = STATE_CLASSES.get(new Integer(state));
stateChanger.changeStateOf(testProxy, reader);
@@ -169,7 +175,9 @@ public class TestsPacketsReceiver implements PacketProcessor, Disposable {
public void notifyFinish(ObjectReader reader) {
myIsTerminated = true;
myCurrentTests.clear();
synchronized (myCurrentTests) {
myCurrentTests.clear();
}
final JUnitRunningModel model = getModel();
if (model != null) {
model.getNotifier().fireRunnerStateChanged(new CompletionEvent(true, reader.readInt()));