feat: Removed unnecessary fields from exported application (#7198)

Removed unnecessary fields from exported application
This commit is contained in:
Nayan 2021-09-07 18:33:45 +06:00 committed by GitHub
parent f4adea8371
commit a17be566a9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 27 additions and 0 deletions

View File

@ -150,6 +150,9 @@ public class ImportExportApplicationService {
application.setPages(null);
application.setPublishedPages(null);
application.setModifiedBy(null);
application.setUpdatedAt(null);
application.setLastDeployedAt(null);
application.setGitApplicationMetadata(null);
examplesOrganizationCloner.makePristine(application);
applicationJson.setExportedApplication(application);
return newPageRepository.findByApplicationId(applicationId, AclPermission.MANAGE_PAGES)

View File

@ -12,6 +12,7 @@ import com.appsmith.server.domains.Application;
import com.appsmith.server.domains.ApplicationJson;
import com.appsmith.server.domains.ApplicationPage;
import com.appsmith.server.domains.Datasource;
import com.appsmith.server.domains.GitApplicationMetadata;
import com.appsmith.server.domains.Layout;
import com.appsmith.server.domains.NewAction;
import com.appsmith.server.domains.NewPage;
@ -60,6 +61,7 @@ import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;
import reactor.test.StepVerifier;
import java.time.Instant;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
@ -149,6 +151,11 @@ public class ImportExportApplicationServiceTests {
Application testApplication = new Application();
testApplication.setName("Export-Application-Test-Application");
testApplication.setOrganizationId(orgId);
testApplication.setUpdatedAt(Instant.now());
testApplication.setLastDeployedAt(Instant.now());
testApplication.setModifiedBy("some-user");
testApplication.setGitApplicationMetadata(new GitApplicationMetadata());
Application savedApplication = applicationPageService.createApplication(testApplication, orgId).block();
testAppId = savedApplication.getId();
@ -187,6 +194,23 @@ public class ImportExportApplicationServiceTests {
.verify();
}
@Test
@WithUserDetails(value = "api_user")
public void exportApplicationById_WhenContainsInternalFields_InternalFieldsNotExported() {
Mono<ApplicationJson> resultMono = importExportApplicationService.exportApplicationById(testAppId);
StepVerifier
.create(resultMono)
.assertNext(applicationJson -> {
Application exportedApplication = applicationJson.getExportedApplication();
assertThat(exportedApplication.getModifiedBy()).isNull();
assertThat(exportedApplication.getLastUpdateTime()).isNull();
assertThat(exportedApplication.getLastDeployedAt()).isNull();
assertThat(exportedApplication.getGitApplicationMetadata()).isNull();
})
.verifyComplete();
}
@Test
@WithUserDetails(value = "api_user")
public void createExportAppJsonWithoutActionsAndDatasourceTest() {