예제 #1
0
class CatalogueTestCase(unittest.TestCase):
    def setUp(self):
        self.eqcat = EqCatalogue(IFACE)

    def _import_data(self, catfile, pattern):
        db_name = str(uuid.uuid1())
        db = self.eqcat.create_db(catfile, pattern, db_name)
        try:
            self.eqcat.update_catalogue_db(db_name)
        finally:
            db.close()
            os.remove(db_name)

    def test_IASPEI(self):
        # no features with the default selections
        self._import_data(IASPEI, ImporterDialog.IASPEI_PATTERN)
        feature_count = self._filter_button(
            'Events-2008:2008-5.0:8.0-mb,MS-IASPEI')
        self.assertEqual(feature_count, 0)

        # 58 features with magnitude in the range [1, 8]
        self.eqcat.dock.mag_range.setLowValue(1)
        self.eqcat.dock.mag_range.setHighValue(8)
        feature_count = self._filter_button(
            'Events-2008:2008-1.0:8.0-mb,MS-IASPEI')
        self.assertEqual(feature_count,58)

    def test_ISF(self):
        self._import_data(ISF, ImporterDialog.ISF_PATTERN)
        feature_count = self._filter_button(
            'Events-2010:2010-5.0:8.0-M,mb,mB,Mb,mb1,mb1mx,mbtmp,MD,ME,ML,MLv,'
            'Ms,MS,Ms1,ms1mx,Ms7,Muk,Mw,MW-BJI,BKK,DJA,GCMT,GUC,IDC,IGQ,ISC,'
            'ISCJB,JMA,MAN,MOS,NEIC,NIED,SJA,SZGRF')
        self.assertEqual(feature_count, 173)

    def test_load_countries(self):
        self.eqcat.load_countries()
        layerName = 'Population density'
        layer = QgsMapLayerRegistry.instance().mapLayersByName(
            layerName)[-1]
        self.assertEqual(layerName, str(layer.name()))

    def _filter_button(self, layername):
        btn = self.eqcat.dock.filterBtn
        QtTest.QTest.mouseClick(btn, QtCore.Qt.LeftButton)
        events = QgsMapLayerRegistry.instance().mapLayersByName(
            layername)
        assert events, 'Could not find layer named %s' % layername
        return events[0].featureCount()
예제 #2
0
 def setUp(self):
     self.eqcat = EqCatalogue(IFACE)