/* * Copyright (C) 2010 Brockmann Consult GmbH (info@brockmann-consult.de) * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the Free * Software Foundation; either version 3 of the License, or (at your option) * any later version. * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, see http://www.gnu.org/licenses/ */ package org.esa.beam.smos.visat.export; import org.junit.Test; import java.util.Date; import static org.junit.Assert.assertEquals; public class FileNamePatcherTest { @Test public void testPatchDates() { final FileNamePatcher patcher = new FileNamePatcher("SM_TEST_MIR_SCLD1C_20070223T061024_20070223T070437_141_000_0"); patcher.setStartDate(new Date(1000000)); patcher.setStopDate(new Date(1010000)); assertEquals("SM_TEST_MIR_SCLD1C_19700101T001640_19700101T001650_141_000_0.HDR", patcher.getHdrFileName()); assertEquals("SM_TEST_MIR_SCLD1C_19700101T001640_19700101T001650_141_000_0.DBL", patcher.getDblFileName()); assertEquals("SM_TEST_MIR_SCLD1C_19700101T001640_19700101T001650_141_000_0", patcher.getFileNameWithoutExtension()); } @Test public void testPatchNoDates() { final FileNamePatcher patcher = new FileNamePatcher("SM_TEST_MIR_SCLD1C_20070223T061024_20070223T070437_141_000_0"); assertEquals("SM_TEST_MIR_SCLD1C_20070223T061024_20070223T070437_141_000_0.HDR", patcher.getHdrFileName()); assertEquals("SM_TEST_MIR_SCLD1C_20070223T061024_20070223T070437_141_000_0.DBL", patcher.getDblFileName()); assertEquals("SM_TEST_MIR_SCLD1C_20070223T061024_20070223T070437_141_000_0", patcher.getFileNameWithoutExtension()); } @Test public void testPatchFileCounter_noPatching() { final FileNamePatcher patcher = new FileNamePatcher("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_001_5"); patcher.setFileCounter(0); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_001_5.HDR", patcher.getHdrFileName()); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_001_5.DBL", patcher.getDblFileName()); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_001_5", patcher.getFileNameWithoutExtension()); } @Test public void testPatchFileCounter_oneDigit() { final FileNamePatcher patcher = new FileNamePatcher("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_001_5"); patcher.setFileCounter(9); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_009_5.HDR", patcher.getHdrFileName()); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_009_5.DBL", patcher.getDblFileName()); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_009_5", patcher.getFileNameWithoutExtension()); } @Test public void testPatchFileCounter_threeDigits() { final FileNamePatcher patcher = new FileNamePatcher("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_001_5"); patcher.setFileCounter(198); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_198_5.HDR", patcher.getHdrFileName()); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_198_5.DBL", patcher.getDblFileName()); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_198_5", patcher.getFileNameWithoutExtension()); } @Test public void testPatchFileCounter_fiveDigits() { final FileNamePatcher patcher = new FileNamePatcher("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_001_5"); patcher.setFileCounter(12345); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_345_5.HDR", patcher.getHdrFileName()); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_345_5.DBL", patcher.getDblFileName()); assertEquals("SM_REPR_MIR_SCLF1C_20110904T022557_20110904T031917_504_345_5", patcher.getFileNameWithoutExtension()); } }