001
014
015 package com.liferay.portlet.dynamicdatamapping.util.test;
016
017 import com.liferay.portal.kernel.locale.test.LocaleTestUtil;
018 import com.liferay.portal.kernel.test.util.ServiceContextTestUtil;
019 import com.liferay.portal.kernel.test.util.TestPropsValues;
020 import com.liferay.portal.kernel.util.StringPool;
021 import com.liferay.portal.kernel.util.StringUtil;
022 import com.liferay.portal.model.Group;
023 import com.liferay.portal.util.PortalUtil;
024 import com.liferay.portlet.dynamicdatamapping.io.DDMFormXSDDeserializerUtil;
025 import com.liferay.portlet.dynamicdatamapping.model.DDMForm;
026 import com.liferay.portlet.dynamicdatamapping.model.DDMFormLayout;
027 import com.liferay.portlet.dynamicdatamapping.model.DDMStructure;
028 import com.liferay.portlet.dynamicdatamapping.model.DDMStructureConstants;
029 import com.liferay.portlet.dynamicdatamapping.service.DDMStructureLocalServiceUtil;
030 import com.liferay.portlet.dynamicdatamapping.storage.StorageType;
031 import com.liferay.portlet.dynamicdatamapping.util.DDMUtil;
032 import com.liferay.portlet.dynamicdatamapping.util.DDMXMLUtil;
033
034
039 public class DDMStructureTestHelper {
040
041 public DDMStructureTestHelper(Group group) throws Exception {
042 _classNameId = PortalUtil.getClassNameId(StringUtil.randomString());
043 _group = group;
044 }
045
046 public DDMStructure addStructure(
047 DDMForm ddmForm, DDMFormLayout ddmFormLayout)
048 throws Exception {
049
050 return addStructure(
051 DDMStructureConstants.DEFAULT_PARENT_STRUCTURE_ID, _classNameId,
052 null, "Test Structure", StringPool.BLANK, ddmForm, ddmFormLayout,
053 StorageType.JSON.toString(), DDMStructureConstants.TYPE_DEFAULT);
054 }
055
056 public DDMStructure addStructure(DDMForm ddmForm, String storageType)
057 throws Exception {
058
059 return addStructure(
060 _classNameId, null, "Test Structure", ddmForm, storageType,
061 DDMStructureConstants.TYPE_DEFAULT);
062 }
063
064 public DDMStructure addStructure(
065 long parentStructureId, long classNameId, String structureKey,
066 String name, String description, DDMForm ddmForm,
067 DDMFormLayout ddmFormLayout, String storageType, int type)
068 throws Exception {
069
070 return DDMStructureLocalServiceUtil.addStructure(
071 TestPropsValues.getUserId(), _group.getGroupId(), parentStructureId,
072 classNameId, structureKey, LocaleTestUtil.getDefaultLocaleMap(name),
073 LocaleTestUtil.getDefaultLocaleMap(description), ddmForm,
074 ddmFormLayout, storageType, type,
075 ServiceContextTestUtil.getServiceContext(_group.getGroupId()));
076 }
077
078 public DDMStructure addStructure(
079 long classNameId, String structureKey, String name, DDMForm ddmForm,
080 String storageType, int type)
081 throws Exception {
082
083 DDMFormLayout ddmFormLayout = DDMUtil.getDefaultDDMFormLayout(ddmForm);
084
085 return addStructure(
086 DDMStructureConstants.DEFAULT_PARENT_STRUCTURE_ID, classNameId,
087 structureKey, name, StringPool.BLANK, ddmForm, ddmFormLayout,
088 storageType, type);
089 }
090
091 public DDMForm toDDMForm(String definition) throws Exception {
092 DDMXMLUtil.validateXML(definition);
093
094 return DDMFormXSDDeserializerUtil.deserialize(definition);
095 }
096
097 private final long _classNameId;
098 private final Group _group;
099
100 }