|
26 | 26 |
|
27 | 27 | import org.eclipse.core.runtime.Adapters; |
28 | 28 | import org.eclipse.core.runtime.IPath; |
| 29 | +import org.eclipse.jface.internal.InternalPolicy; |
29 | 30 | import org.eclipse.jface.resource.ImageDescriptor; |
30 | 31 | import org.eclipse.swt.graphics.Image; |
31 | 32 | import org.eclipse.swt.graphics.ImageData; |
@@ -122,20 +123,35 @@ public void testImageFileNameProviderGetxName() { |
122 | 123 |
|
123 | 124 | @Test |
124 | 125 | public void testImageFileNameProviderGetxName_forFileURL() throws IOException { |
125 | | - URL imageFileURL = tempFolder.newFile("image.png").toURI().toURL(); |
126 | | - tempFolder. newFile( "[email protected]"); |
127 | | - ImageDescriptor descriptor = ImageDescriptor.createFromURL(imageFileURL); |
| 126 | + testImageFileNameProviderGetxName_forFileURL(true); |
| 127 | + } |
128 | 128 |
|
129 | | - ImageFileNameProvider fileNameProvider = Adapters.adapt(descriptor, ImageFileNameProvider.class); |
130 | | - assertNotNull("URLImageDescriptor does not adapt to ImageFileNameProvider", fileNameProvider); |
131 | | - String imagePath100 = fileNameProvider.getImagePath(100); |
132 | | - assertNotNull("URLImageDescriptor ImageFileNameProvider does not return the 100% path", imagePath100); |
133 | | - assertEquals(IPath.fromOSString(imagePath100).lastSegment(), "image.png"); |
134 | | - String imagePath200 = fileNameProvider.getImagePath(200); |
135 | | - assertNotNull("URLImageDescriptor ImageFileNameProvider does not return the @2x path", imagePath200); |
136 | | - assertEquals( IPath. fromOSString( imagePath200). lastSegment(), "[email protected]"); |
137 | | - String imagePath150 = fileNameProvider.getImagePath(150); |
138 | | - assertNull("URLImageDescriptor's ImageFileNameProvider does return a @1.5x path", imagePath150); |
| 129 | + @Test |
| 130 | + public void testImageFileNameProviderGetxName_forFileURL_noOSGi() throws IOException { |
| 131 | + testImageFileNameProviderGetxName_forFileURL(false); |
| 132 | + } |
| 133 | + |
| 134 | + private void testImageFileNameProviderGetxName_forFileURL(boolean osgiAvailable) throws IOException { |
| 135 | + boolean oldOsgiAvailable = InternalPolicy.OSGI_AVAILABLE; |
| 136 | + InternalPolicy.OSGI_AVAILABLE = osgiAvailable; |
| 137 | + try { |
| 138 | + URL imageFileURL = tempFolder.newFile("image.png").toURI().toURL(); |
| 139 | + tempFolder. newFile( "[email protected]"); |
| 140 | + ImageDescriptor descriptor = ImageDescriptor.createFromURL(imageFileURL); |
| 141 | + |
| 142 | + ImageFileNameProvider fileNameProvider = Adapters.adapt(descriptor, ImageFileNameProvider.class); |
| 143 | + assertNotNull("URLImageDescriptor does not adapt to ImageFileNameProvider", fileNameProvider); |
| 144 | + String imagePath100 = fileNameProvider.getImagePath(100); |
| 145 | + assertNotNull("URLImageDescriptor ImageFileNameProvider does not return the 100% path", imagePath100); |
| 146 | + assertEquals(IPath.fromOSString(imagePath100).lastSegment(), "image.png"); |
| 147 | + String imagePath200 = fileNameProvider.getImagePath(200); |
| 148 | + assertNotNull("URLImageDescriptor ImageFileNameProvider does not return the @2x path", imagePath200); |
| 149 | + assertEquals( IPath. fromOSString( imagePath200). lastSegment(), "[email protected]"); |
| 150 | + String imagePath150 = fileNameProvider.getImagePath(150); |
| 151 | + assertNull("URLImageDescriptor's ImageFileNameProvider does return a @1.5x path", imagePath150); |
| 152 | + } finally { |
| 153 | + InternalPolicy.OSGI_AVAILABLE = oldOsgiAvailable; |
| 154 | + } |
139 | 155 | } |
140 | 156 |
|
141 | 157 | @Test |
|
0 commit comments