blob: 759d664f386e6a35688a7d83b7e6fb5525d871a1 [file] [log] [blame]
package org.eclipse.e4.languages.javascript.test;
import org.eclipse.e4.internal.languages.javascript.JSImportPackage;
import org.eclipse.e4.internal.languages.javascript.JSVersionRange;
import junit.framework.TestCase;
public class JSImportTest extends TestCase {
public JSImportTest(String name) {
super(name);
}
protected void setUp() throws Exception {
//
}
protected void tearDown() throws Exception {
//
}
public void testNullHeader() {
try {
new JSImportPackage(null);
} catch (IllegalArgumentException e) {
return;
}
fail();
}
public void testNameAndEmptyVersionRange() {
JSImportPackage jsImport = new JSImportPackage("a.a");
assertEquals("a.a", jsImport.getName());
assertEquals(JSVersionRange.emptyRange, jsImport.getVersionRange());
assertEquals(null, jsImport.getBundleSymbolicName());
assertEquals(JSVersionRange.emptyRange, jsImport.getBundleVersionRange());
assertEquals(0, jsImport.getAttributes().size());
assertEquals(0, jsImport.getDirectives().size());
assertEquals(false, jsImport.isOptional());
}
public void testNameAndVersion() {
JSImportPackage jsImport = new JSImportPackage("a.a;version=1.2.1");
assertEquals("a.a", jsImport.getName());
assertEquals(new JSVersionRange("1.2.1"), jsImport.getVersionRange());
assertEquals(null, jsImport.getBundleSymbolicName());
assertEquals(JSVersionRange.emptyRange, jsImport.getBundleVersionRange());
assertEquals(1, jsImport.getAttributes().size());
assertEquals(0, jsImport.getDirectives().size());
assertEquals(false, jsImport.isOptional());
}
public void testBundleNameAndVersion() {
JSImportPackage jsImport = new JSImportPackage("a.a;version=1.2.1;bundle-symbolic-name=test1;bundle-version=1.8");
assertEquals("a.a", jsImport.getName());
assertEquals(new JSVersionRange("1.2.1"), jsImport.getVersionRange());
assertEquals("test1", jsImport.getBundleSymbolicName());
assertEquals(new JSVersionRange("1.8"), jsImport.getBundleVersionRange());
assertEquals(3, jsImport.getAttributes().size());
assertEquals(0, jsImport.getDirectives().size());
assertEquals(false, jsImport.isOptional());
}
public void testIsOptional() {
JSImportPackage jsImport = new JSImportPackage("a.a;version=1.2.1;bundle-symbolic-name=test1;bundle-version=1.8;resolution:=optional");
assertEquals("a.a", jsImport.getName());
assertEquals(new JSVersionRange("1.2.1"), jsImport.getVersionRange());
assertEquals("test1", jsImport.getBundleSymbolicName());
assertEquals(new JSVersionRange("1.8"), jsImport.getBundleVersionRange());
assertEquals(3, jsImport.getAttributes().size());
assertEquals(1, jsImport.getDirectives().size());
assertEquals(true, jsImport.isOptional());
}
}