Merge "Adding support for dynamically updated test status"
diff --git a/libs/rs/java/tests/src/com/android/rs/test/RSTestCore.java b/libs/rs/java/tests/src/com/android/rs/test/RSTestCore.java
index da64e02..cd8f814 100644
--- a/libs/rs/java/tests/src/com/android/rs/test/RSTestCore.java
+++ b/libs/rs/java/tests/src/com/android/rs/test/RSTestCore.java
@@ -51,8 +51,8 @@
unitTests = new ArrayList<UnitTest>();
- unitTests.add(new UT_primitives(mRes));
- unitTests.add(new UT_fp_mad(mRes));
+ unitTests.add(new UT_primitives(this, mRes));
+ unitTests.add(new UT_fp_mad(this, mRes));
/*
unitTests.add(new UnitTest("<Pass>", 1));
unitTests.add(new UnitTest());
@@ -62,23 +62,26 @@
UnitTest [] uta = new UnitTest[unitTests.size()];
uta = unitTests.toArray(uta);
- /* Run the actual unit tests */
- ListIterator<UnitTest> test_iter = unitTests.listIterator();
- while (test_iter.hasNext()) {
- UnitTest t = test_iter.next();
- t.start();
- try {
- t.join();
- } catch (InterruptedException e) {
- }
- }
-
mListAllocs = new ScriptField_ListAllocs_s(mRS, uta.length);
for (int i = 0; i < uta.length; i++) {
ScriptField_ListAllocs_s.Item listElem = new ScriptField_ListAllocs_s.Item();
listElem.text = Allocation.createFromString(mRS, uta[i].name);
listElem.result = uta[i].result;
mListAllocs.set(listElem, i, false);
+ uta[i].setItem(listElem);
+ }
+
+ /* Run the actual unit tests */
+ ListIterator<UnitTest> test_iter = unitTests.listIterator();
+ while (test_iter.hasNext()) {
+ UnitTest t = test_iter.next();
+ t.start();
+ /*
+ try {
+ t.join();
+ } catch (InterruptedException e) {
+ }
+ */
}
mListAllocs.copyAll();
@@ -92,6 +95,15 @@
mRS.finish();
}
+ public void refreshTestResults() {
+ if (mListAllocs != null && mScript != null && mRS != null) {
+ mListAllocs.copyAll();
+
+ mScript.bind_gList(mListAllocs);
+ mRS.contextBindRootScript(mScript);
+ }
+ }
+
public void newTouchPosition(float x, float y, float pressure, int id) {
}
diff --git a/libs/rs/java/tests/src/com/android/rs/test/UT_fp_mad.java b/libs/rs/java/tests/src/com/android/rs/test/UT_fp_mad.java
index c4e57e8..8391fb3 100644
--- a/libs/rs/java/tests/src/com/android/rs/test/UT_fp_mad.java
+++ b/libs/rs/java/tests/src/com/android/rs/test/UT_fp_mad.java
@@ -22,8 +22,8 @@
public class UT_fp_mad extends UnitTest {
private Resources mRes;
- protected UT_fp_mad(Resources res) {
- super("Fp_Mad");
+ protected UT_fp_mad(RSTestCore rstc, Resources res) {
+ super(rstc, "Fp_Mad");
mRes = res;
}
diff --git a/libs/rs/java/tests/src/com/android/rs/test/UT_primitives.java b/libs/rs/java/tests/src/com/android/rs/test/UT_primitives.java
index 629f0b2..bef6ec5 100644
--- a/libs/rs/java/tests/src/com/android/rs/test/UT_primitives.java
+++ b/libs/rs/java/tests/src/com/android/rs/test/UT_primitives.java
@@ -22,8 +22,8 @@
public class UT_primitives extends UnitTest {
private Resources mRes;
- protected UT_primitives(Resources res) {
- super("Primitives");
+ protected UT_primitives(RSTestCore rstc, Resources res) {
+ super(rstc, "Primitives");
mRes = res;
}
@@ -33,8 +33,6 @@
pRS.mMessageCallback = mRsMessage;
s.invoke_primitives_test(0, 0);
pRS.finish();
- //android.util.Log.v("UT", "After pRS.finish");
-
pRS.destroy();
}
}
diff --git a/libs/rs/java/tests/src/com/android/rs/test/UnitTest.java b/libs/rs/java/tests/src/com/android/rs/test/UnitTest.java
index 5b55779..d98b763 100644
--- a/libs/rs/java/tests/src/com/android/rs/test/UnitTest.java
+++ b/libs/rs/java/tests/src/com/android/rs/test/UnitTest.java
@@ -20,23 +20,30 @@
public class UnitTest extends Thread {
public String name;
public int result;
+ private ScriptField_ListAllocs_s.Item mItem;
+ private RSTestCore mRSTC;
/* These constants must match those in shared.rsh */
public static final int RS_MSG_TEST_PASSED = 100;
public static final int RS_MSG_TEST_FAILED = 101;
- protected UnitTest(String n, int initResult) {
+ protected UnitTest(RSTestCore rstc, String n, int initResult) {
super();
+ mRSTC = rstc;
name = n;
result = initResult;
}
- protected UnitTest(String n) {
- this(n, 0);
+ protected UnitTest(RSTestCore rstc, String n) {
+ this(rstc, n, 0);
+ }
+
+ protected UnitTest(RSTestCore rstc) {
+ this (rstc, "<Unknown>");
}
protected UnitTest() {
- this ("<Unknown>");
+ this (null);
}
protected RSMessage mRsMessage = new RSMessage() {
@@ -51,9 +58,18 @@
default:
break;
}
+
+ if (mItem != null) {
+ mItem.result = result;
+ mRSTC.refreshTestResults();
+ }
}
};
+ public void setItem(ScriptField_ListAllocs_s.Item item) {
+ mItem = item;
+ }
+
public void run() {
/* This method needs to be implemented for each subclass */
}
diff --git a/libs/rs/java/tests/src/com/android/rs/test/rslist.rs b/libs/rs/java/tests/src/com/android/rs/test/rslist.rs
index fcea3ab..72d1850 100644
--- a/libs/rs/java/tests/src/com/android/rs/test/rslist.rs
+++ b/libs/rs/java/tests/src/com/android/rs/test/rslist.rs
@@ -71,8 +71,10 @@
case -1: /* Failed */
rsgFontColor(0.9f, 0.5f, 0.5f, 1.0f);
break;
- case 0: /* Unknown */
- default:
+ case 0: /* Still Testing */
+ rsgFontColor(0.9f, 0.9f, 0.5f, 1.0f);
+ break;
+ default: /* Unknown */
rsgFontColor(0.9f, 0.9f, 0.9f, 1.0f);
break;
}