/* * 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.jbpm.server.service.formGeneration.impl.authoring; import org.guvnor.common.services.backend.util.CommentedOptionFactory; import org.junit.Before; import org.kie.workbench.common.forms.commons.layout.FormLayoutTemplateGenerator; import org.kie.workbench.common.forms.commons.layout.impl.StaticFormLayoutTemplateGenerator; import org.kie.workbench.common.forms.data.modeller.service.DataObjectFinderService; import org.kie.workbench.common.forms.data.modeller.service.impl.DataModellerFieldGenerator; import org.kie.workbench.common.forms.editor.service.backend.FormModelHandlerManager; import org.kie.workbench.common.forms.editor.service.shared.VFSFormFinderService; import org.kie.workbench.common.forms.fields.test.TestFieldManager; import org.kie.workbench.common.forms.jbpm.server.service.formGeneration.impl.AbstractBPMNFormGeneratorServiceTest; import org.kie.workbench.common.forms.jbpm.server.service.formGeneration.test.TestFormModelHandlerManager; import org.kie.workbench.common.forms.serialization.FormDefinitionSerializer; import org.kie.workbench.common.forms.serialization.impl.FieldSerializer; import org.kie.workbench.common.forms.serialization.impl.FormDefinitionSerializerImpl; import org.kie.workbench.common.forms.serialization.impl.FormModelSerializer; import org.kie.workbench.common.forms.service.FieldManager; import org.mockito.Mock; import org.uberfire.backend.vfs.Path; import org.uberfire.io.IOService; import org.uberfire.java.nio.base.options.CommentedOption; import org.uberfire.java.nio.fs.file.SimpleFileSystemProvider; import static org.mockito.Matchers.anyString; import static org.mockito.Mockito.*; public abstract class BPMNVFSFormDefinitionGeneratorServiceTest extends AbstractBPMNFormGeneratorServiceTest<BPMNVFSFormDefinitionGeneratorService, Path> { @Mock protected VFSFormFinderService formFinderService; @Mock protected IOService ioService; protected FieldManager fieldManager = new TestFieldManager(); protected FormLayoutTemplateGenerator templateGenerator = new StaticFormLayoutTemplateGenerator(); @Mock protected DataObjectFinderService dataObjectFinderService; protected DataModellerFieldGenerator dataModellerFieldGenerator; protected FormModelHandlerManager formModelHandlerManager; protected FormDefinitionSerializer formSerializer = new FormDefinitionSerializerImpl(new FieldSerializer(), new FormModelSerializer()); protected SimpleFileSystemProvider simpleFileSystemProvider = null; @Mock protected CommentedOptionFactory commentedOptionFactory; @Before public void setup() { source = mock(Path.class); simpleFileSystemProvider = new SimpleFileSystemProvider(); simpleFileSystemProvider.forceAsDefault(); when(source.toURI()).thenReturn("default:///src/main/resources/test.frm"); when(commentedOptionFactory.makeCommentedOption(anyString())).then(invocationOnMock -> new CommentedOption("1", invocationOnMock.getArguments()[0].toString())); dataModellerFieldGenerator = new DataModellerFieldGenerator(fieldManager); formModelHandlerManager = new TestFormModelHandlerManager(fieldManager, dataObjectFinderService, dataModellerFieldGenerator); service = new BPMNVFSFormDefinitionGeneratorService(fieldManager, templateGenerator, formModelHandlerManager, formFinderService, formSerializer, ioService, commentedOptionFactory); } }