summaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorYoung Gyu Park <younggyu@google.com>2018-05-18 16:18:53 +0900
committerYoung Gyu Park <younggyu@google.com>2018-05-24 17:21:58 +0900
commitb4cf9e240a246ca630ba37a1fa43a437b2a95d26 (patch)
treeab29d5d6e211bc3f4944a8fd1bb89bafe29ee3c6 /src/main/java
parentcbc85bb9ca316948975bba087be530286dd6803e (diff)
downloaddashboard-b4cf9e240a246ca630ba37a1fa43a437b2a95d26.tar.gz
Adding search functionality on test suite page
Test: go/vts-web-staging/show_plan_release?plan=vts&type=suite&page=1 Bug: 79894287 Change-Id: Id956778c469df0b6a96b357e65483a03c8b34380
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/com/android/vts/entity/TestSuiteResultEntity.java46
-rw-r--r--src/main/java/com/android/vts/servlet/ShowPlanReleaseServlet.java33
-rw-r--r--src/main/java/com/android/vts/servlet/ShowReleaseServlet.java7
3 files changed, 67 insertions, 19 deletions
diff --git a/src/main/java/com/android/vts/entity/TestSuiteResultEntity.java b/src/main/java/com/android/vts/entity/TestSuiteResultEntity.java
index 7ba1373..e77d664 100644
--- a/src/main/java/com/android/vts/entity/TestSuiteResultEntity.java
+++ b/src/main/java/com/android/vts/entity/TestSuiteResultEntity.java
@@ -299,8 +299,10 @@ public class TestSuiteResultEntity {
if (totalTestCaseCount.intValue() <= 0) {
this.passedTestCaseRatio = 0;
} else {
- BigDecimal passedTestCaseCountDecimal= new BigDecimal(passedTestCaseCount);
- BigDecimal result = passedTestCaseCountDecimal.divide(totalTestCaseCount, 10, BigDecimal.ROUND_FLOOR);
+ BigDecimal passedTestCaseCountDecimal = new BigDecimal(passedTestCaseCount);
+ BigDecimal result =
+ passedTestCaseCountDecimal.divide(
+ totalTestCaseCount, 10, BigDecimal.ROUND_FLOOR);
this.passedTestCaseRatio = result.longValue() * 100;
}
@@ -318,8 +320,44 @@ public class TestSuiteResultEntity {
ofy().save().entity(this).now();
}
- public List<? extends TestSuiteResultEntity> getTestSuitePlans() {
- return ofy().load().type(this.getClass()).project("suitePlan").distinct(true).list();
+ public static List<TestSuiteResultEntity> getTestSuitePlans() {
+ return ofy().load()
+ .type(TestSuiteResultEntity.class)
+ .project("suitePlan")
+ .distinct(true)
+ .list();
+ }
+
+ public static List<TestSuiteResultEntity> getBranchDistinctList() {
+ return ofy().load()
+ .type(TestSuiteResultEntity.class)
+ .project("branch")
+ .distinct(true)
+ .list();
+ }
+
+ public static List<TestSuiteResultEntity> getBuildIdDistinctList() {
+ return ofy().load()
+ .type(TestSuiteResultEntity.class)
+ .project("buildId")
+ .distinct(true)
+ .list();
+ }
+
+ public static List<TestSuiteResultEntity> getTargetDistinctList() {
+ return ofy().load()
+ .type(TestSuiteResultEntity.class)
+ .project("target")
+ .distinct(true)
+ .list();
+ }
+
+ public static List<TestSuiteResultEntity> getHostNameDistinctList() {
+ return ofy().load()
+ .type(TestSuiteResultEntity.class)
+ .project("hostName")
+ .distinct(true)
+ .list();
}
public String getDeviceNameFromVendorFpt() {
diff --git a/src/main/java/com/android/vts/servlet/ShowPlanReleaseServlet.java b/src/main/java/com/android/vts/servlet/ShowPlanReleaseServlet.java
index 11383bf..207857c 100644
--- a/src/main/java/com/android/vts/servlet/ShowPlanReleaseServlet.java
+++ b/src/main/java/com/android/vts/servlet/ShowPlanReleaseServlet.java
@@ -292,15 +292,15 @@ public class ShowPlanReleaseServlet extends BaseServlet {
String testPlan = request.getParameter("plan");
String testCategoryType =
- request.getParameter("testCategoryType") == null
+ Objects.isNull(request.getParameter("testCategoryType"))
? "1"
: request.getParameter("testCategoryType");
int page =
- request.getParameter("page") == null
+ Objects.isNull(request.getParameter("page"))
? 1
: Integer.valueOf(request.getParameter("page"));
String nextPageToken =
- request.getParameter("nextPageToken") == null
+ Objects.isNull(request.getParameter("nextPageToken"))
? ""
: request.getParameter("nextPageToken");
@@ -308,8 +308,24 @@ public class ShowPlanReleaseServlet extends BaseServlet {
ofy().load()
.type(TestSuiteResultEntity.class)
.filter("suitePlan", testPlan)
- .filter(this.getTestTypeFieldName(testCategoryType), true)
- .orderKey(true);
+ .filter(this.getTestTypeFieldName(testCategoryType), true);
+
+ if (Objects.nonNull(request.getParameter("branch"))) {
+ request.setAttribute("branch", request.getParameter("branch"));
+ testSuiteResultEntityQuery =
+ testSuiteResultEntityQuery.filter("branch", request.getParameter("branch"));
+ }
+ if (Objects.nonNull(request.getParameter("hostName"))) {
+ request.setAttribute("hostName", request.getParameter("hostName"));
+ testSuiteResultEntityQuery =
+ testSuiteResultEntityQuery.filter("hostName", request.getParameter("hostName"));
+ }
+ if (Objects.nonNull(request.getParameter("buildId"))) {
+ request.setAttribute("buildId", request.getParameter("buildId"));
+ testSuiteResultEntityQuery =
+ testSuiteResultEntityQuery.filter("buildId", request.getParameter("buildId"));
+ }
+ testSuiteResultEntityQuery = testSuiteResultEntityQuery.orderKey(true);
Pagination<TestSuiteResultEntity> testSuiteResultEntityPagination =
new Pagination(
@@ -349,17 +365,16 @@ public class ShowPlanReleaseServlet extends BaseServlet {
return dispatcher;
}
-
private String getTestTypeFieldName(String testCategoryType) {
String fieldName;
switch (testCategoryType) {
- case "1": // TOT
+ case "1": // TOT
fieldName = "testTypeIndex.TOT";
break;
- case "2": // OTA
+ case "2": // OTA
fieldName = "testTypeIndex.OTA";
break;
- case "4": // SIGNED
+ case "4": // SIGNED
fieldName = "testTypeIndex.SIGNED";
break;
default:
diff --git a/src/main/java/com/android/vts/servlet/ShowReleaseServlet.java b/src/main/java/com/android/vts/servlet/ShowReleaseServlet.java
index 648beb8..ed634a3 100644
--- a/src/main/java/com/android/vts/servlet/ShowReleaseServlet.java
+++ b/src/main/java/com/android/vts/servlet/ShowReleaseServlet.java
@@ -99,12 +99,7 @@ public class ShowReleaseServlet extends BaseServlet {
HttpServletRequest request, HttpServletResponse response) {
String RELEASE_JSP = "WEB-INF/jsp/show_release.jsp";
- List<TestSuiteResultEntity> suiteResultEntityList =
- ofy().load()
- .type(TestSuiteResultEntity.class)
- .project("suitePlan")
- .distinct(true)
- .list();
+ List<TestSuiteResultEntity> suiteResultEntityList = TestSuiteResultEntity.getTestSuitePlans();
List<String> plans =
suiteResultEntityList