use of com.epam.ta.reportportal.commons.querygen.Filter in project commons-dao by reportportal.
the class WidgetContentRepositoryTest method notPassedCasesStatistics.
@Test
void notPassedCasesStatistics() {
Filter filter = buildDefaultFilter(1L);
Sort sort = Sort.by(Lists.newArrayList(new Sort.Order(Sort.Direction.ASC, CRITERIA_START_TIME)));
List<NotPassedCasesContent> notPassedCasesContents = widgetContentRepository.notPassedCasesStatistics(filter, sort, 3);
assertNotNull(notPassedCasesContents);
assertEquals(3, notPassedCasesContents.size());
notPassedCasesContents.forEach(content -> {
Map<String, String> currentStatistics = content.getValues();
Map<Long, Map<String, Integer>> preDefinedStatistics = buildNotPassedCasesStatistics();
Map<String, Integer> testStatistics = preDefinedStatistics.get(content.getId());
int executionsSum = testStatistics.values().stream().mapToInt(i -> i).sum();
assertEquals(Double.parseDouble(currentStatistics.get(NOT_PASSED_STATISTICS_KEY)), BigDecimal.valueOf((double) 100 * (testStatistics.get("statistics$executions$skipped") + testStatistics.get("statistics$executions$failed")) / executionsSum).setScale(2, RoundingMode.HALF_UP).doubleValue(), 0.01);
});
}
use of com.epam.ta.reportportal.commons.querygen.Filter in project commons-dao by reportportal.
the class WidgetContentRepositoryTest method bugTrendStatisticsSorting.
@Test
void bugTrendStatisticsSorting() {
String sortingColumn = "statistics$defects$no_defect$nd001";
Filter filter = buildDefaultFilter(1L);
List<String> contentFields = buildTotalDefectsContentFields();
List<Sort.Order> orders = filter.getTarget().getCriteriaHolders().stream().map(ch -> new Sort.Order(Sort.Direction.ASC, ch.getFilterCriteria())).collect(Collectors.toList());
orders.add(new Sort.Order(Sort.Direction.DESC, sortingColumn));
Sort sort = Sort.by(orders);
List<ChartStatisticsContent> chartStatisticsContents = widgetContentRepository.bugTrendStatistics(filter, contentFields, sort, 4);
assertNotNull(chartStatisticsContents);
assertEquals(4, chartStatisticsContents.size());
}
use of com.epam.ta.reportportal.commons.querygen.Filter in project commons-dao by reportportal.
the class WidgetContentRepositoryTest method componentHealthCheck.
@Test
void componentHealthCheck() {
String sortingColumn = "statistics$defects$no_defect$nd001";
Filter launchFilter = buildDefaultFilter(1L);
List<Sort.Order> orderings = Lists.newArrayList(new Sort.Order(Sort.Direction.DESC, sortingColumn), new Sort.Order(Sort.Direction.DESC, CRITERIA_START_TIME));
Sort sort = Sort.by(orderings);
Filter itemsFilter = new Filter(1L, TestItem.class, Lists.newArrayList(FilterCondition.builder().withCondition(Condition.HAS).withNegative(false).withSearchCriteria(CRITERIA_COMPOSITE_ATTRIBUTE).withValue("new:os").build()));
List<ComponentHealthCheckContent> contents = widgetContentRepository.componentHealthCheck(launchFilter, sort, false, 600, itemsFilter, "new");
assertTrue(contents.isEmpty());
}
use of com.epam.ta.reportportal.commons.querygen.Filter in project commons-dao by reportportal.
the class WidgetContentRepositoryTest method activityStatistics.
@Test
void activityStatistics() {
Filter filter = buildDefaultActivityFilter(1L);
Sort sort = Sort.by(Lists.newArrayList(new Sort.Order(Sort.Direction.DESC, CRITERIA_CREATION_DATE)));
List<String> contentFields = buildActivityContentFields();
filter.withCondition(new FilterCondition(Condition.EQUALS, false, "superadmin", CRITERIA_USER)).withCondition(new FilterCondition(Condition.IN, false, String.join(",", contentFields), CRITERIA_ACTION));
List<ActivityResource> activityContentList = widgetContentRepository.activityStatistics(filter, sort, 4);
assertNotNull(activityContentList);
assertEquals(4, activityContentList.size());
}
use of com.epam.ta.reportportal.commons.querygen.Filter in project commons-dao by reportportal.
the class WidgetContentRepositoryTest method componentHealthCheckTable.
@Test
void componentHealthCheckTable() {
String sortingColumn = "statistics$defects$no_defect$nd001";
Filter launchFilter = buildDefaultFilter(1L);
List<Sort.Order> orderings = Lists.newArrayList(new Sort.Order(Sort.Direction.DESC, sortingColumn), new Sort.Order(Sort.Direction.DESC, CRITERIA_START_TIME));
Sort sort = Sort.by(orderings);
HealthCheckTableInitParams initParams = HealthCheckTableInitParams.of("first", com.google.common.collect.Lists.newArrayList("build"));
initParams.setCustomKey("build");
launchFilter.withCondition(FilterCondition.builder().withCondition(Condition.ANY).withSearchCriteria(CRITERIA_ITEM_ATTRIBUTE_KEY).withValue("build").build());
widgetContentRepository.generateComponentHealthCheckTable(false, initParams, launchFilter, sort, 600, false);
List<HealthCheckTableContent> healthCheckTableContents = widgetContentRepository.componentHealthCheckTable(HealthCheckTableGetParams.of("first", "build", Sort.by(Sort.Direction.DESC, "customColumn"), true, new ArrayList<>()));
assertFalse(healthCheckTableContents.isEmpty());
initParams = HealthCheckTableInitParams.of("hello", com.google.common.collect.Lists.newArrayList("build"));
widgetContentRepository.generateComponentHealthCheckTable(false, initParams, launchFilter, sort, 600, false);
widgetContentRepository.generateComponentHealthCheckTable(true, initParams, launchFilter, sort, 600, false);
healthCheckTableContents = widgetContentRepository.componentHealthCheckTable(HealthCheckTableGetParams.of("hello", "hello", Sort.by(Sort.Direction.DESC, "passingRate"), false, com.google.common.collect.Lists.newArrayList(LevelEntry.of("k1", "v1"), LevelEntry.of("k2", "v2"))));
assertTrue(healthCheckTableContents.isEmpty());
healthCheckTableContents = widgetContentRepository.componentHealthCheckTable(HealthCheckTableGetParams.of("hello", "build", Sort.by(Sort.Direction.ASC, "passingRate"), false, new ArrayList<>()));
assertTrue(healthCheckTableContents.isEmpty());
healthCheckTableContents = widgetContentRepository.componentHealthCheckTable(HealthCheckTableGetParams.of("hello", "build", Sort.by(Sort.Direction.DESC, "statistics$executions$total"), false, new ArrayList<>()));
assertTrue(healthCheckTableContents.isEmpty());
healthCheckTableContents = widgetContentRepository.componentHealthCheckTable(HealthCheckTableGetParams.of("hello", "build", Sort.by(Sort.Direction.DESC, "statistics$executions$failed"), false, com.google.common.collect.Lists.newArrayList(LevelEntry.of("k1", "v1"), LevelEntry.of("k2", "v2"))));
assertTrue(healthCheckTableContents.isEmpty());
Result<Record> fetch = dslContext.fetch(DSL.sql("SELECT * FROM pg_matviews"));
assertTrue(fetch.isNotEmpty());
widgetContentRepository.removeWidgetView("hello");
widgetContentRepository.removeWidgetView("first");
widgetContentRepository.removeWidgetView("not_existing_view");
Result<Record> fetch1 = dslContext.fetch(DSL.sql("SELECT * FROM pg_matviews"));
assertTrue(fetch1.isEmpty());
}
Aggregations