1 package org.iotivity.service;
3 import org.iotivity.service.client.RcsAddress;
4 import org.iotivity.service.client.RcsDiscoveryManager;
5 import org.iotivity.service.client.RcsDiscoveryManager.OnResourceDiscoveredListener;
6 import org.iotivity.service.client.RcsRemoteResourceObject;
7 import org.iotivity.service.server.RcsResourceObject;
9 import android.test.InstrumentationTestCase;
11 public abstract class TestBase extends InstrumentationTestCase {
12 protected static final String RESOURCEURI = "/a/TemperatureSensor";
13 protected static final String RESOURCETYPE = "oic.r.type";
14 protected static final String RESOURCEINTERFACE = "oic.if.baseline";
16 protected static final String KEY = "key";
17 protected static final RcsValue VALUE = new RcsValue(100);
18 protected static final int RAW_VALUE = 100;
20 private final Object mCond = new Object();
22 protected RcsResourceObject mServer;
23 protected RcsRemoteResourceObject mClient;
25 private OnResourceDiscoveredListener mOnResourceDiscoveredListener = new OnResourceDiscoveredListener() {
27 public void onResourceDiscovered(
28 RcsRemoteResourceObject remoteObject) {
29 if (mClient != null) {
33 mClient = remoteObject;
34 synchronized (mCond) {
41 protected void setUp() throws Exception {
44 mServer = new RcsResourceObject.Builder(RESOURCEURI, RESOURCETYPE,
45 RESOURCEINTERFACE).build();
46 mServer.setAttribute(KEY, VALUE);
48 WaitUntilDiscovered();
50 assertNotNull(mClient);
53 private void WaitUntilDiscovered() throws RcsException {
54 while (mClient == null) {
56 RcsDiscoveryManager.DiscoveryTask discoveryTask = RcsDiscoveryManager
57 .getInstance().discoverResourceByType(RcsAddress.multicast(),
58 RESOURCETYPE, mOnResourceDiscoveredListener);
60 synchronized (mCond) {
64 discoveryTask.cancel();
65 } catch (InterruptedException e) {
71 protected void setServerAttrbutes(RcsResourceAttributes attrs)
73 RcsResourceObject.AttributesLock lock = mServer.getAttributesLock();
76 lock.lock().putAll(attrs);
84 protected void tearDown() throws Exception {