From a01b6fc96cdfe5025fa0324e7ab62fe8cb4b5dae Mon Sep 17 00:00:00 2001 From: Young Gyu Park Date: Wed, 7 Nov 2018 16:52:36 +0900 Subject: Bug fix on creating TestCase inner class Test: go/vts-web-staging Bug: 117130291 Change-Id: I688914ef0a41b1b1118999e3438dd08d8bb3b910 --- .../com/android/vts/api/TestRunRestServlet.java | 16 +----- .../com/android/vts/config/ObjectifyListener.java | 1 + .../com/android/vts/entity/TestCaseRunEntity.java | 4 +- .../android/vts/entity/TestCaseRunEntityTest.java | 59 ++++++++++++++++++++++ 4 files changed, 64 insertions(+), 16 deletions(-) create mode 100644 src/test/java/com/android/vts/entity/TestCaseRunEntityTest.java diff --git a/src/main/java/com/android/vts/api/TestRunRestServlet.java b/src/main/java/com/android/vts/api/TestRunRestServlet.java index 2c724ac..90fd3f9 100644 --- a/src/main/java/com/android/vts/api/TestRunRestServlet.java +++ b/src/main/java/com/android/vts/api/TestRunRestServlet.java @@ -16,20 +16,10 @@ package com.android.vts.api; -import com.android.vts.entity.CodeCoverageEntity; import com.android.vts.entity.TestCaseRunEntity; import com.android.vts.entity.TestEntity; import com.android.vts.entity.TestRunEntity; -import com.android.vts.util.FilterUtil; import com.android.vts.util.TestRunDetails; -import com.google.appengine.api.datastore.DatastoreService; -import com.google.appengine.api.datastore.DatastoreServiceFactory; -import com.google.appengine.api.datastore.Entity; -import com.google.appengine.api.datastore.EntityNotFoundException; -import com.google.appengine.api.datastore.FetchOptions; -import com.google.appengine.api.datastore.Key; -import com.google.appengine.api.datastore.KeyFactory; -import com.google.appengine.api.datastore.Query; import com.google.gson.Gson; import java.io.IOException; import java.io.PrintWriter; @@ -38,7 +28,6 @@ import java.util.List; import java.util.Map; import java.util.Objects; import java.util.logging.Logger; -import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -108,10 +97,7 @@ public class TestRunRestServlet extends BaseApiServlet { } Map, TestCaseRunEntity> testCaseRunEntityKeyMap = ofy().load().keys(() -> testCaseKeyList.iterator()); - for (Map.Entry, TestCaseRunEntity> entry : - testCaseRunEntityKeyMap.entrySet()) { - details.addTestCase(entry.getValue()); - } + testCaseRunEntityKeyMap.forEach((key, value) -> details.addTestCase(value)); } return details; } diff --git a/src/main/java/com/android/vts/config/ObjectifyListener.java b/src/main/java/com/android/vts/config/ObjectifyListener.java index 5f35abd..02e0215 100644 --- a/src/main/java/com/android/vts/config/ObjectifyListener.java +++ b/src/main/java/com/android/vts/config/ObjectifyListener.java @@ -28,6 +28,7 @@ import com.android.vts.entity.ProfilingPointEntity; import com.android.vts.entity.ProfilingPointRunEntity; import com.android.vts.entity.ProfilingPointSummaryEntity; import com.android.vts.entity.RoleEntity; +import com.android.vts.entity.TestAcknowledgmentEntity; import com.android.vts.entity.TestCaseRunEntity; import com.android.vts.entity.TestCoverageStatusEntity; import com.android.vts.entity.TestEntity; diff --git a/src/main/java/com/android/vts/entity/TestCaseRunEntity.java b/src/main/java/com/android/vts/entity/TestCaseRunEntity.java index 30776d4..85a6c43 100644 --- a/src/main/java/com/android/vts/entity/TestCaseRunEntity.java +++ b/src/main/java/com/android/vts/entity/TestCaseRunEntity.java @@ -138,7 +138,9 @@ public class TestCaseRunEntity implements DashboardEntity { private void onLoad() { if (testCaseNames.size() == results.size()) { for (int index = 0; index < testCaseNames.size(); index++) { - this.addTestCase(testCaseNames.get(index), results.get(index).intValue()); + String name = testCaseNames.get(index); + int result = results.get(index).intValue(); + this.testCases.add(new TestCase(this.id, this.testCases.size(), name, result)); } } } diff --git a/src/test/java/com/android/vts/entity/TestCaseRunEntityTest.java b/src/test/java/com/android/vts/entity/TestCaseRunEntityTest.java new file mode 100644 index 0000000..d4abd38 --- /dev/null +++ b/src/test/java/com/android/vts/entity/TestCaseRunEntityTest.java @@ -0,0 +1,59 @@ +/* + * Copyright (C) 2018 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.vts.entity; + +import com.android.vts.util.ObjectifyTestBase; +import org.junit.jupiter.api.Test; + +import java.util.Arrays; +import java.util.List; + +import static com.googlecode.objectify.ObjectifyService.factory; +import static org.junit.Assert.assertEquals; + +public class TestCaseRunEntityTest extends ObjectifyTestBase { + + @Test + public void saveTest() { + + factory().register(TestCaseRunEntity.class); + + List results = Arrays.asList(1, 1, 1, 1, 1, 1, 1); + List testCaseNames = + Arrays.asList( + "AudioEffectsFactoryTest.EnumerateEffects(default)_32bit", + "AudioEffectsFactoryTest.CreateEffect(default)_32bit", + "AudioEffectsFactoryTest.GetDescriptor(default)_32bit", + "AudioEffectsFactoryTest.DebugDumpArgument(default)_32bit", + "AudioEffectTest.Close(default)_32bit", + "AudioEffectTest.GetDescriptor(default)_32bit", + "AudioEffectTest.GetSetConfig(default)_32bit"); + + TestCaseRunEntity testCaseRunEntity = new TestCaseRunEntity(); + for (int index = 0; index < results.size(); index++) { + String testCaseName = testCaseNames.get(index); + int result = results.get(index); + testCaseRunEntity.addTestCase(testCaseName, result); + } + TestCaseRunEntity loadedTestCaseRunEntity = saveClearLoad(testCaseRunEntity); + + assertEquals(loadedTestCaseRunEntity.getTestCases().size(), results.size()); + assertEquals( + (Integer) loadedTestCaseRunEntity.getTestCases().get(0).result, results.get(0)); + assertEquals(loadedTestCaseRunEntity.getTestCases().get(0).name, testCaseNames.get(0)); + } +} -- cgit v1.2.3