Skip to content
Snippets Groups Projects
test_timeseries.py 1.79 KiB
Newer Older
  • Learn to ignore specific revisions
  • # coding=utf-8
    """Tests QGIS plugin init."""
    
    import os
    import unittest
    import example
    
    import example.Images
    
    from osgeo import gdal
    from timeseriesviewer import file_search
    from timeseriesviewer.timeseries import TimeSeries, SensorInstrument, TimeSeriesDatum
    
    class TestInit(unittest.TestCase):
    
    
        def test_timeseriesdatum(self):
    
            file = example.Images.Img_2014_03_20_LC82270652014079LGN00_BOA
    
            tsd = TimeSeriesDatum.createFromPath(file)
            self.assertIsInstance(tsd, TimeSeriesDatum)
            self.assertEqual(tsd.nb, 6)
    
    
        def test_timeseries(self):
    
    
            files = file_search(os.path.dirname(example.__file__), '*.tif', recursive=True)
    
    
            addedDates = []
    
            TS = TimeSeries()
    
            TS.sigTimeSeriesDatesAdded.connect(lambda dates: addedDates.extend(dates))
    
            TS.sigTimeSeriesDatesRemoved.connect(lambda dates: [addedDates.remove(d) for d in dates])
    
            for file in files:
                TS.addFiles([file])
    
            self.assertEqual(len(files), len(TS))
            TS.removeDates(addedDates)
            self.assertEquals(len(addedDates), 0)
    
        def test_sensors(self):
            pathRE = file_search(os.path.dirname(example.__file__), 're*.tiff', recursive=True)[0]
            pathLS = file_search(os.path.dirname(example.__file__), '*BOA.tiff', recursive=True)[0]
    
            TS = TimeSeries()
            TS.addFiles(pathRE)
            TS.addFiles(pathLS)
            self.assertEqual(len(TS.Sensors), 2)
    
            dsRE = gdal.Open(pathRE)
            assert isinstance(dsRE, gdal.Dataset)
    
            tsdRE = TS.tsdFromPath(pathRE)
            self.assertIsInstance(tsdRE, TimeSeriesDatum)
            sRE = tsdRE.sensor
            self.assertIsInstance(sRE, SensorInstrument)
            self.assertEqual(dsRE.RasterCount, sRE.nb)
    
        def test_datematching(self):
            pass
    
    
    
    if __name__ == '__main__':
        unittest.main()