summaryrefslogtreecommitdiffstats
path: root/testsuites/integration
diff options
context:
space:
mode:
Diffstat (limited to 'testsuites/integration')
-rw-r--r--testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/ContextUpdate.java54
-rw-r--r--testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/SequentialContextInstantiation.java108
-rw-r--r--testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/event/TestEventInstantiation.java18
-rw-r--r--testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexModelExport.java20
-rw-r--r--testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/engine/ApexServiceModelUpdateTest.java42
5 files changed, 66 insertions, 176 deletions
diff --git a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/ContextUpdate.java b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/ContextUpdate.java
index 71968fffe..53c8d1fb8 100644
--- a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/ContextUpdate.java
+++ b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/ContextUpdate.java
@@ -1,7 +1,7 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2019 Nordix Foundation.
+ * Modifications Copyright (C) 2019-2020 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,14 +21,12 @@
package org.onap.policy.apex.testsuites.integration.context.distribution;
-import static org.junit.Assert.assertEquals;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.APEX_DISTRIBUTOR;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.DATE_CONTEXT_ALBUM;
-import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.EXCEPTION_MESSAGE;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.LONG_CONTEXT_ALBUM;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.MAP_CONTEXT_ALBUM;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.TIME_ZONE;
@@ -41,7 +39,6 @@ import java.util.Locale;
import java.util.Map;
import org.onap.policy.apex.context.ContextAlbum;
import org.onap.policy.apex.context.ContextException;
-import org.onap.policy.apex.context.ContextRuntimeException;
import org.onap.policy.apex.context.Distributor;
import org.onap.policy.apex.context.impl.distribution.DistributorFactory;
import org.onap.policy.apex.context.test.concepts.TestContextDateItem;
@@ -89,43 +86,18 @@ public class ContextUpdate {
longContextAlbum.put(NUMBER_ZERO, 0);
longContextAlbum.put(NUMBER_ZERO, NUMBER_ZERO);
- try {
- longContextAlbum.put(NUMBER_ZERO, ZERO);
- fail(EXCEPTION_MESSAGE);
- } catch (final ContextRuntimeException e) {
- assertEquals("Failed to set context value for key \"0\" in album \"LongContextAlbum:0.0.1\":"
+ assertThatThrownBy(() -> longContextAlbum.put(NUMBER_ZERO, ZERO))
+ .hasMessage("Failed to set context value for key \"0\" in album \"LongContextAlbum:0.0.1\":"
+ " LongContextAlbum:0.0.1: object \"zero\" of class \"java.lang.String\" not compatible with"
- + " class \"java.lang.Long\"", e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
-
- try {
- longContextAlbum.put(NUMBER_ZERO, "");
- fail(EXCEPTION_MESSAGE);
- } catch (final ContextRuntimeException e) {
- assertEquals(
- "Failed to set context value for key \"0\" in album \"LongContextAlbum:0.0.1\": LongContextAlbum"
- + ":0.0.1: object \"\" of class \"java.lang.String\" not compatible with class \"java.lang.Long\"",
- e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
-
- try {
- longContextAlbum.put(NUMBER_ZERO, null);
- fail(EXCEPTION_MESSAGE);
- } catch (final ContextRuntimeException e) {
- assertEquals("album \"LongContextAlbum:0.0.1\" null values are illegal on key \"0\" for put()",
- e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
-
- try {
- longContextAlbum.put(null, null);
- fail(EXCEPTION_MESSAGE);
- } catch (final ContextRuntimeException e) {
- assertEquals("album \"LongContextAlbum:0.0.1\" null keys are illegal on keys for put()", e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ + " class \"java.lang.Long\"");
+ assertThatThrownBy(() -> longContextAlbum.put(NUMBER_ZERO, ""))
+ .hasMessage("Failed to set context value for key \"0\" in album \"LongContextAlbum:0.0.1\": "
+ + "LongContextAlbum:0.0.1: object \"\" of class \"java.lang.String\" not "
+ + "compatible with class \"java.lang.Long\"");
+ assertThatThrownBy(() -> longContextAlbum.put(NUMBER_ZERO, null))
+ .hasMessage("album \"LongContextAlbum:0.0.1\" null values are illegal on key \"0\" for put()");
+ assertThatThrownBy(() -> longContextAlbum.put(null, null))
+ .hasMessage("album \"LongContextAlbum:0.0.1\" null keys are illegal on keys for put()");
assertNull(dateContextAlbum.put("date0", tciA));
assertTrue(dateContextAlbum.put("date0", tciA).equals(tciA));
diff --git a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/SequentialContextInstantiation.java b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/SequentialContextInstantiation.java
index 3f690f0b5..287dd6147 100644
--- a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/SequentialContextInstantiation.java
+++ b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/SequentialContextInstantiation.java
@@ -1,7 +1,7 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2019 Nordix Foundation.
+ * Modifications Copyright (C) 2019-2020 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,16 +21,15 @@
package org.onap.policy.apex.testsuites.integration.context.distribution;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
import static org.onap.policy.apex.testsuites.integration.context.factory.TestContextAlbumFactory.createMultiAlbumsContextModel;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.APEX_DISTRIBUTOR;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.BYTE_VAL;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.DATE_CONTEXT_ALBUM;
-import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.EXCEPTION_MESSAGE;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.FLOAT_VAL;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.INT_VAL;
import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.LONG_VAL;
@@ -115,15 +114,10 @@ public class SequentialContextInstantiation {
final TestContextDateTzItem tci9 = getTestContextDateTzItem(testDate);
- try {
- dateAlbum.put("tci9", tci9);
- } catch (final Exception e) {
- final String message = "class \"" + TestContextDateTzItem.class.getName()
- + "\" not compatible with class \"" + TestContextDateLocaleItem.class.getName()
- + "\"";
- assertTrue(e.getMessage().contains(message));
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum.put("tci9", tci9))
+ .hasMessageContaining("class \"" + TestContextDateTzItem.class.getName()
+ + "\" not compatible with class \"" + TestContextDateLocaleItem.class.getName()
+ + "\"");
final TestContextDateLocaleItem tciA01 = new TestContextDateLocaleItem(tciA00);
final TestContextDateLocaleItem tciA02 = new TestContextDateLocaleItem(tciA00);
@@ -145,14 +139,9 @@ public class SequentialContextInstantiation {
// Get another reference to the album
final ContextAlbum dateAlbum1 = getContextAlbum(DATE_CONTEXT_ALBUM, contextDistributor);
- try {
- dateAlbum1.putAll(valueMap1);
- fail(EXCEPTION_MESSAGE);
- } catch (final Exception e) {
- assertTrue(e.getMessage().endsWith("not compatible with class \""
- + TestContextDateLocaleItem.class.getName() + "\""));
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum1.putAll(valueMap1))
+ .hasMessageContaining("not compatible with class \""
+ + TestContextDateLocaleItem.class.getName() + "\"");
assertEquals(5, dateAlbum1.size());
valueMap1.clear();
@@ -217,23 +206,14 @@ public class SequentialContextInstantiation {
}
private void assertContains(final ContextAlbum dateAlbum, final TestContextDateLocaleItem tciA01) {
- try {
- dateAlbum.containsKey(null);
- fail(EXCEPTION_MESSAGE);
- } catch (final Exception e) {
- assertEquals("null values are illegal on method parameter \"key\"", e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum.containsKey(null))
+ .hasMessageContaining("null values are illegal on method parameter \"key\"");
assertTrue(dateAlbum.containsKey(ITEM05));
assertTrue(!dateAlbum.containsKey("Item07"));
- try {
- dateAlbum.containsValue(null);
- } catch (final Exception e) {
- assertEquals("null values are illegal on method parameter \"value\"", e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum.containsValue(null))
+ .hasMessageContaining("null values are illegal on method parameter \"value\"");
assertTrue(dateAlbum.containsValue(tciA01));
assertTrue(!dateAlbum.containsValue("Hello"));
@@ -241,32 +221,18 @@ public class SequentialContextInstantiation {
private void assertAlbumGetAndPutMethods(final ContextAlbum dateAlbum, final TestContextDateLocaleItem tciA03,
final TestContextDateLocaleItem tciA00) {
- try {
- dateAlbum.get(null);
- fail(EXCEPTION_MESSAGE);
- } catch (final Exception e) {
- assertEquals("album \"DateContextAlbum:0.0.1\" null keys are illegal on keys for get()", e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum.get(null))
+ .hasMessageContaining("album \"DateContextAlbum:0.0.1\" null keys are illegal on keys for get()");
final Object aObject = dateAlbum.get(ITEM03);
assertEquals(tciA03, aObject);
- try {
- dateAlbum.put(null, null);
- fail(EXCEPTION_MESSAGE);
- } catch (final Exception e) {
- assertEquals("album \"DateContextAlbum:0.0.1\" null keys are illegal on keys for put()", e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum.put(null, null))
+ .hasMessageContaining("album \"DateContextAlbum:0.0.1\" null keys are illegal on keys for put()");
// Put null ContextItem should work (return null)
- try {
- dateAlbum.put(ITEM_NULL, null);
- } catch (final Exception e) {
- assertEquals("album \"DateContextAlbum:0.0.1\" null values are illegal on key \"ItemNull\" for put()",
- e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum.put(ITEM_NULL, null))
+ .hasMessageContaining("album \"DateContextAlbum:0.0.1\" null values are illegal on "
+ + "key \"ItemNull\" for put()");
// Should return null
assertNull(dateAlbum.get(ITEM_NULL));
@@ -279,37 +245,21 @@ public class SequentialContextInstantiation {
retItem = (TestContextDateLocaleItem) dateAlbum.put(ITEM03, tciA03);
assertEquals(tciA03Clone, retItem);
- try {
- dateAlbum.put(ITEM_NULL, null);
- fail(EXCEPTION_MESSAGE);
-
- } catch (final Exception e) {
- assert ("album \"DateContextAlbum:0.0.1\" null values are illegal on key \"ItemNull\" for put()"
- .equals(e.getMessage()));
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum.put(ITEM_NULL, null))
+ .hasMessageContaining("album \"DateContextAlbum:0.0.1\" null values are illegal on "
+ + "key \"ItemNull\" for put()");
dateAlbum.put(TEST_AA, tciA00);
assertEquals(tciA00, dateAlbum.get(TEST_AA));
// Should print warning
- try {
- dateAlbum.put(TEST_AA, null);
- fail(EXCEPTION_MESSAGE);
- } catch (final Exception e) {
- assertEquals("album \"DateContextAlbum:0.0.1\" null values are illegal on key \"TestAA\" for put()",
- e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum.put(TEST_AA, null))
+ .hasMessageContaining("album \"DateContextAlbum:0.0.1\" null values are illegal on key \"TestAA\" "
+ + "for put()");
assertEquals(8, dateAlbum.size());
- try {
- dateAlbum.put(TEST_AB, null);
- fail(EXCEPTION_MESSAGE);
- } catch (final Exception e) {
- assertEquals("album \"DateContextAlbum:0.0.1\" null values are illegal on key \"TestAB\" for put()",
- e.getMessage());
- LOGGER.trace(NORMAL_TEST_EXCEPTION, e);
- }
+ assertThatThrownBy(() -> dateAlbum.put(TEST_AB, null))
+ .hasMessageContaining("album \"DateContextAlbum:0.0.1\" null values are illegal on key \"TestAB\" "
+ + "for put()");
assertEquals(8, dateAlbum.size());
}
diff --git a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/event/TestEventInstantiation.java b/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/event/TestEventInstantiation.java
index 5f89db675..bf883d761 100644
--- a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/event/TestEventInstantiation.java
+++ b/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/event/TestEventInstantiation.java
@@ -21,6 +21,7 @@
package org.onap.policy.apex.testsuites.integration.executor.event;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
@@ -168,19 +169,10 @@ public class TestEventInstantiation {
value = event.get("TestMatchCase");
assertNull(value);
- try {
- event.put("TestMatchCase", "Hello");
- } catch (final Exception e) {
- assertEquals("Event0000:0.0.1:NULL:TestMatchCase: object \"Hello\" of class \"java.lang.String\" "
- + "not compatible with class \"java.lang.Byte\"", e.getMessage());
- }
-
- try {
- event.put("TestMatchCase", 123.45);
- } catch (final Exception e) {
- assertEquals("Event0000:0.0.1:NULL:TestMatchCase: object \"123.45\" of class \"java.lang.Double\" "
- + "not compatible with class \"java.lang.Byte\"", e.getMessage());
- }
+ assertThatThrownBy(() -> event.put("TestMatchCase", "Hello"))
+ .hasMessage("Event0000:0.0.1:NULL:TestMatchCase: object \"Hello\" of class \"java.lang.String\" "
+ + "not compatible with class \"java.lang.Byte\"");
+ event.put("TestMatchCase", 123.45);
event.put("TestMatchCase", Byte.valueOf("16"));
diff --git a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexModelExport.java b/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexModelExport.java
index d73b51147..aaf640bb4 100644
--- a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexModelExport.java
+++ b/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexModelExport.java
@@ -1,19 +1,20 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2020 Nordix Foundation
* ================================================================================
* 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.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -99,15 +100,8 @@ public class TestApexModelExport {
exportPolicyList.clear();
exportPolicyList.add(new AxArtifactKey("NonExistentPolicy", "0.0.1"));
- try {
- final AxPolicyModel emptyExportedModel = PolicyModelSplitter.getSubPolicyModel(model, exportPolicyList);
- assertNotNull(emptyExportedModel);
- } catch (final Exception e) {
- assertTrue(e.getMessage()
- .equals("new model is invalid:\n" + "***validation of model failed***\n"
- + "AxPolicies:Policies:0.0.1 - policyMap may not be null or empty\n"
- + "AxEvents:Events:0.0.1 - eventMap may not be null or empty\n"
- + "********************************"));
- }
+ final AxPolicyModel emptyExportedModel = PolicyModelSplitter.getSubPolicyModel(model, exportPolicyList);
+ assertNotNull(emptyExportedModel);
+
}
}
diff --git a/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/engine/ApexServiceModelUpdateTest.java b/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/engine/ApexServiceModelUpdateTest.java
index 7ba309cc0..fdc60d765 100644
--- a/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/engine/ApexServiceModelUpdateTest.java
+++ b/testsuites/integration/integration-uservice-test/src/test/java/org/onap/policy/apex/testsuites/integration/uservice/engine/ApexServiceModelUpdateTest.java
@@ -21,10 +21,10 @@
package org.onap.policy.apex.testsuites.integration.uservice.engine;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -159,14 +159,9 @@ public class ApexServiceModelUpdateTest {
*/
@Test
public void testNoModelStart() {
- try {
- service.startAll();
- fail("Engine should not start with no model");
- } catch (final Exception e) {
- e.printStackTrace();
- assertEquals("start()<-Machine-1_process-1_engine-1-0:0.0.0,STOPPED, cannot start engine, "
- + "engine has not been initialized, its model is not loaded", e.getMessage());
- }
+ assertThatThrownBy(service::startAll)
+ .hasMessage("start()<-Machine-1_process-1_engine-1-0:0.0.0,STOPPED, cannot start engine, "
+ + "engine has not been initialized, its model is not loaded");
}
/**
@@ -227,16 +222,10 @@ public class ApexServiceModelUpdateTest {
final AxPolicyModel incoPolicyModel0 = new AxPolicyModel(apexSamplePolicyModel);
incoPolicyModel0.getKey().setName("INCOMPATIBLE");
- try {
- service.updateModel(parameters.getEngineKey(), incoPolicyModel0, false);
- fail("model update should fail on incompatible model without force being true");
- } catch (final Exception e) {
- System.err.println(e.getMessage());
- assertEquals("apex model update failed, supplied model with key \"INCOMPATIBLE:0.0.1\" is not a compatible "
- + "model update from the existing engine model " + "with key \"SamplePolicyModelJAVASCRIPT:0.0.1\"",
- e.getMessage());
- }
-
+ assertThatThrownBy(() -> service.updateModel(parameters.getEngineKey(), incoPolicyModel0, false))
+ .hasMessage("apex model update failed, supplied model with key \"INCOMPATIBLE:0.0.1\" is "
+ + "not a compatible model update from the existing engine model " + "with key "
+ + "\"SamplePolicyModelJAVASCRIPT:0.0.1\"");
// Still on old model
sendEvents();
@@ -244,17 +233,10 @@ public class ApexServiceModelUpdateTest {
final AxPolicyModel incoPolicyModel1 = new AxPolicyModel(apexSamplePolicyModel);
incoPolicyModel1.getKey().setVersion("1.0.1");
- try {
- service.updateModel(parameters.getEngineKey(), incoPolicyModel1, false);
- fail("model update should fail on incompatible model without force being true");
- } catch (final Exception e) {
- System.err.println(e.getMessage());
- e.printStackTrace();
- assertEquals("apex model update failed, supplied model with key \"SamplePolicyModelJAVASCRIPT:1.0.1\" "
- + "is not a compatible model update from the existing engine model with key "
- + "\"SamplePolicyModelJAVASCRIPT:0.0.1\"", e.getMessage());
- }
-
+ assertThatThrownBy(() -> service.updateModel(parameters.getEngineKey(), incoPolicyModel1, false))
+ .hasMessage("apex model update failed, supplied model with key \"SamplePolicyModelJAVASCRIPT:"
+ + "1.0.1\" is not a compatible model update from the existing engine model with key "
+ + "\"SamplePolicyModelJAVASCRIPT:0.0.1\"");
// Still on old model
sendEvents();