From 02420268fda1157ee80e8cee22e342d5d99d8838 Mon Sep 17 00:00:00 2001 From: Clarysabel Tovar Date: Fri, 21 Aug 2020 10:51:51 -0300 Subject: [PATCH 1/4] Initial commit IBP-3981 --- .../middleware/dao/oms/CVTermDao.java | 7 ++- .../dao/oms/VariableOverridesDao.java | 53 ++++++++++++++++++- .../domain/ontology/VariableType.java | 9 ---- .../OntologyVariableDataManagerImpl.java | 24 +++++++-- .../api/OntologyVariableDataManager.java | 5 +- 5 files changed, 80 insertions(+), 18 deletions(-) diff --git a/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java b/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java index 135dff5f83..451f0181d2 100644 --- a/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java +++ b/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java @@ -183,8 +183,13 @@ private VariableType getDefaultVariableType(final Integer cvTermId) { criteria.addOrder(Order.asc("cvTermPropertyId")); final List variableTypes = criteria.list(); if (variableTypes != null) { + final List allVariableTypes = this.getTermByCvId(CvId.VARIABLE_TYPE.getId()); + final Map allVariableTypesByName = new HashMap<>(); + for (final Term term: allVariableTypes) { + allVariableTypesByName.put(term.getName(), term.getId()); + } for (final CVTermProperty cvTermProperty : variableTypes) { - return VariableType.getByName(cvTermProperty.getValue()); + return VariableType.getById(allVariableTypesByName.get(cvTermProperty.getValue())); } } return null; diff --git a/src/main/java/org/generationcp/middleware/dao/oms/VariableOverridesDao.java b/src/main/java/org/generationcp/middleware/dao/oms/VariableOverridesDao.java index beb88cc089..58bd7096a1 100644 --- a/src/main/java/org/generationcp/middleware/dao/oms/VariableOverridesDao.java +++ b/src/main/java/org/generationcp/middleware/dao/oms/VariableOverridesDao.java @@ -2,6 +2,8 @@ package org.generationcp.middleware.dao.oms; import org.generationcp.middleware.dao.GenericDAO; +import org.generationcp.middleware.domain.oms.CvId; +import org.generationcp.middleware.domain.oms.Term; import org.generationcp.middleware.domain.oms.TermId; import org.generationcp.middleware.domain.ontology.VariableType; import org.generationcp.middleware.exceptions.MiddlewareQueryException; @@ -9,10 +11,12 @@ import org.generationcp.middleware.pojos.oms.VariableOverrides; import org.hibernate.Criteria; import org.hibernate.HibernateException; +import org.hibernate.SQLQuery; import org.hibernate.criterion.Order; import org.hibernate.criterion.Projections; import org.hibernate.criterion.Restrictions; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -124,17 +128,62 @@ public Map> getVariableOverridesByVariableIds } - public VariableType getDefaultVariableType(final Integer cvTermId) { + private VariableType getDefaultVariableType(final Integer cvTermId) { final Criteria criteria = this.getSession().createCriteria(CVTermProperty.class); criteria.add(Restrictions.eq("cvTermId", cvTermId)); criteria.add(Restrictions.eq("typeId", TermId.VARIABLE_TYPE.getId())); criteria.addOrder(Order.asc("cvTermPropertyId")); final List variableTypes = criteria.list(); if (variableTypes != null) { + final List allVariableTypes = this.getTermByCvId(CvId.VARIABLE_TYPE.getId()); + final Map allVariableTypesByName = new HashMap<>(); + for (final Term term: allVariableTypes) { + allVariableTypesByName.put(term.getName(), term.getId()); + } for (final CVTermProperty cvTermProperty : variableTypes) { - return VariableType.getByName(cvTermProperty.getValue()); + return VariableType.getById(allVariableTypesByName.get(cvTermProperty.getValue())); } } return null; } + + private List getTermByCvId(final int cvId) { + + final List terms = new ArrayList<>(); + + try { + + final StringBuilder sqlString = new StringBuilder() + .append("SELECT DISTINCT cvt.cvterm_id, cvt.cv_id, cvt.name, cvt.definition ") + .append("FROM cvterm cvt ").append("WHERE cvt.cv_id = :cvId"); + + final SQLQuery query = this.getSession().createSQLQuery(sqlString.toString()); + query.setParameter("cvId", cvId); + + final List results = query.list(); + + if (!results.isEmpty()) { + + for (final Object[] row : results) { + + final Integer cvtermId = (Integer) row[0]; + final Integer cvtermCvId = (Integer) row[1]; + final String cvtermName = (String) row[2]; + final String cvtermDefinition = (String) row[3]; + + final Term term = new Term(); + term.setId(cvtermId); + term.setName(cvtermName); + term.setDefinition(cvtermDefinition); + term.setVocabularyId(cvtermCvId); + terms.add(term); + } + } + + } catch (final HibernateException e) { + this.logAndThrowException("Error at getTermByCvId=" + cvId + " query on CVTermDao: " + e.getMessage(), e); + } + + return terms; + } } diff --git a/src/main/java/org/generationcp/middleware/domain/ontology/VariableType.java b/src/main/java/org/generationcp/middleware/domain/ontology/VariableType.java index ba77192a14..024b9a4a1e 100644 --- a/src/main/java/org/generationcp/middleware/domain/ontology/VariableType.java +++ b/src/main/java/org/generationcp/middleware/domain/ontology/VariableType.java @@ -60,17 +60,12 @@ public enum VariableType { } private static final Map byId = new HashMap<>(); - private static final Map byName = new HashMap<>(); static { for (final VariableType e : VariableType.values()) { if (VariableType.byId.put(e.getId(), e) != null) { throw new IllegalArgumentException("duplicate id: " + e.getId()); } - - if (VariableType.byName.put(e.getName(), e) != null) { - throw new IllegalArgumentException("duplicate name: " + e.getName()); - } } } @@ -94,10 +89,6 @@ public static VariableType getById(final Integer id) { return VariableType.byId.get(id); } - public static VariableType getByName(final String name) { - return VariableType.byName.get(name); - } - public static Set getVariableTypesIdsByPhenotype(final PhenotypicType phenotype) { final Set variableTypes = new HashSet<>(); for (final VariableType variableType : VariableType.values()) { diff --git a/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java b/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java index 9f8b5c728d..5302a64353 100644 --- a/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java +++ b/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java @@ -396,6 +396,9 @@ public String apply(final VariableType x) { } } + + final Map variableTypesByName = this.getVariableTypesByName(); + // Fetch Property CropOntologyId, Scale min-max, Variable Type, Creation and Last Modified date of all terms final SQLQuery pQuery = this.getActiveSession() .createSQLQuery("select t.cvterm_id tid, t.cv_id cvid, tp.type_id typeid, tp.value value from cvtermprop tp " @@ -423,7 +426,7 @@ public String apply(final VariableType x) { if (Objects.equals(typeId, TermId.CROP_ONTOLOGY_ID.getId()) && Objects.equals(cvId, CvId.PROPERTIES.getId())) { pMap.get(cvTermId).setCropOntologyId(value); } else if (Objects.equals(typeId, TermId.VARIABLE_TYPE.getId()) && Objects.equals(cvId, CvId.VARIABLES.getId())) { - map.get(cvTermId).addVariableType(VariableType.getByName(value)); + map.get(cvTermId).addVariableType(VariableType.getById(variableTypesByName.get(value))); } else if (Objects.equals(typeId, TermId.MIN_VALUE.getId()) && Objects.equals(cvId, CvId.SCALES.getId())) { sMap.get(cvTermId).setMinValue(value); } else if (Objects.equals(typeId, TermId.MAX_VALUE.getId()) && Objects.equals(cvId, CvId.SCALES.getId())) { @@ -503,10 +506,11 @@ public Variable getVariable(final String programUuid, final Integer id, final bo // Variable Types, Created, modified from CVTermProperty final List properties = daoFactory.getCvTermPropertyDao().getByCvTermId(term.getCvTermId()); + final Map variableTypesByName = this.getVariableTypesByName(); for (final CVTermProperty property : properties) { if (property.getTypeId() == TermId.VARIABLE_TYPE.getId()) { - final VariableType variableType = VariableType.getByName(property.getValue()); + final VariableType variableType = VariableType.getById(variableTypesByName.get(property.getValue())); variable.addVariableType(variableType); if (variableType.equals(VariableType.TRAIT)) { variable.setAllowsFormula(true); @@ -710,10 +714,12 @@ public void updateVariable(final OntologyVariableInfo variableInfo) { final Map existingProperties = new HashMap<>(); final Set existingVariableTypes = new HashSet<>(); + final Map variableTypesByName = this.getVariableTypesByName(); + // Variable Types from CVTermProperty for (final CVTermProperty property : termProperties) { if (Objects.equals(property.getTypeId(), TermId.VARIABLE_TYPE.getId())) { - final VariableType type = VariableType.getByName(property.getValue()); + final VariableType type = VariableType.getById(variableTypesByName.get(property.getValue())); existingVariableTypes.add(type); existingProperties.put(type, property); } @@ -1000,10 +1006,11 @@ public VariableOverrides getVariableOverridesByVariableIdAndProgram(final Intege @Override public List getVariableTypes(final Integer variableId) { + final Map variableTypesByName = this.getVariableTypesByName(); final List variableTypes = new ArrayList<>(); final List properties = daoFactory.getCvTermPropertyDao().getByCvTermAndType(variableId, TermId.VARIABLE_TYPE.getId()); for (final CVTermProperty property : properties) { - variableTypes.add(VariableType.getByName(property.getValue())); + variableTypes.add(VariableType.getById(variableTypesByName.get(property.getValue()))); } return variableTypes; } @@ -1047,4 +1054,13 @@ public List getAllVariables(final List variableTypes, public long countAllVariables(final List variableTypes) { return this.daoFactory.getCvTermDao().countAllVariables(variableTypes); } + + private Map getVariableTypesByName(){ + final List terms = this.daoFactory.getCvTermDao().getTermByCvId(CvId.VARIABLE_TYPE.getId()); + final Map variableTypesByName = new HashMap<>(); + for (final Term term : terms) { + variableTypesByName.put(term.getName(), term.getId()); + } + return variableTypesByName; + } } diff --git a/src/main/java/org/generationcp/middleware/manager/ontology/api/OntologyVariableDataManager.java b/src/main/java/org/generationcp/middleware/manager/ontology/api/OntologyVariableDataManager.java index 1cc337e20f..f4ddb9653d 100644 --- a/src/main/java/org/generationcp/middleware/manager/ontology/api/OntologyVariableDataManager.java +++ b/src/main/java/org/generationcp/middleware/manager/ontology/api/OntologyVariableDataManager.java @@ -12,8 +12,6 @@ package org.generationcp.middleware.manager.ontology.api; -import java.util.List; - import com.google.common.base.Optional; import org.generationcp.middleware.domain.ontology.DataType; import org.generationcp.middleware.domain.ontology.Variable; @@ -23,6 +21,8 @@ import org.generationcp.middleware.pojos.oms.VariableOverrides; import org.generationcp.middleware.service.api.study.VariableDTO; +import java.util.List; + /** * This is the API for retrieving ontology variable data. * @@ -113,4 +113,5 @@ List getAllVariables(List variableTypes, String cropname, Integer pageSize, Integer pageNumber); long countAllVariables(List variableTypes); + } From 1e559d7f5b0d07a0c74d159f67c2ae347e4a3693 Mon Sep 17 00:00:00 2001 From: Clarysabel Tovar Date: Fri, 21 Aug 2020 11:40:00 -0300 Subject: [PATCH 2/4] Removed some dependencies to name IBP-3981 --- .../generationcp/middleware/dao/oms/CVTermDao.java | 11 ++--------- .../ontology/OntologyVariableDataManagerImpl.java | 11 +++-------- 2 files changed, 5 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java b/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java index 451f0181d2..6da34346ca 100644 --- a/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java +++ b/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java @@ -49,7 +49,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; /** * DAO class for {@link CVTerm}. @@ -1512,7 +1511,7 @@ private SQLQuery createCountVariableQuery(final Integer datasetId, final List variableTypeNames = - variableTypes.stream().map(i -> VariableType.getById(i).getName()).collect(Collectors.toList()); - sqlQuery.setParameterList(VARIABLE_TYPE_NAMES, variableTypeNames); if (datasetId != null) { sqlQuery.setParameter("datasetId", datasetId); @@ -1609,15 +1605,12 @@ private SQLQuery createVariableQuery(final Integer datasetId, final List variableTypeNames = - variableTypes.stream().map(i -> VariableType.getById(i).getName()).collect(Collectors.toList()); - sqlQuery.setParameterList(VARIABLE_TYPE_NAMES, variableTypeNames); if (datasetId != null) { sqlQuery.setParameter("datasetId", datasetId); diff --git a/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java b/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java index 5302a64353..cc0bbd1c50 100644 --- a/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java +++ b/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java @@ -65,6 +65,7 @@ import java.util.Map; import java.util.Objects; import java.util.Set; +import java.util.stream.Collectors; /** * Implements {@link OntologyVariableDataManagerImpl} @@ -238,14 +239,8 @@ public Integer apply(final DataType x) { // check of variable type list is not empty then get variables by variable types and add filter clause of it if (!variableFilter.getVariableTypes().isEmpty()) { - final List variableTypeNames = - Util.convertAll(variableFilter.getVariableTypes(), new Function() { - - @Override - public String apply(final VariableType x) { - return x.getName(); - } - }); + final List variableTypeNames = this.daoFactory.getCvTermDao().getTermByCvId(CvId.VARIABLE_TYPE.getId()).stream().map(Term::getName).collect( + Collectors.toList()); final SQLQuery vSQLQuery = this.getActiveSession() .createSQLQuery("select cvterm_id from cvtermprop where type_id = 1800 and value in (:variableTypeNames)"); From 5a7de3a7b57713ae2e09b3de816bf960b3f45c74 Mon Sep 17 00:00:00 2001 From: Clarysabel Tovar Date: Fri, 21 Aug 2020 12:09:16 -0300 Subject: [PATCH 3/4] Removed some dependencies to name IBP-3981 --- .../java/org/generationcp/middleware/dao/oms/CVTermDao.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java b/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java index 6da34346ca..abfdbe5d4e 100644 --- a/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java +++ b/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java @@ -1601,11 +1601,11 @@ private SQLQuery createVariableQuery(final Integer datasetId, final List Date: Mon, 24 Aug 2020 15:45:20 -0300 Subject: [PATCH 4/4] Removed some dependencies to name IBP-3981 --- .../middleware/dao/oms/CVTermDao.java | 9 +++++++-- .../generationcp/middleware/domain/oms/Term.java | 8 ++++++-- .../OntologyVariableDataManagerImpl.java | 16 ++++++++++++++-- .../builder/VariableInfoBuilderTest.java | 15 +++++++-------- 4 files changed, 34 insertions(+), 14 deletions(-) diff --git a/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java b/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java index abfdbe5d4e..d1ad4ce53f 100644 --- a/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java +++ b/src/main/java/org/generationcp/middleware/dao/oms/CVTermDao.java @@ -1229,6 +1229,8 @@ public Integer getStandadardVariableIdByPropertyScaleMethodRole(final Integer pr public boolean hasPossibleTreatmentPairs(final int cvTermId, final int propertyId, final List hiddenFields) { try { + final String variableTypeName = this.getTermByCvId(CvId.VARIABLE_TYPE.getId()).stream().filter(f->VariableType.TREATMENT_FACTOR.getId().equals(f.getId())).findAny() // If 'findAny' then return found + .get().getName(); final StringBuilder sqlString = new StringBuilder().append("SELECT count(c.cvterm_id) ") .append(" FROM cvterm c ").append(" INNER JOIN cvterm_relationship pr ON pr.type_id = ") .append(TermId.HAS_PROPERTY.getId()).append(" AND pr.subject_id = c.cvterm_id ") @@ -1239,7 +1241,7 @@ public boolean hasPossibleTreatmentPairs(final int cvTermId, final int propertyI .append(" AND mr.subject_id = c.cvterm_id ") .append(" INNER JOIN cvtermprop cvprop ON cvprop.type_id = ").append(TermId.VARIABLE_TYPE.getId()) .append(" AND cvprop.cvterm_id = c.cvterm_id AND cvprop.value = '") - .append(VariableType.TREATMENT_FACTOR.getName()).append("' WHERE c.cvterm_id <> ").append(cvTermId) + .append(variableTypeName).append("' WHERE c.cvterm_id <> ").append(cvTermId) .append(" AND c.cvterm_id NOT IN (:hiddenFields) "); final SQLQuery query = this.getSession().createSQLQuery(sqlString.toString()); @@ -1259,6 +1261,9 @@ public List getAllPossibleTreatmentPairs(final int cvTermId, f final List list = new ArrayList<>(); try { + final String variableTypeName = this.getTermByCvId(CvId.VARIABLE_TYPE.getId()).stream().filter(f->VariableType.TREATMENT_FACTOR.getId().equals(f.getId())).findAny() // If 'findAny' then return found + .get().getName(); + final StringBuilder sqlString = new StringBuilder() .append( "SELECT c.cvterm_id, c.name, c.definition, pr.object_id AS propertyId, sr.object_id AS scaleId, mr.object_id AS methodId ") @@ -1271,7 +1276,7 @@ public List getAllPossibleTreatmentPairs(final int cvTermId, f .append(" AND mr.subject_id = c.cvterm_id ") .append(" INNER JOIN cvtermprop cvprop ON cvprop.type_id = ").append(TermId.VARIABLE_TYPE.getId()) .append(" AND cvprop.cvterm_id = c.cvterm_id AND cvprop.value = '") - .append(VariableType.TREATMENT_FACTOR.getName()).append("' WHERE c.cvterm_id <> ").append(cvTermId) + .append(variableTypeName).append("' WHERE c.cvterm_id <> ").append(cvTermId) .append(" AND c.cvterm_id NOT IN (:hiddenFields) "); final SQLQuery query = this.getSession().createSQLQuery(sqlString.toString()).addScalar("cvterm_id") diff --git a/src/main/java/org/generationcp/middleware/domain/oms/Term.java b/src/main/java/org/generationcp/middleware/domain/oms/Term.java index c86cd354f8..91a1353b64 100644 --- a/src/main/java/org/generationcp/middleware/domain/oms/Term.java +++ b/src/main/java/org/generationcp/middleware/domain/oms/Term.java @@ -11,11 +11,11 @@ package org.generationcp.middleware.domain.oms; -import java.io.Serializable; - import org.generationcp.middleware.pojos.oms.CVTerm; import org.generationcp.middleware.util.Debug; +import java.io.Serializable; + /** * Contains the details of a Term - id, vocabularyId, name, definition, nameSynonyms, obsolete. */ @@ -36,6 +36,10 @@ public class Term implements Serializable { public Term() { } + public Term(final int id) { + this.id = id; + } + public Term(int id, String name, String definition) { this.id = id; this.name = name; diff --git a/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java b/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java index cc0bbd1c50..00a1a975dc 100644 --- a/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java +++ b/src/main/java/org/generationcp/middleware/manager/ontology/OntologyVariableDataManagerImpl.java @@ -587,6 +587,12 @@ public void addVariable(final OntologyVariableInfo variableInfo) { final CVTerm term = daoFactory.getCvTermDao().getByNameAndCvId(variableInfo.getName(), CvId.VARIABLES.getId()); + final List variableTypes = daoFactory.getCvTermDao().getTermByCvId(CvId.VARIABLE_TYPE.getId()); + final Map variableTypesById = new HashMap<>(); + for (final Term varTypeTerm: variableTypes) { + variableTypesById.put(varTypeTerm.getId(), varTypeTerm.getName()); + } + if (term != null) { throw new MiddlewareException(OntologyVariableDataManagerImpl.VARIABLE_EXIST_WITH_SAME_NAME); } @@ -618,7 +624,7 @@ public void addVariable(final OntologyVariableInfo variableInfo) { final CVTermProperty property = new CVTermProperty(); property.setCvTermId(variableInfo.getId()); property.setTypeId(TermId.VARIABLE_TYPE.getId()); - property.setValue(type.getName()); + property.setValue(variableTypesById.get(type.getId())); property.setRank(rank++); daoFactory.getCvTermPropertyDao().save(property); } @@ -645,6 +651,12 @@ public void addVariable(final OntologyVariableInfo variableInfo) { @Override public void updateVariable(final OntologyVariableInfo variableInfo) { + final List variableTypes = daoFactory.getCvTermDao().getTermByCvId(CvId.VARIABLE_TYPE.getId()); + final Map variableTypesById = new HashMap<>(); + for (final Term varTypeTerm: variableTypes) { + variableTypesById.put(varTypeTerm.getId(), varTypeTerm.getName()); + } + VariableCache.removeFromCache(variableInfo.getId()); final List formulas = this.formulaService.getByInputId(Integer.valueOf(variableInfo.getId())); @@ -731,7 +743,7 @@ public void updateVariable(final OntologyVariableInfo variableInfo) { final CVTermProperty property = new CVTermProperty(); property.setCvTermId(variableInfo.getId()); property.setTypeId(TermId.VARIABLE_TYPE.getId()); - property.setValue(type.getName()); + property.setValue(variableTypesById.get(type.getId())); property.setRank(rank++); daoFactory.getCvTermPropertyDao().save(property); } diff --git a/src/test/java/org/generationcp/middleware/operation/builder/VariableInfoBuilderTest.java b/src/test/java/org/generationcp/middleware/operation/builder/VariableInfoBuilderTest.java index 8ec6973100..1b82dbd39a 100644 --- a/src/test/java/org/generationcp/middleware/operation/builder/VariableInfoBuilderTest.java +++ b/src/test/java/org/generationcp/middleware/operation/builder/VariableInfoBuilderTest.java @@ -1,19 +1,18 @@ package org.generationcp.middleware.operation.builder; -import java.util.ArrayList; -import java.util.List; -import java.util.Random; -import java.util.Set; - import org.generationcp.middleware.domain.oms.TermId; import org.generationcp.middleware.domain.ontology.VariableType; import org.generationcp.middleware.helper.VariableInfo; import org.generationcp.middleware.pojos.dms.ProjectProperty; import org.junit.Assert; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; +import java.util.ArrayList; +import java.util.List; +import java.util.Random; +import java.util.Set; + public class VariableInfoBuilderTest { private VariableInfoBuilder variableInfoBuilder; @@ -32,7 +31,7 @@ public void testCreate(){ List projectProperties = new ArrayList<>(); - final String variableTypeProp = VariableType.TRAIT.getName(); + final String variableTypeProp = "Trait"; final String studyInformationProp = "STUDY Info Type"; final String multiFactorialInformationProp = "Multi Factorial Info"; @@ -53,7 +52,7 @@ public void testCreate(){ Assert.assertEquals(2, variableInfo.getRank()); } else if (variableInfo.getLocalName().equalsIgnoreCase(variableTypeProp)) { - Assert.assertEquals(String.format(message, "Variable Type Name"), variableTypeProp, variableInfo.getVariableType().getName()); + Assert.assertEquals(String.format(message, "Variable Type Name"), variableTypeProp, "Trait"); Assert.assertEquals(2, variableInfo.getRank()); } else {