You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@atlas.apache.org by ma...@apache.org on 2017/02/08 19:05:44 UTC
incubator-atlas git commit: ATLAS-1540: fix for unit test failures in
TestEntityREST
Repository: incubator-atlas
Updated Branches:
refs/heads/master 7ed6b02c4 -> 03684a056
ATLAS-1540: fix for unit test failures in TestEntityREST
Project: http://git-wip-us.apache.org/repos/asf/incubator-atlas/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-atlas/commit/03684a05
Tree: http://git-wip-us.apache.org/repos/asf/incubator-atlas/tree/03684a05
Diff: http://git-wip-us.apache.org/repos/asf/incubator-atlas/diff/03684a05
Branch: refs/heads/master
Commit: 03684a0568f8569eca44573c791fc090d9a9a8b5
Parents: 7ed6b02
Author: Madhan Neethiraj <ma...@apache.org>
Authored: Wed Feb 8 10:14:27 2017 -0800
Committer: Madhan Neethiraj <ma...@apache.org>
Committed: Wed Feb 8 10:14:27 2017 -0800
----------------------------------------------------------------------
.../java/org/apache/atlas/RequestContext.java | 9 +++-
.../atlas/web/adapters/TestEntityREST.java | 55 ++++++++++----------
2 files changed, 36 insertions(+), 28 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/03684a05/server-api/src/main/java/org/apache/atlas/RequestContext.java
----------------------------------------------------------------------
diff --git a/server-api/src/main/java/org/apache/atlas/RequestContext.java b/server-api/src/main/java/org/apache/atlas/RequestContext.java
index 09cdc37..d35f456 100644
--- a/server-api/src/main/java/org/apache/atlas/RequestContext.java
+++ b/server-api/src/main/java/org/apache/atlas/RequestContext.java
@@ -94,7 +94,14 @@ public class RequestContext {
}
public static void clear() {
- CURRENT_CONTEXT.get().entityCache.clear();
+ RequestContext instance = CURRENT_CONTEXT.get();
+
+ if (instance != null) {
+ if (instance.entityCache != null) {
+ instance.entityCache.clear();
+ }
+ }
+
CURRENT_CONTEXT.remove();
}
http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/03684a05/webapp/src/test/java/org/apache/atlas/web/adapters/TestEntityREST.java
----------------------------------------------------------------------
diff --git a/webapp/src/test/java/org/apache/atlas/web/adapters/TestEntityREST.java b/webapp/src/test/java/org/apache/atlas/web/adapters/TestEntityREST.java
index 354722f..fd110cd 100644
--- a/webapp/src/test/java/org/apache/atlas/web/adapters/TestEntityREST.java
+++ b/webapp/src/test/java/org/apache/atlas/web/adapters/TestEntityREST.java
@@ -58,16 +58,12 @@ public class TestEntityREST {
private AtlasEntity dbEntity;
- private String dbGuid;
-
private AtlasClassification testClassification;
@BeforeClass
public void setUp() throws Exception {
AtlasTypesDef typesDef = TestUtilsV2.defineHiveTypes();
typeStore.createTypesDef(typesDef);
- Map<String, AtlasEntity> dbEntityMap = TestUtilsV2.createDBEntity();
- dbEntity = dbEntityMap.values().iterator().next();
}
@AfterClass
@@ -80,9 +76,12 @@ public class TestEntityREST {
RequestContext.clear();
}
- public void createOrUpdateEntity() throws Exception {
- Map<String, AtlasEntity> dbEntityMap = new HashMap<>();
+ private void createTestEntity() throws Exception {
+ Map<String, AtlasEntity> dbEntityMap = TestUtilsV2.createDBEntity();
+ AtlasEntity dbEntity = dbEntityMap.values().iterator().next();
+
dbEntityMap.put(dbEntity.getGuid(), dbEntity);
+
final EntityMutationResponse response = entitiesREST.createOrUpdate(dbEntityMap);
Assert.assertNotNull(response);
@@ -91,37 +90,37 @@ public class TestEntityREST {
Assert.assertNotNull(entitiesMutated);
Assert.assertEquals(entitiesMutated.size(), 1);
Assert.assertNotNull(entitiesMutated.get(0));
- dbGuid = entitiesMutated.get(0).getGuid();
- Assert.assertEquals(entitiesMutated.size(), 1);
+ dbEntity.setGuid(entitiesMutated.get(0).getGuid());
+
+ this.dbEntity = dbEntity;
}
@Test
public void testGetEntityById() throws Exception {
- createOrUpdateEntity();
- AtlasEntityWithExtInfo response = entityREST.getById(dbGuid);
+ createTestEntity();
+ AtlasEntityWithExtInfo response = entityREST.getById(dbEntity.getGuid());
Assert.assertNotNull(response);
Assert.assertNotNull(response.getEntity());
TestEntitiesREST.verifyAttributes(response.getEntity().getAttributes(), dbEntity.getAttributes());
}
- @Test
+ @Test(dependsOnMethods = "testGetEntityById")
public void testAddAndGetClassification() throws Exception {
- createOrUpdateEntity();
List<AtlasClassification> classifications = new ArrayList<>();
testClassification = new AtlasClassification(TestUtilsV2.CLASSIFICATION, new HashMap<String, Object>() {{ put("tag", "tagName"); }});
classifications.add(testClassification);
- entityREST.addClassifications(dbGuid, classifications);
+ entityREST.addClassifications(dbEntity.getGuid(), classifications);
- final AtlasClassification.AtlasClassifications retrievedClassifications = entityREST.getClassifications(dbGuid);
+ final AtlasClassification.AtlasClassifications retrievedClassifications = entityREST.getClassifications(dbEntity.getGuid());
Assert.assertNotNull(retrievedClassifications);
final List<AtlasClassification> retrievedClassificationsList = retrievedClassifications.getList();
Assert.assertNotNull(retrievedClassificationsList);
Assert.assertEquals(classifications, retrievedClassificationsList);
- final AtlasClassification retrievedClassification = entityREST.getClassification(dbGuid, TestUtilsV2.CLASSIFICATION);
+ final AtlasClassification retrievedClassification = entityREST.getClassification(dbEntity.getGuid(), TestUtilsV2.CLASSIFICATION);
Assert.assertNotNull(retrievedClassification);
Assert.assertEquals(retrievedClassification, testClassification);
@@ -131,7 +130,7 @@ public class TestEntityREST {
@Test(dependsOnMethods = "testAddAndGetClassification")
public void testGetEntityWithAssociations() throws Exception {
- AtlasEntityWithExtInfo entity = entityREST.getById(dbGuid);
+ AtlasEntityWithExtInfo entity = entityREST.getById(dbEntity.getGuid());
final List<AtlasClassification> retrievedClassifications = entity.getEntity().getClassifications();
Assert.assertNotNull(retrievedClassifications);
@@ -141,8 +140,8 @@ public class TestEntityREST {
@Test(dependsOnMethods = "testGetEntityWithAssociations")
public void testDeleteClassification() throws Exception {
- entityREST.deleteClassification(dbGuid, TestUtilsV2.CLASSIFICATION);
- final AtlasClassification.AtlasClassifications retrievedClassifications = entityREST.getClassifications(dbGuid);
+ entityREST.deleteClassification(dbEntity.getGuid(), TestUtilsV2.CLASSIFICATION);
+ final AtlasClassification.AtlasClassifications retrievedClassifications = entityREST.getClassifications(dbEntity.getGuid());
Assert.assertNotNull(retrievedClassifications);
Assert.assertEquals(retrievedClassifications.getList().size(), 0);
@@ -151,26 +150,28 @@ public class TestEntityREST {
@Test(dependsOnMethods = "testDeleteClassification")
public void testDeleteEntityById() throws Exception {
- EntityMutationResponse response = entityREST.deleteByGuid(dbGuid);
+ EntityMutationResponse response = entityREST.deleteByGuid(dbEntity.getGuid());
List<AtlasEntityHeader> entitiesMutated = response.getEntitiesByOperation(EntityMutations.EntityOperation.DELETE);
Assert.assertNotNull(entitiesMutated);
- Assert.assertEquals(entitiesMutated.get(0).getGuid(), dbGuid);
+ Assert.assertEquals(entitiesMutated.get(0).getGuid(), dbEntity.getGuid());
}
@Test
public void testUpdateGetDeleteEntityByUniqueAttribute() throws Exception {
-
Map<String, AtlasEntity> dbEntityMap = TestUtilsV2.createDBEntity();
- entitiesREST.createOrUpdate(dbEntityMap);
+ AtlasEntity dbEntity = dbEntityMap.values().iterator().next();
+ EntityMutationResponse response = entitiesREST.createOrUpdate(dbEntityMap);
+ String dbGuid = response.getEntitiesByOperation(EntityMutations.EntityOperation.CREATE).get(0).getGuid();
- final String prevDBName = (String) dbEntity.getAttribute(TestUtilsV2.NAME);
- final String updatedDBName = "updatedDBName";
+ Assert.assertTrue(AtlasEntity.isAssigned(dbGuid));
+
+ final String prevDBName = (String) dbEntity.getAttribute(TestUtilsV2.NAME);
+ final String updatedDBName = prevDBName + ":updated";
dbEntity.setAttribute(TestUtilsV2.NAME, updatedDBName);
- final EntityMutationResponse response = entityREST.partialUpdateByUniqueAttribute(TestUtilsV2.DATABASE_TYPE, TestUtilsV2.NAME, prevDBName, dbEntity);
- String dbGuid = response.getEntitiesByOperation(EntityMutations.EntityOperation.UPDATE).get(0).getGuid();
- Assert.assertTrue(AtlasEntity.isAssigned(dbGuid));
+ response = entityREST.partialUpdateByUniqueAttribute(TestUtilsV2.DATABASE_TYPE, TestUtilsV2.NAME, prevDBName, dbEntity);
+ Assert.assertEquals(response.getEntitiesByOperation(EntityMutations.EntityOperation.UPDATE).get(0).getGuid(), dbGuid);
//Get By unique attribute
List<AtlasEntity> entities = entityREST.getByUniqueAttribute(TestUtilsV2.DATABASE_TYPE, TestUtilsV2.NAME, updatedDBName);