package org.esa.beam.smos.ee2netcdf.visat; import org.esa.beam.framework.datamodel.Product; import org.esa.beam.framework.gpf.ui.DefaultAppContext; import org.junit.Test; import java.awt.*; import static org.junit.Assert.*; import static org.junit.Assume.assumeTrue; public class DialogHelperTest { private final boolean isGuiAvailable; public DialogHelperTest() { isGuiAvailable = !GraphicsEnvironment.isHeadless(); } @Test public void testIsSupportedType() { assertTrue(DialogHelper.isSupportedType("MIR_BWLD1C")); assertTrue(DialogHelper.isSupportedType("MIR_BWSD1C")); assertTrue(DialogHelper.isSupportedType("MIR_BWLF1C")); assertTrue(DialogHelper.isSupportedType("MIR_BWSF1C")); assertTrue(DialogHelper.isSupportedType("MIR_SCSF1C")); assertTrue(DialogHelper.isSupportedType("MIR_SCLF1C")); assertTrue(DialogHelper.isSupportedType("MIR_SCSD1C")); assertTrue(DialogHelper.isSupportedType("MIR_SCLD1C")); assertTrue(DialogHelper.isSupportedType("MIR_SMUDP2")); assertTrue(DialogHelper.isSupportedType("MIR_OSUDP2")); assertFalse(DialogHelper.isSupportedType("MPL_XBDOWN")); assertFalse(DialogHelper.isSupportedType("MIR_SMDAP2")); assertFalse(DialogHelper.isSupportedType("MIR_CORN0_")); assertFalse(DialogHelper.isSupportedType("AUX_ECMWF_")); assertFalse(DialogHelper.isSupportedType("MIR_AFWU1A")); } @Test public void testCanProductSelectionBeEnabled_noProduct() { assumeTrue(isGuiAvailable); final DefaultAppContext appContext = new DefaultAppContext("test"); assertNull(appContext.getSelectedProduct()); assertFalse(DialogHelper.canProductSelectionBeEnabled(appContext)); } @Test public void testCanProductSelectionBeEnabled_wrongProductType() { assumeTrue(isGuiAvailable); final DefaultAppContext appContext = new DefaultAppContext("test"); appContext.setSelectedProduct(new Product("test", "MER_RR__1P", 2, 2)); assertNotNull(appContext.getSelectedProduct()); assertFalse(DialogHelper.canProductSelectionBeEnabled(appContext)); } @Test public void testCanProductSelectionBeEnabled_validProductType() { assumeTrue(isGuiAvailable); final DefaultAppContext appContext = new DefaultAppContext("test"); appContext.setSelectedProduct(new Product("test", "MIR_SCLF1C", 2, 2)); assertNotNull(appContext.getSelectedProduct()); assertTrue(DialogHelper.canProductSelectionBeEnabled(appContext)); } @Test public void testGetSelectedSmosProduct_noProduct() { assumeTrue(isGuiAvailable); final DefaultAppContext appContext = new DefaultAppContext("test"); assertNull(appContext.getSelectedProduct()); assertNull(DialogHelper.getSelectedSmosProduct(appContext)); } @Test public void testGetSelectedSmosProduct_wrongProductType() { assumeTrue(isGuiAvailable); final DefaultAppContext appContext = new DefaultAppContext("test"); appContext.setSelectedProduct(new Product("test", "MER_RR__1P", 2, 2)); assertNotNull(appContext.getSelectedProduct()); assertNull(DialogHelper.getSelectedSmosProduct(appContext)); } @Test public void testGetSelectedSmosProduct_validProductType() { assumeTrue(isGuiAvailable); final DefaultAppContext appContext = new DefaultAppContext("test"); final Product expectedProduct = new Product("test", "MIR_OSUDP2", 2, 2); appContext.setSelectedProduct(expectedProduct); assertNotNull(appContext.getSelectedProduct()); final Product selectedProduct = DialogHelper.getSelectedSmosProduct(appContext); assertEquals(expectedProduct, selectedProduct); } }