Adding new unit test for rsDebug().
Change-Id: I8a354e40640b83aca3148aa0cf13d3335ff37dd4
This commit is contained in:
@@ -62,6 +62,7 @@ public class RSTestCore {
|
||||
unitTests = new ArrayList<UnitTest>();
|
||||
|
||||
unitTests.add(new UT_primitives(this, mRes));
|
||||
unitTests.add(new UT_rsdebug(this, mRes));
|
||||
unitTests.add(new UT_fp_mad(this, mRes));
|
||||
/*
|
||||
unitTests.add(new UnitTest(null, "<Pass>", 1));
|
||||
|
||||
40
libs/rs/java/tests/src/com/android/rs/test/UT_rsdebug.java
Normal file
40
libs/rs/java/tests/src/com/android/rs/test/UT_rsdebug.java
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Copyright (C) 2010 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.android.rs.test;
|
||||
|
||||
import android.content.res.Resources;
|
||||
import android.renderscript.*;
|
||||
|
||||
public class UT_rsdebug extends UnitTest {
|
||||
private Resources mRes;
|
||||
|
||||
protected UT_rsdebug(RSTestCore rstc, Resources res) {
|
||||
super(rstc, "rsDebug");
|
||||
mRes = res;
|
||||
}
|
||||
|
||||
public void run() {
|
||||
RenderScript pRS = RenderScript.create();
|
||||
ScriptC_rsdebug s = new ScriptC_rsdebug(pRS, mRes, R.raw.rsdebug, true);
|
||||
pRS.mMessageCallback = mRsMessage;
|
||||
s.invoke_test_rsdebug(0, 0);
|
||||
pRS.finish();
|
||||
waitForMessage();
|
||||
pRS.destroy();
|
||||
}
|
||||
}
|
||||
|
||||
58
libs/rs/java/tests/src/com/android/rs/test/rsdebug.rs
Normal file
58
libs/rs/java/tests/src/com/android/rs/test/rsdebug.rs
Normal file
@@ -0,0 +1,58 @@
|
||||
#include "shared.rsh"
|
||||
|
||||
#pragma rs export_func(test_rsdebug)
|
||||
|
||||
// Testing primitive types
|
||||
float floatTest = 1.99f;
|
||||
double doubleTest = 2.05;
|
||||
char charTest = -8;
|
||||
short shortTest = -16;
|
||||
int intTest = -32;
|
||||
long longTest = 17179869184l; // 1 << 34
|
||||
long long longlongTest = 68719476736l; // 1 << 36
|
||||
|
||||
uchar ucharTest = 8;
|
||||
ushort ushortTest = 16;
|
||||
uint uintTest = 32;
|
||||
ulong ulongTest = 4611686018427387904L;
|
||||
int64_t int64_tTest = -17179869184l; // - 1 << 34
|
||||
uint64_t uint64_tTest = 117179869184l;
|
||||
|
||||
static bool basic_test(uint32_t index) {
|
||||
bool failed = false;
|
||||
|
||||
// This test focuses primarily on compilation-time, not run-time.
|
||||
// For this reason, none of the outputs are actually checked.
|
||||
|
||||
rsDebug("floatTest", floatTest);
|
||||
rsDebug("doubleTest", doubleTest);
|
||||
rsDebug("charTest", charTest);
|
||||
rsDebug("shortTest", shortTest);
|
||||
rsDebug("intTest", intTest);
|
||||
rsDebug("longTest", longTest);
|
||||
rsDebug("longlongTest", longlongTest);
|
||||
|
||||
rsDebug("ucharTest", ucharTest);
|
||||
rsDebug("ushortTest", ushortTest);
|
||||
rsDebug("uintTest", uintTest);
|
||||
rsDebug("ulongTest", ulongTest);
|
||||
rsDebug("int64_tTest", int64_tTest);
|
||||
rsDebug("uint64_tTest", uint64_tTest);
|
||||
|
||||
return failed;
|
||||
}
|
||||
|
||||
void test_rsdebug(uint32_t index, int test_num) {
|
||||
bool failed = false;
|
||||
failed |= basic_test(index);
|
||||
|
||||
if (failed) {
|
||||
rsSendToClientBlocking(RS_MSG_TEST_FAILED);
|
||||
rsDebug("rsdebug_test FAILED", -1);
|
||||
}
|
||||
else {
|
||||
rsSendToClientBlocking(RS_MSG_TEST_PASSED);
|
||||
rsDebug("rsdebug_test PASSED", 0);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user