/* * Copyright 2017 Red Hat, Inc. and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.kie.workbench.common.forms.data.modeller.service.impl; import java.util.Date; import org.junit.Before; import org.kie.workbench.common.screens.datamodeller.service.DataModelerService; import org.kie.workbench.common.services.datamodeller.core.DataModel; import org.kie.workbench.common.services.datamodeller.core.DataObject; import org.kie.workbench.common.services.datamodeller.core.ObjectProperty; import org.kie.workbench.common.services.datamodeller.core.impl.AnnotationDefinitionImpl; import org.kie.workbench.common.services.datamodeller.core.impl.AnnotationImpl; import org.kie.workbench.common.services.datamodeller.core.impl.DataModelImpl; import org.kie.workbench.common.services.shared.project.KieProjectService; import org.mockito.Mock; import org.uberfire.backend.vfs.Path; import static org.mockito.Matchers.any; import static org.mockito.Mockito.when; public abstract class AbstractDataObjectFinderTest extends AbstractDataObjectTest { public static final String PERSISTENCE_ID_PROPERTY = "id"; public static final String NAME_PROPERTY = "name"; public static final String LAST_NAME_PROPERTY = "lastName"; public static final String AGE_PROPERTY = "age"; public static final String BIRTHDATE_PROPERTY = "birthdate"; public static final String MARRIED_PROPERTY = "married"; public static final String PACKAGE = "org.kie.workbench.common.forms.test"; public static final String DATA_OBJECT_NAME = "Person"; public static final String TYPE_NAME = PACKAGE + "." + DATA_OBJECT_NAME; public static final int DATA_OBJECT_VALID_FIELDS = 5; @Mock protected KieProjectService projectService; @Mock protected DataModelerService dataModelerService; @Mock protected Path path; protected DataModel dataModel = new DataModelImpl(); protected DataObject dataObject; protected DataObjectFinderServiceImpl service; @Before public void init() { dataObject = dataModel.addDataObject(PACKAGE, DATA_OBJECT_NAME); addProperty(dataObject, DataModellerFieldGenerator.SERIAL_VERSION_UID, Long.class.getName(), false, false); ObjectProperty property = addProperty(dataObject, PERSISTENCE_ID_PROPERTY, Long.class.getName(), false, false); property.addAnnotation(new AnnotationImpl(new AnnotationDefinitionImpl(DataModellerFieldGenerator.PERSISTENCE_ANNOTATION))); addProperty(dataObject, NAME_PROPERTY, String.class.getName(), false, true); addProperty(dataObject, LAST_NAME_PROPERTY, String.class.getName(), false, true); addProperty(dataObject, AGE_PROPERTY, Integer.class.getName(), false, true); addProperty(dataObject, BIRTHDATE_PROPERTY, Date.class.getName(), false, true); addProperty(dataObject, MARRIED_PROPERTY, Boolean.class.getName(), false, true); when(dataModelerService.loadModel(any())).thenReturn(dataModel); service = new DataObjectFinderServiceImpl(projectService, dataModelerService); } }