| package org.eclipse.e4.javascript.test; |
| |
| import org.eclipse.e4.internal.javascript.JSImport; |
| import org.eclipse.e4.internal.javascript.VersionRange; |
| |
| 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 JSImport(null); |
| } catch (IllegalArgumentException e) { |
| return; |
| } |
| fail(); |
| } |
| |
| public void testNameAndEmptyVersionRange() { |
| JSImport jsImport = new JSImport("a.a"); |
| assertEquals("a.a", jsImport.getName()); |
| assertEquals(VersionRange.emptyRange, jsImport.getVersionRange()); |
| assertEquals(null, jsImport.getBundleSymbolicName()); |
| assertEquals(VersionRange.emptyRange, jsImport.getBundleVersionRange()); |
| assertEquals(0, jsImport.getAttributes().size()); |
| assertEquals(0, jsImport.getDirectives().size()); |
| assertEquals(false, jsImport.isOptional()); |
| } |
| |
| public void testNameAndVersion() { |
| JSImport jsImport = new JSImport("a.a;version=1.2.1"); |
| assertEquals("a.a", jsImport.getName()); |
| assertEquals(new VersionRange("1.2.1"), jsImport.getVersionRange()); |
| assertEquals(null, jsImport.getBundleSymbolicName()); |
| assertEquals(VersionRange.emptyRange, jsImport.getBundleVersionRange()); |
| assertEquals(1, jsImport.getAttributes().size()); |
| assertEquals(0, jsImport.getDirectives().size()); |
| assertEquals(false, jsImport.isOptional()); |
| } |
| |
| public void testBundleNameAndVersion() { |
| JSImport jsImport = new JSImport("a.a;version=1.2.1;bundle-symbolic-name=test1;bundle-version=1.8"); |
| assertEquals("a.a", jsImport.getName()); |
| assertEquals(new VersionRange("1.2.1"), jsImport.getVersionRange()); |
| assertEquals("test1", jsImport.getBundleSymbolicName()); |
| assertEquals(new VersionRange("1.8"), jsImport.getBundleVersionRange()); |
| assertEquals(3, jsImport.getAttributes().size()); |
| assertEquals(0, jsImport.getDirectives().size()); |
| assertEquals(false, jsImport.isOptional()); |
| } |
| |
| public void testIsOptional() { |
| JSImport jsImport = new JSImport("a.a;version=1.2.1;bundle-symbolic-name=test1;bundle-version=1.8;resolution:=optional"); |
| assertEquals("a.a", jsImport.getName()); |
| assertEquals(new VersionRange("1.2.1"), jsImport.getVersionRange()); |
| assertEquals("test1", jsImport.getBundleSymbolicName()); |
| assertEquals(new VersionRange("1.8"), jsImport.getBundleVersionRange()); |
| assertEquals(3, jsImport.getAttributes().size()); |
| assertEquals(1, jsImport.getDirectives().size()); |
| assertEquals(true, jsImport.isOptional()); |
| } |
| } |