@Test public void testCheckBusinessObjectDataAvailabilityPartitionValueListStandalonePartitionValueFilter() { // Prepare test data and execute the check business object data availability request with a standalone partition value filter. businessObjectDataAvailabilityTestHelper.createDatabaseEntitiesForBusinessObjectDataAvailabilityTesting(null); BusinessObjectDataAvailabilityRequest request = businessObjectDataServiceTestHelper.getTestBusinessObjectDataAvailabilityRequest(UNSORTED_PARTITION_VALUES); request.setPartitionValueFilter(request.getPartitionValueFilters().get(0)); request.setPartitionValueFilters(null); BusinessObjectDataAvailability resultAvailability = businessObjectDataService.checkBusinessObjectDataAvailability(request); // Validate the results. List<BusinessObjectDataStatus> expectedAvailableStatuses = businessObjectDataServiceTestHelper .getTestBusinessObjectDataStatuses(FORMAT_VERSION, BusinessObjectDataEntity.FIRST_PARTITION_COLUMN_POSITION, STORAGE_1_AVAILABLE_PARTITION_VALUES, NO_SUBPARTITION_VALUES, DATA_VERSION, BusinessObjectDataStatusEntity.VALID, false); List<BusinessObjectDataStatus> expectedNotAvailableStatuses = businessObjectDataServiceTestHelper .getTestBusinessObjectDataStatuses(FORMAT_VERSION, BusinessObjectDataEntity.FIRST_PARTITION_COLUMN_POSITION, STORAGE_1_NOT_AVAILABLE_PARTITION_VALUES, null, DATA_VERSION, BusinessObjectDataServiceImpl.REASON_NOT_REGISTERED, true); businessObjectDataServiceTestHelper .validateBusinessObjectDataAvailability(request, expectedAvailableStatuses, expectedNotAvailableStatuses, resultAvailability); }
request.setPartitionValueFilter(partitionValueFilter);
@Test public void testCheckBusinessObjectDataAvailabilityFilterOnSubPartitionValuesStandalonePartitionValueFilter() { List<SchemaColumn> columns = schemaColumnDaoTestHelper.getTestSchemaColumns(); List<SchemaColumn> partitionColumns = schemaColumnDaoTestHelper.getTestPartitionColumns(); // Test data availability using primary partition and each of the available subpartition columns. for (int i = 0; i < Math.min(BusinessObjectDataEntity.MAX_SUBPARTITIONS + 1, PARTITION_COLUMNS.length); i++) { // Prepare test data and execute the check business object data availability request. businessObjectDataAvailabilityTestHelper .createDatabaseEntitiesForBusinessObjectDataAvailabilityTesting(null, columns, partitionColumns, i + 1, SUBPARTITION_VALUES, ALLOW_DUPLICATE_BUSINESS_OBJECT_DATA); BusinessObjectDataAvailabilityRequest request = businessObjectDataServiceTestHelper.getTestBusinessObjectDataAvailabilityRequest(UNSORTED_PARTITION_VALUES); request.setPartitionValueFilter(request.getPartitionValueFilters().get(0)); request.setPartitionValueFilters(null); request.getPartitionValueFilter().setPartitionKey(partitionColumns.get(i).getName()); BusinessObjectDataAvailability resultAvailability = businessObjectDataService.checkBusinessObjectDataAvailability(request); // Validate the results. List<BusinessObjectDataStatus> expectedAvailableStatuses = businessObjectDataServiceTestHelper .getTestBusinessObjectDataStatuses(FORMAT_VERSION, i + 1, STORAGE_1_AVAILABLE_PARTITION_VALUES, SUBPARTITION_VALUES, DATA_VERSION, BusinessObjectDataStatusEntity.VALID, false); List<BusinessObjectDataStatus> expectedNotAvailableStatuses = businessObjectDataServiceTestHelper .getTestBusinessObjectDataStatuses(FORMAT_VERSION, i + 1, STORAGE_1_NOT_AVAILABLE_PARTITION_VALUES, null, DATA_VERSION, BusinessObjectDataServiceImpl.REASON_NOT_REGISTERED, true); businessObjectDataServiceTestHelper .validateBusinessObjectDataAvailability(request, expectedAvailableStatuses, expectedNotAvailableStatuses, resultAvailability); } }
request.setPartitionValueFilter(partitionValueFilter);
@Test public void testCheckBusinessObjectDataAvailabilityMissingOptionalParametersStandalonePartitionValueFilter() { // Prepare test data and execute the check business object data availability request // with a standalone partition value filter and without optional parameters. businessObjectDataAvailabilityTestHelper .createDatabaseEntitiesForBusinessObjectDataAvailabilityTesting(null, schemaColumnDaoTestHelper.getTestSchemaColumns(), schemaColumnDaoTestHelper.getTestPartitionColumns(), BusinessObjectDataEntity.FIRST_PARTITION_COLUMN_POSITION, NO_SUBPARTITION_VALUES, NO_ALLOW_DUPLICATE_BUSINESS_OBJECT_DATA); BusinessObjectDataAvailabilityRequest request = businessObjectDataServiceTestHelper.getTestBusinessObjectDataAvailabilityRequest(UNSORTED_PARTITION_VALUES); request.setPartitionValueFilter(request.getPartitionValueFilters().get(0)); request.setPartitionValueFilters(null); request.setBusinessObjectFormatVersion(null); request.getPartitionValueFilter().setPartitionKey(BLANK_TEXT); request.setBusinessObjectDataVersion(null); request.setStorageName(null); request.setIncludeAllRegisteredSubPartitions(null); BusinessObjectDataAvailability resultAvailability = businessObjectDataService.checkBusinessObjectDataAvailability(request); // Validate the results. List<BusinessObjectDataStatus> expectedAvailableStatuses = businessObjectDataServiceTestHelper .getTestBusinessObjectDataStatuses(FORMAT_VERSION, BusinessObjectDataEntity.FIRST_PARTITION_COLUMN_POSITION, MULTI_STORAGE_AVAILABLE_PARTITION_VALUES_UNION, NO_SUBPARTITION_VALUES, DATA_VERSION, BusinessObjectDataStatusEntity.VALID, false); List<BusinessObjectDataStatus> expectedNotAvailableStatuses = businessObjectDataServiceTestHelper .getTestBusinessObjectDataStatuses(null, BusinessObjectDataEntity.FIRST_PARTITION_COLUMN_POSITION, MULTI_STORAGE_NOT_AVAILABLE_PARTITION_VALUES, null, null, BusinessObjectDataServiceImpl.REASON_NOT_REGISTERED, true); businessObjectDataServiceTestHelper .validateBusinessObjectDataAvailability(request, expectedAvailableStatuses, expectedNotAvailableStatuses, resultAvailability); }
request.setPartitionValueFilter( new PartitionValueFilter(FIRST_PARTITION_COLUMN_NAME.toUpperCase(), new ArrayList<>(UNSORTED_PARTITION_VALUES), NO_PARTITION_VALUE_RANGE, NO_LATEST_BEFORE_PARTITION_VALUE, NO_LATEST_AFTER_PARTITION_VALUE));
sourcePartitionValueFilter = this.getPartitionValueFilter(); PartitionValueFilter copyPartitionValueFilter = ((PartitionValueFilter) strategy.copy(LocatorUtils.property(locator, "partitionValueFilter", sourcePartitionValueFilter), sourcePartitionValueFilter, (this.partitionValueFilter!= null))); copy.setPartitionValueFilter(copyPartitionValueFilter); } else { if (partitionValueFilterShouldBeCopiedAndSet == Boolean.FALSE) {
sourcePartitionValueFilter = this.getPartitionValueFilter(); PartitionValueFilter copyPartitionValueFilter = ((PartitionValueFilter) strategy.copy(LocatorUtils.property(locator, "partitionValueFilter", sourcePartitionValueFilter), sourcePartitionValueFilter, (this.partitionValueFilter!= null))); copy.setPartitionValueFilter(copyPartitionValueFilter); } else { if (partitionValueFilterShouldBeCopiedAndSet == Boolean.FALSE) {
sourcePartitionValueFilter = this.getPartitionValueFilter(); PartitionValueFilter copyPartitionValueFilter = ((PartitionValueFilter) strategy.copy(LocatorUtils.property(locator, "partitionValueFilter", sourcePartitionValueFilter), sourcePartitionValueFilter, (this.partitionValueFilter!= null))); copy.setPartitionValueFilter(copyPartitionValueFilter); } else { if (partitionValueFilterShouldBeCopiedAndSet == Boolean.FALSE) {