mirror of
https://github.com/open-metadata/OpenMetadata.git
synced 2025-10-23 23:04:23 +00:00
Fix tests (#18494)
* Fix TestCaseResource testCaseInheritedFields * Fix TableResourceTest * Fix tests * remove setInheritedFields in listing of search entities * Fix tests * remove unique entity name creations * add specific names in search listing tests * add large size for fetching from ES, as other tests adds to the table_search_index * Fix tests * fix tests
This commit is contained in:
parent
47c75fe6a7
commit
e9a888fce7
@ -1202,9 +1202,7 @@ public abstract class EntityRepository<T extends EntityInterface> {
|
||||
searchListFilter, limit, offset, entityType, searchSortFilter, q);
|
||||
total = results.getTotal();
|
||||
for (Map<String, Object> json : results.getResults()) {
|
||||
T entity = setFieldsInternal(JsonUtils.readOrConvertValue(json, entityClass), fields);
|
||||
setInheritedFields(entity, fields);
|
||||
clearFieldsInternal(entity, fields);
|
||||
T entity = JsonUtils.readOrConvertValue(json, entityClass);
|
||||
entityList.add(withHref(uriInfo, entity));
|
||||
}
|
||||
return new ResultList<>(entityList, offset, limit, total.intValue());
|
||||
|
||||
@ -292,7 +292,7 @@ public class TestSuiteResource extends EntityResource<TestSuite, TestSuiteReposi
|
||||
try {
|
||||
entity = Entity.getEntityByName(Entity.USER, owner, "", ALL);
|
||||
} catch (Exception e) {
|
||||
// If the owner is not a user, then we'll try to geta team
|
||||
// If the owner is not a user, then we'll try to get a team
|
||||
entity = Entity.getEntityByName(Entity.TEAM, owner, "", ALL);
|
||||
}
|
||||
searchListFilter.addQueryParam("owners", entity.getId().toString());
|
||||
|
||||
@ -460,6 +460,7 @@ public class SearchRepository {
|
||||
}
|
||||
fieldData.put("deletedOwners", inheritedOwners);
|
||||
scriptTxt.append(REMOVE_OWNERS_SCRIPT);
|
||||
scriptTxt.append(" ");
|
||||
} else {
|
||||
EntityReference entityReference =
|
||||
JsonUtils.readValue(field.getOldValue().toString(), EntityReference.class);
|
||||
@ -470,6 +471,7 @@ public class SearchRepository {
|
||||
field.getName(),
|
||||
field.getName()));
|
||||
fieldData.put(field.getName(), JsonUtils.getMap(entityReference));
|
||||
scriptTxt.append(" ");
|
||||
}
|
||||
} catch (UnhandledServerException e) {
|
||||
scriptTxt.append(String.format(REMOVE_PROPAGATED_FIELD_SCRIPT, field.getName()));
|
||||
@ -502,6 +504,7 @@ public class SearchRepository {
|
||||
String.format(PROPAGATE_FIELD_SCRIPT, field.getName(), field.getNewValue()));
|
||||
}
|
||||
}
|
||||
scriptTxt.append(" ");
|
||||
}
|
||||
}
|
||||
for (FieldChange field : changeDescription.getFieldsAdded()) {
|
||||
@ -528,9 +531,11 @@ public class SearchRepository {
|
||||
field.getName()));
|
||||
fieldData.put(field.getName(), entityReference);
|
||||
}
|
||||
scriptTxt.append(" ");
|
||||
} catch (UnhandledServerException e) {
|
||||
scriptTxt.append(
|
||||
String.format(PROPAGATE_FIELD_SCRIPT, field.getName(), field.getNewValue()));
|
||||
scriptTxt.append(" ");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2098,7 +2098,7 @@ public class ElasticSearchClient implements SearchClient {
|
||||
private void updateElasticSearchByQuery(UpdateByQueryRequest updateByQueryRequest) {
|
||||
if (updateByQueryRequest != null && isClientAvailable) {
|
||||
updateByQueryRequest.setRefresh(true);
|
||||
LOG.info(SENDING_REQUEST_TO_ELASTIC_SEARCH, updateByQueryRequest);
|
||||
LOG.debug(SENDING_REQUEST_TO_ELASTIC_SEARCH, updateByQueryRequest);
|
||||
client.updateByQuery(updateByQueryRequest, RequestOptions.DEFAULT);
|
||||
}
|
||||
}
|
||||
|
||||
@ -173,6 +173,7 @@ import org.openmetadata.service.util.TestUtils;
|
||||
@Slf4j
|
||||
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
|
||||
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
|
||||
@Execution(ExecutionMode.CONCURRENT)
|
||||
public class TableResourceTest extends EntityResourceTest<Table, CreateTable> {
|
||||
private final TagResourceTest tagResourceTest = new TagResourceTest();
|
||||
private final DatabaseServiceResourceTest dbServiceTest = new DatabaseServiceResourceTest();
|
||||
@ -2471,6 +2472,7 @@ public class TableResourceTest extends EntityResourceTest<Table, CreateTable> {
|
||||
// Create an entity without column description
|
||||
CreateTable createWithNullColumnDescription =
|
||||
createRequest(test, 1)
|
||||
.withName("tableWithNullColumnDescription")
|
||||
.withDatabaseSchema(schema.getFullyQualifiedName())
|
||||
.withDescription("description")
|
||||
.withColumns(listOf(columnWithNullDescription))
|
||||
@ -2480,6 +2482,7 @@ public class TableResourceTest extends EntityResourceTest<Table, CreateTable> {
|
||||
// Create an entity with empty column description
|
||||
CreateTable createWithEmptyColumnDescription =
|
||||
createRequest(test, 2)
|
||||
.withName("tableWithEmptyColumnDescription")
|
||||
.withDatabaseSchema(schema.getFullyQualifiedName())
|
||||
.withDescription("description")
|
||||
.withColumns(listOf(columnWithEmptyDescription))
|
||||
@ -2489,6 +2492,7 @@ public class TableResourceTest extends EntityResourceTest<Table, CreateTable> {
|
||||
// Create an entity with null description but with column description
|
||||
CreateTable createWithNullDescription =
|
||||
createRequest(test, 6)
|
||||
.withName("tableWithNullDescription")
|
||||
.withDatabaseSchema(schema.getFullyQualifiedName())
|
||||
.withDescription(null)
|
||||
.withColumns(listOf(columnWithDescription))
|
||||
@ -2497,6 +2501,7 @@ public class TableResourceTest extends EntityResourceTest<Table, CreateTable> {
|
||||
// Create an entity with description complete
|
||||
CreateTable createWithDescription =
|
||||
createRequest(test, 4)
|
||||
.withName("tableWithDescription")
|
||||
.withDatabaseSchema(schema.getFullyQualifiedName())
|
||||
.withDescription("description")
|
||||
.withColumns(listOf(columnWithDescription))
|
||||
@ -2507,6 +2512,14 @@ public class TableResourceTest extends EntityResourceTest<Table, CreateTable> {
|
||||
RestClient searchClient = getSearchClient();
|
||||
IndexMapping index = Entity.getSearchRepository().getIndexMapping(TABLE);
|
||||
Response response;
|
||||
// lets refresh the indexes before calling search
|
||||
Request refreshRequest =
|
||||
new Request(
|
||||
"POST",
|
||||
String.format(
|
||||
"%s/_refresh", index.getIndexName(Entity.getSearchRepository().getClusterAlias())));
|
||||
searchClient.performRequest(refreshRequest);
|
||||
|
||||
// Direct request to es needs to have es clusterAlias appended with indexName
|
||||
Request request =
|
||||
new Request(
|
||||
@ -2514,7 +2527,7 @@ public class TableResourceTest extends EntityResourceTest<Table, CreateTable> {
|
||||
String.format(
|
||||
"%s/_search", index.getIndexName(Entity.getSearchRepository().getClusterAlias())));
|
||||
String query =
|
||||
"{\"size\": 100,\"query\":{\"bool\":{\"must\":[{\"term\":{\"descriptionStatus\":\"INCOMPLETE\"}}]}}}";
|
||||
"{\"size\": 1000,\"query\":{\"bool\":{\"must\":[{\"term\":{\"descriptionStatus\":\"INCOMPLETE\"}}]}}}";
|
||||
request.setJsonEntity(query);
|
||||
response = searchClient.performRequest(request);
|
||||
searchClient.close();
|
||||
|
||||
@ -17,6 +17,7 @@ import static javax.ws.rs.core.Response.Status.BAD_REQUEST;
|
||||
import static javax.ws.rs.core.Response.Status.FORBIDDEN;
|
||||
import static javax.ws.rs.core.Response.Status.NOT_FOUND;
|
||||
import static javax.ws.rs.core.Response.Status.OK;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertFalse;
|
||||
import static org.junit.jupiter.api.Assertions.assertNotEquals;
|
||||
@ -25,6 +26,7 @@ import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
import static org.junit.jupiter.api.Assertions.assertThrows;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
import static org.openmetadata.common.utils.CommonUtil.listOf;
|
||||
import static org.openmetadata.schema.api.teams.CreateTeam.TeamType.GROUP;
|
||||
import static org.openmetadata.schema.type.ColumnDataType.BIGINT;
|
||||
import static org.openmetadata.schema.type.MetadataOperation.EDIT_TESTS;
|
||||
import static org.openmetadata.service.Entity.ADMIN_USER_NAME;
|
||||
@ -59,6 +61,7 @@ import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import javax.ws.rs.client.WebTarget;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang.RandomStringUtils;
|
||||
import org.apache.http.client.HttpResponseException;
|
||||
import org.apache.http.util.EntityUtils;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
@ -72,12 +75,16 @@ import org.junit.jupiter.api.parallel.ExecutionMode;
|
||||
import org.openmetadata.schema.api.data.CreateTable;
|
||||
import org.openmetadata.schema.api.feed.CloseTask;
|
||||
import org.openmetadata.schema.api.feed.ResolveTask;
|
||||
import org.openmetadata.schema.api.teams.CreateTeam;
|
||||
import org.openmetadata.schema.api.teams.CreateUser;
|
||||
import org.openmetadata.schema.api.tests.CreateTestCase;
|
||||
import org.openmetadata.schema.api.tests.CreateTestCaseResolutionStatus;
|
||||
import org.openmetadata.schema.api.tests.CreateTestCaseResult;
|
||||
import org.openmetadata.schema.api.tests.CreateTestSuite;
|
||||
import org.openmetadata.schema.entity.data.Table;
|
||||
import org.openmetadata.schema.entity.feed.Thread;
|
||||
import org.openmetadata.schema.entity.teams.Team;
|
||||
import org.openmetadata.schema.entity.teams.User;
|
||||
import org.openmetadata.schema.tests.DataQualityReport;
|
||||
import org.openmetadata.schema.tests.ResultSummary;
|
||||
import org.openmetadata.schema.tests.TestCase;
|
||||
@ -109,6 +116,8 @@ import org.openmetadata.service.resources.EntityResourceTest;
|
||||
import org.openmetadata.service.resources.databases.TableResourceTest;
|
||||
import org.openmetadata.service.resources.feeds.FeedResourceTest;
|
||||
import org.openmetadata.service.resources.feeds.MessageParser;
|
||||
import org.openmetadata.service.resources.teams.TeamResourceTest;
|
||||
import org.openmetadata.service.resources.teams.UserResourceTest;
|
||||
import org.openmetadata.service.search.SearchAggregation;
|
||||
import org.openmetadata.service.search.SearchIndexUtils;
|
||||
import org.openmetadata.service.search.SearchRepository;
|
||||
@ -617,6 +626,21 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
CreateTestSuite createLogicalTestSuite = testSuiteResourceTest.createRequest(testInfo);
|
||||
TestSuite logicalTestSuite =
|
||||
testSuiteResourceTest.createEntity(createLogicalTestSuite, ADMIN_AUTH_HEADERS);
|
||||
UserResourceTest userResourceTest = new UserResourceTest();
|
||||
CreateUser createUser1 =
|
||||
userResourceTest.createRequest(testInfo).withRoles(List.of(DATA_CONSUMER_ROLE.getId()));
|
||||
User user1 = userResourceTest.createEntity(createUser1, ADMIN_AUTH_HEADERS);
|
||||
EntityReference user1Ref = user1.getEntityReference();
|
||||
CreateUser createUser2 =
|
||||
userResourceTest
|
||||
.createRequest("USER_ListFromSearch")
|
||||
.withRoles(List.of(DATA_CONSUMER_ROLE.getId()));
|
||||
User user2 = userResourceTest.createEntity(createUser2, ADMIN_AUTH_HEADERS);
|
||||
EntityReference user2Ref = user2.getEntityReference();
|
||||
TeamResourceTest teamResourceTest = new TeamResourceTest();
|
||||
CreateTeam createTeam = teamResourceTest.createRequest(testInfo, 1).withTeamType(GROUP);
|
||||
Team team = teamResourceTest.createEntity(createTeam, ADMIN_AUTH_HEADERS);
|
||||
EntityReference teamRef = team.getEntityReference();
|
||||
|
||||
List<Table> tables = new ArrayList<>();
|
||||
Map<String, TestSuite> testSuites = new HashMap<>();
|
||||
@ -646,7 +670,7 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
.withDisplayName("c1")
|
||||
.withDataType(ColumnDataType.VARCHAR)
|
||||
.withDataLength(10)))
|
||||
.withOwners(List.of(USER1_REF));
|
||||
.withOwners(List.of(user1Ref));
|
||||
Table table = tableResourceTest.createEntity(tableReq, ADMIN_AUTH_HEADERS);
|
||||
tables.add(table);
|
||||
CreateTestSuite createTestSuite =
|
||||
@ -669,10 +693,10 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
new TestCaseParameterValue().withValue("20").withName("missingCountValue")));
|
||||
if (i == 2) {
|
||||
// create 1 test cases with USER21_TEAM as owner
|
||||
create.withOwners(List.of(TEAM21.getEntityReference()));
|
||||
create.withOwners(List.of(teamRef));
|
||||
} else if (i % 2 == 0) {
|
||||
// create 2 test cases with USER1_REF as owner
|
||||
create.withOwners(List.of(USER2_REF));
|
||||
create.withOwners(List.of(user2Ref));
|
||||
}
|
||||
TestCase testCase = createEntity(create, ADMIN_AUTH_HEADERS);
|
||||
testCases.add(testCase);
|
||||
@ -692,18 +716,17 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
ResultList<TestCase> allEntities =
|
||||
listEntitiesFromSearch(queryParams, testCasesNum, 0, ADMIN_AUTH_HEADERS);
|
||||
assertEquals(testCasesNum, allEntities.getData().size());
|
||||
queryParams.put("q", "test_getSimpleListFromSearchc");
|
||||
queryParams.put("q", "test_getSimpleListFromSearchb");
|
||||
allEntities = listEntitiesFromSearch(queryParams, testCasesNum, 0, ADMIN_AUTH_HEADERS);
|
||||
assertEquals(1, allEntities.getData().size());
|
||||
org.assertj.core.api.Assertions.assertThat(allEntities.getData().get(0).getName())
|
||||
.contains("test_getSimpleListFromSearchc");
|
||||
assertThat(allEntities.getData().get(0).getName()).contains("test_getSimpleListFromSearchb");
|
||||
|
||||
queryParams.clear();
|
||||
queryParams.put("entityLink", testCaseForEL.getEntityLink());
|
||||
queryParams.put("includeAllTests", "true");
|
||||
allEntities = listEntitiesFromSearch(queryParams, testCasesNum, 0, ADMIN_AUTH_HEADERS);
|
||||
assertEquals(1, allEntities.getData().size());
|
||||
org.assertj.core.api.Assertions.assertThat(allEntities.getData().get(0).getEntityLink())
|
||||
assertThat(allEntities.getData().get(0).getEntityLink())
|
||||
.contains(testCaseForEL.getEntityLink());
|
||||
|
||||
queryParams.clear();
|
||||
@ -727,12 +750,22 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
testCasesNum, allEntities.getData().size()); // Should return either values matching
|
||||
|
||||
queryParams.clear();
|
||||
queryParams.put("owner", USER2_REF.getName());
|
||||
queryParams.put("owner", user2Ref.getName());
|
||||
allEntities = listEntitiesFromSearch(queryParams, testCasesNum, 0, ADMIN_AUTH_HEADERS);
|
||||
assertEquals(3, allEntities.getData().size()); // we have 3 test cases with USER2_REF as owner ,
|
||||
assertEquals(2, allEntities.getData().size()); // we have 2 test cases with user2Ref as owner ,
|
||||
// patch_entityUpdateOwnerFromNull_200 also adds owner
|
||||
allEntities
|
||||
.getData()
|
||||
.forEach(
|
||||
tc -> {
|
||||
assertTrue(
|
||||
tc.getOwners().stream().anyMatch(owner -> owner.getId().equals(user2Ref.getId())),
|
||||
String.format(
|
||||
"Test case %s does not contain the expected owner %s",
|
||||
tc.getName(), user2Ref.getName()));
|
||||
});
|
||||
|
||||
queryParams.put("owner", USER_TEAM21.getName());
|
||||
queryParams.put("owner", team.getName());
|
||||
allEntities = listEntitiesFromSearch(queryParams, testCasesNum, 0, ADMIN_AUTH_HEADERS);
|
||||
assertEquals(
|
||||
1,
|
||||
@ -847,18 +880,20 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
TableResourceTest tableResourceTest = new TableResourceTest();
|
||||
TestSuiteResourceTest testSuiteResourceTest = new TestSuiteResourceTest();
|
||||
CreateTable createTable = tableResourceTest.createRequest(testInfo);
|
||||
String columnName = RandomStringUtils.random(10, true, false);
|
||||
createTable
|
||||
.withDatabaseSchema(DATABASE_SCHEMA.getFullyQualifiedName())
|
||||
.withColumns(
|
||||
List.of(
|
||||
new Column()
|
||||
.withName(C1)
|
||||
.withDisplayName("c1")
|
||||
.withName(columnName)
|
||||
.withDisplayName(columnName)
|
||||
.withDataType(ColumnDataType.VARCHAR)
|
||||
.withDataLength(10)
|
||||
.withTags(List.of(PII_SENSITIVE_TAG_LABEL))))
|
||||
.withOwners(List.of(USER1_REF))
|
||||
.withDomain(DOMAIN1.getFullyQualifiedName())
|
||||
.withTableConstraints(List.of())
|
||||
.withTags(List.of(PERSONAL_DATA_TAG_LABEL, TIER1_TAG_LABEL));
|
||||
Table table = tableResourceTest.createEntity(createTable, ADMIN_AUTH_HEADERS);
|
||||
CreateTestSuite createTestSuite =
|
||||
@ -875,7 +910,8 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
create =
|
||||
createRequest(testInfo)
|
||||
.withEntityLink(
|
||||
String.format("<#E::table::%s::columns::%s>", table.getFullyQualifiedName(), C1))
|
||||
String.format(
|
||||
"<#E::table::%s::columns::%s>", table.getFullyQualifiedName(), columnName))
|
||||
.withTestSuite(testSuite.getFullyQualifiedName())
|
||||
.withTestDefinition(TEST_DEFINITION3.getFullyQualifiedName())
|
||||
.withParameterValues(
|
||||
@ -897,7 +933,7 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
HashSet<String> actualTags =
|
||||
tags.stream().map(TagLabel::getName).collect(Collectors.toCollection(HashSet::new));
|
||||
HashSet<String> expectedTags;
|
||||
if (testCase.getEntityLink().contains(C1)) {
|
||||
if (testCase.getEntityLink().contains(columnName)) {
|
||||
expectedTags =
|
||||
new HashSet<>(
|
||||
List.of(
|
||||
@ -917,7 +953,7 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
createTable.withColumns(
|
||||
List.of(
|
||||
new Column()
|
||||
.withName(C1)
|
||||
.withName(columnName)
|
||||
.withDisplayName("c1")
|
||||
.withDataType(ColumnDataType.VARCHAR)
|
||||
.withDataLength(10)
|
||||
@ -928,16 +964,6 @@ public class TestCaseResourceTest extends EntityResourceTest<TestCase, CreateTes
|
||||
for (TestCase testCase : testCases.getData()) {
|
||||
assertOwners(table.getOwners(), testCase.getOwners());
|
||||
assertEquals(table.getDomain().getId(), testCase.getDomain().getId());
|
||||
List<TagLabel> tags = testCase.getTags();
|
||||
HashSet<String> actualTags =
|
||||
tags.stream().map(TagLabel::getName).collect(Collectors.toCollection(HashSet::new));
|
||||
HashSet<String> expectedTags;
|
||||
List<TagLabel> expectedTagsList = table.getTags();
|
||||
if (testCase.getEntityLink().contains(C1)) {
|
||||
expectedTagsList.addAll(table.getColumns().get(0).getTags());
|
||||
}
|
||||
expectedTags = new HashSet<>(expectedTagsList.stream().map(TagLabel::getName).toList());
|
||||
assertEquals(expectedTags, actualTags);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -7,6 +7,7 @@ import static org.junit.jupiter.api.Assertions.assertNotEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
||||
import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
import static org.openmetadata.schema.api.teams.CreateTeam.TeamType.GROUP;
|
||||
import static org.openmetadata.service.util.TestUtils.ADMIN_AUTH_HEADERS;
|
||||
import static org.openmetadata.service.util.TestUtils.LONG_ENTITY_NAME;
|
||||
import static org.openmetadata.service.util.TestUtils.assertListNotNull;
|
||||
@ -34,11 +35,15 @@ import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.TestInfo;
|
||||
import org.openmetadata.schema.api.data.CreateTable;
|
||||
import org.openmetadata.schema.api.teams.CreateTeam;
|
||||
import org.openmetadata.schema.api.teams.CreateUser;
|
||||
import org.openmetadata.schema.api.tests.CreateLogicalTestCases;
|
||||
import org.openmetadata.schema.api.tests.CreateTestCase;
|
||||
import org.openmetadata.schema.api.tests.CreateTestCaseResult;
|
||||
import org.openmetadata.schema.api.tests.CreateTestSuite;
|
||||
import org.openmetadata.schema.entity.data.Table;
|
||||
import org.openmetadata.schema.entity.teams.Team;
|
||||
import org.openmetadata.schema.entity.teams.User;
|
||||
import org.openmetadata.schema.tests.TestCase;
|
||||
import org.openmetadata.schema.tests.TestSuite;
|
||||
import org.openmetadata.schema.tests.type.TestCaseStatus;
|
||||
@ -50,6 +55,8 @@ import org.openmetadata.schema.type.Include;
|
||||
import org.openmetadata.service.Entity;
|
||||
import org.openmetadata.service.resources.EntityResourceTest;
|
||||
import org.openmetadata.service.resources.databases.TableResourceTest;
|
||||
import org.openmetadata.service.resources.teams.TeamResourceTest;
|
||||
import org.openmetadata.service.resources.teams.UserResourceTest;
|
||||
import org.openmetadata.service.search.models.IndexMapping;
|
||||
import org.openmetadata.service.util.JsonUtils;
|
||||
import org.openmetadata.service.util.ResultList;
|
||||
@ -315,6 +322,17 @@ public class TestSuiteResourceTest extends EntityResourceTest<TestSuite, CreateT
|
||||
|
||||
@Test
|
||||
void post_createLogicalTestSuiteAndAddTests_200(TestInfo test) throws IOException {
|
||||
|
||||
UserResourceTest userResourceTest = new UserResourceTest();
|
||||
CreateUser createUser1 =
|
||||
userResourceTest.createRequest(test).withRoles(List.of(DATA_CONSUMER_ROLE.getId()));
|
||||
User user1 = userResourceTest.createEntity(createUser1, ADMIN_AUTH_HEADERS);
|
||||
EntityReference user1Ref = user1.getEntityReference();
|
||||
TeamResourceTest teamResourceTest = new TeamResourceTest();
|
||||
CreateTeam createTeam = teamResourceTest.createRequest(test, 1).withTeamType(GROUP);
|
||||
Team team = teamResourceTest.createEntity(createTeam, ADMIN_AUTH_HEADERS);
|
||||
EntityReference teamRef = team.getEntityReference();
|
||||
|
||||
TestCaseResourceTest testCaseResourceTest = new TestCaseResourceTest();
|
||||
TableResourceTest tableResourceTest = new TableResourceTest();
|
||||
CreateTable tableReq =
|
||||
@ -329,7 +347,7 @@ public class TestSuiteResourceTest extends EntityResourceTest<TestSuite, CreateT
|
||||
.withDataLength(10)));
|
||||
Table table = tableResourceTest.createEntity(tableReq, ADMIN_AUTH_HEADERS);
|
||||
CreateTestSuite createExecutableTestSuite = createRequest(table.getFullyQualifiedName());
|
||||
createExecutableTestSuite.withOwners(List.of(USER1_REF));
|
||||
createExecutableTestSuite.withOwners(List.of(user1Ref));
|
||||
TestSuite executableTestSuite =
|
||||
createExecutableTestSuite(createExecutableTestSuite, ADMIN_AUTH_HEADERS);
|
||||
List<EntityReference> testCases1 = new ArrayList<>();
|
||||
@ -347,7 +365,7 @@ public class TestSuiteResourceTest extends EntityResourceTest<TestSuite, CreateT
|
||||
|
||||
// We'll create a logical test suite and associate the test cases to it
|
||||
CreateTestSuite createTestSuite = createRequest(test);
|
||||
createTestSuite.withOwners(List.of(TEAM11_REF));
|
||||
createTestSuite.withOwners(List.of(teamRef));
|
||||
TestSuite testSuite = createEntity(createTestSuite, ADMIN_AUTH_HEADERS);
|
||||
addTestCasesToLogicalTestSuite(
|
||||
testSuite, testCases1.stream().map(EntityReference::getId).collect(Collectors.toList()));
|
||||
@ -436,23 +454,23 @@ public class TestSuiteResourceTest extends EntityResourceTest<TestSuite, CreateT
|
||||
// 8. List test suites with owner
|
||||
// 8.1 Team owner
|
||||
queryParams.clear();
|
||||
queryParams.put("owner", TEAM11_REF.getFullyQualifiedName());
|
||||
queryParams.put("owner", teamRef.getFullyQualifiedName());
|
||||
queryParams.put("fields", "owners");
|
||||
ResultList<TestSuite> teamOwnerTestSuites =
|
||||
listEntitiesFromSearch(queryParams, 100, 0, ADMIN_AUTH_HEADERS);
|
||||
Assertions.assertTrue(
|
||||
teamOwnerTestSuites.getData().stream()
|
||||
.allMatch(ts -> ts.getOwners().get(0).getId().equals(TEAM11_REF.getId())));
|
||||
.allMatch(ts -> ts.getOwners().get(0).getId().equals(teamRef.getId())));
|
||||
|
||||
// 8.2 User owner
|
||||
queryParams.clear();
|
||||
queryParams.put("owner", USER1_REF.getFullyQualifiedName());
|
||||
queryParams.put("owner", user1Ref.getFullyQualifiedName());
|
||||
queryParams.put("fields", "owners");
|
||||
ResultList<TestSuite> userOwnerTestSuites =
|
||||
listEntitiesFromSearch(queryParams, 100, 0, ADMIN_AUTH_HEADERS);
|
||||
Assertions.assertTrue(
|
||||
userOwnerTestSuites.getData().stream()
|
||||
.allMatch(ts -> ts.getOwners().get(0).getId().equals(USER1_REF.getId())));
|
||||
.allMatch(ts -> ts.getOwners().get(0).getId().equals(user1Ref.getId())));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@ -151,9 +151,9 @@ public class QueryResourceTest extends EntityResourceTest<Query, CreateQuery> {
|
||||
@Test
|
||||
void post_same_query_forSameEntityType_409(TestInfo test) throws HttpResponseException {
|
||||
CreateQuery create = createRequest(getEntityName(test));
|
||||
createEntity(create, ADMIN_AUTH_HEADERS);
|
||||
Query query = createEntity(create, ADMIN_AUTH_HEADERS);
|
||||
|
||||
CreateQuery create1 = createRequest(getEntityName(test));
|
||||
CreateQuery create1 = createRequest(query.getName());
|
||||
|
||||
assertResponse(
|
||||
() -> createEntity(create1, ADMIN_AUTH_HEADERS),
|
||||
|
||||
@ -113,7 +113,10 @@ public class APIServiceResourceTest extends ServiceResourceTest<ApiService, Crea
|
||||
// Update APIService description and connection
|
||||
|
||||
CreateApiService update =
|
||||
createRequest(test).withDescription("description1").withConnection(connection2);
|
||||
createRequest(test)
|
||||
.withDescription("description1")
|
||||
.withConnection(connection2)
|
||||
.withName(service.getName());
|
||||
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldAdded(change, "description", "description1");
|
||||
|
||||
@ -127,7 +127,10 @@ public class DashboardServiceResourceTest
|
||||
.withPassword(password));
|
||||
|
||||
CreateDashboardService update =
|
||||
createRequest(test).withDescription("description1").withConnection(dashboardConnection1);
|
||||
createRequest(test)
|
||||
.withDescription("description1")
|
||||
.withConnection(dashboardConnection1)
|
||||
.withName(service.getName());
|
||||
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldAdded(change, "description", "description1");
|
||||
@ -160,7 +163,10 @@ public class DashboardServiceResourceTest
|
||||
DashboardConnection dashboardConnection2 =
|
||||
new DashboardConnection().withConfig(metabaseConnection);
|
||||
update =
|
||||
createRequest(test).withDescription("description1").withConnection(dashboardConnection2);
|
||||
createRequest(test)
|
||||
.withDescription("description1")
|
||||
.withConnection(dashboardConnection2)
|
||||
.withName(service.getName());
|
||||
|
||||
fieldUpdated(change, "connection", dashboardConnection1, dashboardConnection2);
|
||||
updateAndCheckEntity(update, OK, ADMIN_AUTH_HEADERS, MINOR_UPDATE, change);
|
||||
|
||||
@ -149,7 +149,8 @@ public class DatabaseServiceResourceTest
|
||||
createAndCheckEntity(createRequest(test).withDescription(null), ADMIN_AUTH_HEADERS);
|
||||
|
||||
// Update database description and ingestion service that are null
|
||||
CreateDatabaseService update = createRequest(test).withDescription("description1");
|
||||
CreateDatabaseService update =
|
||||
createRequest(test).withDescription("description1").withName(service.getName());
|
||||
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldAdded(change, "description", "description1");
|
||||
@ -201,19 +202,18 @@ public class DatabaseServiceResourceTest
|
||||
RedshiftConnection redshiftConnection =
|
||||
new RedshiftConnection().withHostPort("localhost:3300").withUsername("test");
|
||||
DatabaseConnection dbConn = new DatabaseConnection().withConfig(redshiftConnection);
|
||||
CreateDatabaseService create = createRequest(test).withConnection(dbConn);
|
||||
assertResponseContains(
|
||||
() ->
|
||||
createEntity(
|
||||
createRequest(test).withDescription(null).withConnection(dbConn),
|
||||
ADMIN_AUTH_HEADERS),
|
||||
() -> createEntity(create, ADMIN_AUTH_HEADERS),
|
||||
BAD_REQUEST,
|
||||
String.format(
|
||||
"Failed to convert [%s] to type [Snowflake]. Review the connection.",
|
||||
getEntityName(test)));
|
||||
create.getName()));
|
||||
DatabaseService service =
|
||||
createAndCheckEntity(createRequest(test).withDescription(null), ADMIN_AUTH_HEADERS);
|
||||
// Update database description and ingestion service that are null
|
||||
CreateDatabaseService update = createRequest(test).withDescription("description1");
|
||||
CreateDatabaseService update =
|
||||
createRequest(test).withDescription("description1").withName(service.getName());
|
||||
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldAdded(change, "description", "description1");
|
||||
@ -244,7 +244,8 @@ public class DatabaseServiceResourceTest
|
||||
new DatabaseConnection().withConfig(snowflakeConnection);
|
||||
|
||||
// Update database connection to a new connection
|
||||
CreateDatabaseService update = createRequest(test).withConnection(databaseConnection);
|
||||
CreateDatabaseService update =
|
||||
createRequest(test).withConnection(databaseConnection).withName(service.getName());
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldUpdated(change, "connection", oldDatabaseConnection, databaseConnection);
|
||||
service = updateAndCheckEntity(update, OK, ADMIN_AUTH_HEADERS, MINOR_UPDATE, change);
|
||||
|
||||
@ -135,7 +135,10 @@ public class MetadataServiceResourceTest
|
||||
.withPassword(secretPassword));
|
||||
// Update metadata description
|
||||
CreateMetadataService update =
|
||||
createRequest(test).withDescription("description1").withConnection(metadataConnection);
|
||||
createRequest(test)
|
||||
.withDescription("description1")
|
||||
.withConnection(metadataConnection)
|
||||
.withName(service.getName());
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldAdded(change, "description", "description1");
|
||||
service = updateAndCheckEntity(update, OK, ADMIN_AUTH_HEADERS, MINOR_UPDATE, change);
|
||||
|
||||
@ -123,7 +123,10 @@ public class MlModelServiceResourceTest
|
||||
.withTrackingUri("http://localhost:5001"));
|
||||
|
||||
CreateMlModelService update =
|
||||
createRequest(test).withDescription("description1").withConnection(MlModelConnection1);
|
||||
createRequest(test)
|
||||
.withDescription("description1")
|
||||
.withConnection(MlModelConnection1)
|
||||
.withName(service.getName());
|
||||
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldAdded(change, "description", "description1");
|
||||
|
||||
@ -123,7 +123,8 @@ public class PipelineServiceResourceTest
|
||||
createAndCheckEntity(createRequest(test).withDescription(null), ADMIN_AUTH_HEADERS);
|
||||
|
||||
// Update pipeline description and ingestion service that are null
|
||||
CreatePipelineService update = createRequest(test).withDescription("description1");
|
||||
CreatePipelineService update =
|
||||
createRequest(test).withDescription("description1").withName(service.getName());
|
||||
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldAdded(change, "description", "description1");
|
||||
@ -156,15 +157,12 @@ public class PipelineServiceResourceTest
|
||||
void post_put_invalidConnection_as_admin_4xx(TestInfo test) {
|
||||
RedshiftConnection redshiftConnection = new RedshiftConnection();
|
||||
PipelineConnection pipelineConnection = new PipelineConnection().withConfig(redshiftConnection);
|
||||
CreatePipelineService create = createRequest(test).withConnection(pipelineConnection);
|
||||
assertResponseContains(
|
||||
() ->
|
||||
createEntity(
|
||||
createRequest(test).withDescription(null).withConnection(pipelineConnection),
|
||||
ADMIN_AUTH_HEADERS),
|
||||
() -> createEntity(create, ADMIN_AUTH_HEADERS),
|
||||
BAD_REQUEST,
|
||||
String.format(
|
||||
"Failed to convert [%s] to type [Airflow]. Review the connection.",
|
||||
getEntityName(test)));
|
||||
"Failed to convert [%s] to type [Airflow]. Review the connection.", create.getName()));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@ -110,7 +110,10 @@ public class SearchServiceResourceTest
|
||||
// Update SearchService description and connection
|
||||
|
||||
CreateSearchService update =
|
||||
createRequest(test).withDescription("description1").withConnection(connection2);
|
||||
createRequest(test)
|
||||
.withDescription("description1")
|
||||
.withConnection(connection2)
|
||||
.withName(service.getName());
|
||||
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldAdded(change, "description", "description1");
|
||||
|
||||
@ -106,7 +106,10 @@ public class StorageServiceResourceTest
|
||||
// Update StorageService description and connection
|
||||
|
||||
CreateStorageService update =
|
||||
createRequest(test).withDescription("description1").withConnection(connection2);
|
||||
createRequest(test)
|
||||
.withDescription("description1")
|
||||
.withConnection(connection2)
|
||||
.withName(service.getName());
|
||||
|
||||
ChangeDescription change = getChangeDescription(service, MINOR_UPDATE);
|
||||
fieldAdded(change, "description", "description1");
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user