-
Notifications
You must be signed in to change notification settings - Fork 0
/
MavenDialogControlFactoryTest.java
50 lines (42 loc) · 1.7 KB
/
MavenDialogControlFactoryTest.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package org.eclipse.emf.parsley.examples.maven.tests;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
import org.eclipse.emf.parsley.EmfParsleyJavaGuiceModule;
import org.eclipse.emf.parsley.composite.DialogControlFactory;
import org.eclipse.emf.parsley.examples.maven.binding.DialogControlFactoryGen;
import org.eclipse.emf.parsley.junit4.AbstractEmfParsleyControlBasedTest;
import org.eclipse.swt.widgets.Control;
import org.junit.Before;
import org.junit.Test;
import com.google.inject.Inject;
public class MavenDialogControlFactoryTest extends AbstractEmfParsleyControlBasedTest {
@Inject
private DialogControlFactory dialogControlFactory;
@Inject
private AdapterFactoryEditingDomain editingDomain;
@Before
public void setupLabelProvider() {
createInjector(new EmfParsleyJavaGuiceModule() {
@Override
public Class<? extends DialogControlFactory> bindDialogControlFactory() {
return DialogControlFactoryGen.class;
}
}).injectMembers(this);
}
@Test
public void testDialogControlFactoryForEClassName() {
EClass eclass = EcorePackage.eINSTANCE.getEClass();
dialogControlFactory.init(editingDomain, eclass, getShell());
assertText(dialogControlFactory.create(EcorePackage.Literals.ENAMED_ELEMENT__NAME), "EClass");
}
@Test
public void testDialogControlFactoryForEClassInterface() {
EClass eclass = EcorePackage.eINSTANCE.getEClass();
dialogControlFactory.init(editingDomain, eclass, getShell());
final Control checkbox = dialogControlFactory.create(EcorePackage.Literals.ECLASS__INTERFACE);
assertCheckbox(checkbox, false);
eclass.setInterface(true);
assertCheckbox(checkbox, true);
}
}