blob: 622954ab8de8b6b7c5d98773f303cab175ea5611 [file] [log] [blame]
package org.eclipse.emf.parsley.dsl.tests
import org.eclipse.emf.parsley.dsl.ui.wizard.template.TemplateWizardConfiguration
import org.junit.Test
import static extension org.junit.Assert.*
import org.eclipse.emf.parsley.views.SaveableTreeView
/**
* @author Lorenzo Bettini - Initial contribution and API
*/
class EmfParsleyTemplateWizardConfigurationTests {
@Test
def void testPartClassName() {
"MynameSaveableTreeView".assertEquals(
createEmptyConfiguration().getPartClassName("my.project.myname")
)
}
@Test
def void testPartClassFQN() {
"my.project.myname.MynameSaveableTreeView".assertEquals(
createEmptyConfiguration().getPartClassFQN("my.project.myname")
)
}
@Test
def void testDefaultConfiguratorElements() {
"".assertEquals(
createEmptyConfiguration().getConfiguratorElements("my.project.myname")
)
}
@Test
def void testConfiguratorIsNotGeneratedWhenElementsAreEmpty() {
"".assertEquals(
createEmptyConfiguration().getConfiguratorContents("my.project.myname")
)
}
@Test
def void testConfiguratorIsGeneratedElementsAreNotEmpty() {
'''
configurator {
// some contents
}
'''
.toString.assertEquals(
new TemplateWizardConfiguration(null, null, SaveableTreeView) {
override getConfiguratorElements(String projectName) {
"// some contents"
}
}.getConfiguratorContents("my.project.myname")
)
}
@Test
def void testPartClassContents() {
'''
package my.project.myname;
public class MynameSaveableTreeView extends org.eclipse.emf.parsley.views.SaveableTreeView {
}
'''.toString
.assertEquals(
createEmptyConfiguration.getContentsForPart("my.project.myname")
)
}
@Test
def void testParsleyModuleContentsWithConfigurator() {
'''
import my.project.myname.MynameSaveableTreeView
/* my.project.myname Emf Parsley Dsl Module file */
module my.project.myname {
parts {
viewpart my.project.myname {
viewname "Myname"
viewclass MynameSaveableTreeView
}
}
configurator {
// some contents
}
}
'''
.toString.assertEquals(
new TemplateWizardConfiguration(null, null, SaveableTreeView) {
override getConfiguratorElements(String projectName) {
"// some contents"
}
}.getParsleyModuleContents("my.project.myname")
)
}
@Test
def void testParsleyModuleContentsWithoutConfigurator() {
'''
import my.project.myname.MynameSaveableTreeView
/* my.project.myname Emf Parsley Dsl Module file */
module my.project.myname {
parts {
viewpart my.project.myname {
viewname "Myname"
viewclass MynameSaveableTreeView
}
}
}
'''
.toString.assertEquals(
createEmptyConfiguration.getParsleyModuleContents("my.project.myname")
)
}
@Test
def void testDefaultGetResourceManager() {
"".assertEquals(
createEmptyConfiguration.getResourceManager()
)
}
@Test
def void testParsleyModuleContentsWithResourceManager() {
'''
import my.project.myname.MynameSaveableTreeView
/* my.project.myname Emf Parsley Dsl Module file */
module my.project.myname {
parts {
viewpart my.project.myname {
viewname "Myname"
viewclass MynameSaveableTreeView
}
}
resourceManager {
initializeResource {
// Optional: initialize an empty Resource
// 'it' is of type Resource
// e.g., it.getContents += myFactory.createMyClass
}
}
}
'''
.toString.assertEquals(
new TemplateWizardConfiguration(null, null, SaveableTreeView) {
override getResourceManager() {
getProjectFilesGenerator.genResourceManager(
getProjectFilesGenerator.genInitializeResource
).toString
}
}.getParsleyModuleContents("my.project.myname")
)
}
private def createEmptyConfiguration() {
new TemplateWizardConfiguration(null, null, SaveableTreeView)
}
}