Beispiel #1
0
 def testGetDataWithLevelOneAndLevelTwoConstraints(self):
     req = DAL.newDataRequest(self.datatype)
     levelOneConstraint = RequestConstraint.new('>=', 2000.0)
     req.addIdentifier('info.level.levelonevalue', levelOneConstraint)
     levelTwoConstraint = RequestConstraint.new('in', (4000.0, 5000.0))
     req.addIdentifier('info.level.leveltwovalue', levelTwoConstraint)
     req.addIdentifier('info.datasetId', self.model)
     req.addIdentifier('info.level.masterLevel.name', 'FHAG')
     req.setParameters('T')
     gridData = self.runGridDataTest(req)
     for record in gridData:
         self.assertGreaterEqual(record.getAttribute('info.level.levelonevalue'), 2000.0)
         self.assertIn(record.getAttribute('info.level.leveltwovalue'), (4000.0, 5000.0))
Beispiel #2
0
 def testGetDataWithLevelOneAndLevelTwoConstraints(self):
     req = DAL.newDataRequest(self.datatype)
     levelOneConstraint = RequestConstraint.new('>=', 2000.0)
     req.addIdentifier('info.level.levelonevalue', levelOneConstraint)
     levelTwoConstraint = RequestConstraint.new('in', (4000.0, 5000.0))
     req.addIdentifier('info.level.leveltwovalue', levelTwoConstraint)
     req.addIdentifier('info.datasetId', self.model)
     req.addIdentifier('info.level.masterLevel.name', 'FHAG')
     req.setParameters('T')
     gridData = self.runGridDataTest(req)
     for record in gridData:
         self.assertGreaterEqual(record.getAttribute('info.level.levelonevalue'), 2000.0)
         self.assertIn(record.getAttribute('info.level.leveltwovalue'), (4000.0, 5000.0))
Beispiel #3
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.setParameters('dataURI')
     req.setLocationNames(params.OBS_STATION, 'KORD', 'KOFK', 'KLNK')
     req.addIdentifier(key, constraint)
     return self.runGeometryDataTest(req)
Beispiel #4
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'cli_asos_monthly')
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('station_code', 'avg_daily_max')
     return self.runGeometryDataTest(req)
Beispiel #5
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.setParameters("temperature", "reportType")
     req.setLocationNames("KOMA")
     req.addIdentifier(key, constraint)
     return self.runGeometryDataTest(req)
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters("Imager 11 micron IR")
     req.setLocationNames("West CONUS")
     return self.runGridDataTest(req)
 def testGetGeometryDataWithLocNamesAndGroupsThrowException(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier(self.siteIdKey, params.SITE_ID)
     req.setLocationNames(*self.editAreaNames)
     req.addIdentifier(self.groupKey, RequestConstraint.new('in', self.groups))
     with self.assertRaises(ThriftRequestException):
         self.runGeometryDataTest(req)
Beispiel #8
0
 def runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters(*self.parameterList)
     # Don't test shapes since they may differ.
     return self.runGridDataTest(req, testSameShape=False)
 def runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters(*self.parameterList)
     # Don't test shapes since they may differ.
     return self.runGridDataTest(req, testSameShape=False)
Beispiel #10
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setLocationNames(params.SITE_ID)
     req.setParameters('T')
     return self.runGridDataTest(req)
Beispiel #11
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'cli_asos_monthly')
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('station_code', 'avg_daily_max')
     return self.runGeometryDataTest(req)
Beispiel #12
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setLocationNames('OAX')
     req.setParameters('T')
     return self.runGridDataTest(req)
Beispiel #13
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.setParameters("temperature", "reportType")
     req.setLocationNames(params.OBS_STATION)
     req.addIdentifier(key, constraint)
     return self.runGeometryDataTest(req)
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.setParameters('dataURI')
     req.setLocationNames(params.OBS_STATION, 'KORD', 'KOFK', 'KLNK')
     req.addIdentifier(key, constraint)
     return self.runGeometryDataTest(req)
Beispiel #15
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     # As an identifier it is "reportType" but as a parameter it is
     # "rptType"... this is weird...
     req.setParameters("staName", "rptType")
     return self.runGeometryDataTest(req)
Beispiel #16
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     # As an identifier it is "reportType" but as a parameter it is
     # "rptType"... this is weird...
     req.setParameters("staName", "rptType")
     return self.runGeometryDataTest(req)
Beispiel #17
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.addIdentifier('table', 'height')
     req.addIdentifier('ts', 'RG')
     req.setParameters('value', 'lid', 'quality_code')
     return self.runGeometryDataTest(req)
Beispiel #18
0
 def testGetGeometryDataWithLocNamesAndGroupsThrowException(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier(self.siteIdKey, params.SITE_ID)
     req.setLocationNames(*self.editAreaNames)
     req.addIdentifier(self.groupKey,
                       RequestConstraint.new('in', self.groups))
     with self.assertRaises(ThriftRequestException):
         self.runGeometryDataTest(req)
Beispiel #19
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.addIdentifier('table', 'height')
     req.addIdentifier('ts', 'RG')
     req.setParameters('value', 'lid', 'quality_code')
     return self.runGeometryDataTest(req)
Beispiel #20
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.addIdentifier('wfo', params.SITE_ID)
     req.addIdentifier('huc', 'ALL')
     req.setParameters('QPFSCAN')
     return self.runGeometryDataTest(req, checkDataTimes=False)
 def testGetGeometryDataWithGroups(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier(self.siteIdKey, params.SITE_ID)
     req.addIdentifier(self.groupKey, RequestConstraint.new('in', self.groups))
     data = self.runGeometryDataTest(req)
     for item in data:
         self.assertEqual(params.SITE_ID, item.getAttribute(self.siteIdKey))
         self.assertIn(item.getAttribute(self.groupKey), self.groups)
Beispiel #22
0
 def testGetGeometryDataWithGroups(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier(self.siteIdKey, params.SITE_ID)
     req.addIdentifier(self.groupKey,
                       RequestConstraint.new('in', self.groups))
     data = self.runGeometryDataTest(req)
     for item in data:
         self.assertEqual(params.SITE_ID, item.getAttribute(self.siteIdKey))
         self.assertIn(item.getAttribute(self.groupKey), self.groups)
Beispiel #23
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.addIdentifier('info.datasetId', self.model)
     req.addIdentifier('info.level.masterLevel.name', 'FHAG')
     req.addIdentifier('info.level.leveltwovalue', 3000.0)
     req.setParameters('T')
     return self.runGridDataTest(req)
Beispiel #24
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'mapdata.ffmp_basins')
     req.addIdentifier('geomField', 'the_geom')
     req.addIdentifier('cwa', 'OAX')
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('state', 'reservoir', 'area_sq_mi')
     return self.runGeometryDataTest(req, checkDataTimes=False)
 def runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('166')
     # TODO: Cannot check datatimes on the result because the times returned
     # by getAvailableTimes have level = -1.0, while the time on the actual
     # data has the correct level set (>= 0.0).
     return self.runGeometryDataTest(req, checkDataTimes=False)
 def runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('166')
     # TODO: Cannot check datatimes on the result because the times returned
     # by getAvailableTimes have level = -1.0, while the time on the actual
     # data has the correct level set (>= 0.0).
     return self.runGeometryDataTest(req, checkDataTimes=False)
Beispiel #27
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.addIdentifier('info.datasetId', self.model)
     req.addIdentifier('info.level.masterLevel.name', 'FHAG')
     req.addIdentifier('info.level.leveltwovalue', 3000.0)
     req.setParameters('T')
     return self.runGridDataTest(req)
Beispiel #28
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'mapdata.ffmp_basins')
     req.addIdentifier('geomField', 'the_geom')
     req.addIdentifier('cwa', 'OAX')
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('state', 'reservoir', 'area_sq_mi')
     return self.runGeometryDataTest(req, checkDataTimes=False)
Beispiel #29
0
    def testGetDataWithSiteKeyAndDataKeyConstraints(self):
        siteKeys = [self.location, 'hpe']
        dataKeys = ['kuex', 'kdmx']

        req = DAL.newDataRequest(self.datatype)
        req.addIdentifier('wfo', params.SITE_ID)
        req.addIdentifier('huc', 'ALL')

        siteKeysConstraint = RequestConstraint.new('in', siteKeys)
        req.addIdentifier('siteKey', siteKeysConstraint)
        dataKeysConstraint = RequestConstraint.new('in', dataKeys)
        req.addIdentifier('dataKey', dataKeysConstraint)

        req.setParameters('QPFSCAN')
        geometryData = self.runGeometryDataTest(req, checkDataTimes=False)
        for record in geometryData:
            self.assertIn(record.getAttribute('siteKey'), siteKeys)
            # dataKey attr. is comma-separated list of dataKeys that had data
            for dataKey in record.getAttribute('dataKey').split(','):
                self.assertIn(dataKey, dataKeys)
Beispiel #30
0
 def testGetDataWithComplexConstraintAndNamespaceThrowsException(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('namespace', 'grib')
     masterLevelConstraint = RequestConstraint.new('<=', 'K')
     req.addIdentifier('info.level.masterLevel.name', masterLevelConstraint)
     req.addIdentifier('info.datasetId', 'GFS160')
     req.setParameters('T')
     with self.assertRaises(ThriftRequestException) as cm:
         self.runGridDataTest(req)
     self.assertIn('IncompatibleRequestException', str(cm.exception))
     self.assertIn('info.level.masterLevel.name', str(cm.exception))
Beispiel #31
0
 def testGetDataWithComplexConstraintAndNamespaceThrowsException(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('namespace', 'grib')
     masterLevelConstraint = RequestConstraint.new('<=', 'K')
     req.addIdentifier('info.level.masterLevel.name', masterLevelConstraint)
     req.addIdentifier('info.datasetId', 'GFS160')
     req.setParameters('T')
     with self.assertRaises(ThriftRequestException) as cm:
         self.runGridDataTest(req)
     self.assertIn('IncompatibleRequestException', str(cm.exception))
     self.assertIn('info.level.masterLevel.name', str(cm.exception))
Beispiel #32
0
 def testGetDataWithMasterLevelNameLessThanEqualsConstraint(self):
     req = DAL.newDataRequest(self.datatype)
     masterLevelConstraint = RequestConstraint.new('<=', 'K')
     req.addIdentifier('info.level.masterLevel.name', masterLevelConstraint)
     req.addIdentifier('info.level.levelonevalue', 2000.0)
     req.addIdentifier('info.level.leveltwovalue', 3000.0)
     req.addIdentifier('info.datasetId', 'GFS160')
     req.setParameters('T')
     gridData = self.runGridDataTest(req)
     for record in gridData:
         self.assertLessEqual(record.getAttribute('info.level.masterLevel.name'), 'K')
Beispiel #33
0
 def testGetDataWithMasterLevelNameLessThanEqualsConstraint(self):
     req = DAL.newDataRequest(self.datatype)
     masterLevelConstraint = RequestConstraint.new('<=', 'K')
     req.addIdentifier('info.level.masterLevel.name', masterLevelConstraint)
     req.addIdentifier('info.level.levelonevalue', 2000.0)
     req.addIdentifier('info.level.leveltwovalue', 3000.0)
     req.addIdentifier('info.datasetId', 'GFS160')
     req.setParameters('T')
     gridData = self.runGridDataTest(req)
     for record in gridData:
         self.assertLessEqual(record.getAttribute('info.level.masterLevel.name'), 'K')
Beispiel #34
0
 def testGetDataWithDatasetIdInConstraint(self):
     req = DAL.newDataRequest(self.datatype)
     # gfs160 is alias for GFS160 in this namespace
     req.addIdentifier('namespace', 'gfeParamInfo')
     datasetIdConstraint = RequestConstraint.new('in', ('gfs160', 'HRRR'))
     req.addIdentifier('info.datasetId', datasetIdConstraint)
     req.addIdentifier('info.level.masterLevel.name', 'FHAG')
     req.addIdentifier('info.level.levelonevalue', 2000.0)
     req.addIdentifier('info.level.leveltwovalue', 3000.0)
     req.setParameters('T')
     gridData = self.runGridDataTest(req, testSameShape=False)
     for record in gridData:
         self.assertIn(record.getAttribute('info.datasetId'), ('gfs160', 'HRRR'))
Beispiel #35
0
 def testGetDataWithDatasetIdInConstraint(self):
     req = DAL.newDataRequest(self.datatype)
     # gfs160 is alias for GFS160 in this namespace
     req.addIdentifier('namespace', 'gfeParamInfo')
     datasetIdConstraint = RequestConstraint.new('in', ('gfs160', 'HRRR'))
     req.addIdentifier('info.datasetId', datasetIdConstraint)
     req.addIdentifier('info.level.masterLevel.name', 'FHAG')
     req.addIdentifier('info.level.levelonevalue', 2000.0)
     req.addIdentifier('info.level.leveltwovalue', 3000.0)
     req.setParameters('T')
     gridData = self.runGridDataTest(req, testSameShape=False)
     for record in gridData:
         self.assertIn(record.getAttribute('info.datasetId'), ('gfs160', 'HRRR'))
Beispiel #36
0
 def testGetAvailableTimesWithConstraint(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'public.cli_asos_monthly')
     req.addIdentifier('maxtemp_mon', RequestConstraint.new('<', 75))
     req.setParameters('maxtemp_mon', 'min_sea_press')
     self.runTimesTest(req)
Beispiel #37
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setLocationNames(*self.editAreaNames)
     return self.runGeometryDataTest(req)
Beispiel #38
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters("etn", "wmoid", "sig")
     return self.runGeometryDataTest(req)
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setLocationNames(*self.editAreaNames)
     return self.runGeometryDataTest(req)
Beispiel #40
0
 def testGetAvailableTimesWithConstraint(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'public.cli_asos_monthly')
     req.addIdentifier('maxtemp_mon', RequestConstraint.new('<', 75))
     req.setParameters('maxtemp_mon', 'min_sea_press')
     self.runTimesTest(req)
Beispiel #41
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters("etn", "wmoid", "sig")
     return self.runGeometryDataTest(req)
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('elevmeter', 'eqp_elv', 'wfo_id', 'immutablex')
     return self.runGeometryDataTest(req)
Beispiel #43
0
 def testGetAvailableLocationsWithConstraint(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'height')
     req.addIdentifier('value', RequestConstraint.new('>', 5.0))
     self.runLocationsTest(req)
Beispiel #44
0
 def testGetAvailableLocationsWithConstraints(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'public.cli_asos_monthly')
     req.addIdentifier('maxtemp_mon', RequestConstraint.new('>', 95))
     self.runLocationsTest(req)
Beispiel #45
0
 def testGetAvailableLocationsWithConstraints(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'public.cli_asos_monthly')
     req.addIdentifier('maxtemp_mon', RequestConstraint.new('>', 95))
     self.runLocationsTest(req)
 def _newRequestConstraint(self, constraintType, constraintValue):
     constraint = RequestConstraint()
     constraint.constraintType = constraintType
     constraint.constraintValue = constraintValue
     return constraint
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('intensity')
     return self.runGeometryDataTest(req, checkDataTimes=False)
Beispiel #48
0
 def testGetAvailableLocationsWithConstraint(self):
     req = DAL.newDataRequest(self.datatype)
     req.addIdentifier('table', 'height')
     req.addIdentifier('value', RequestConstraint.new('>', 5.0))
     self.runLocationsTest(req)
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('catalogtype', 'elevation', 'state')
     return self.runGeometryDataTest(req)
Beispiel #50
0
 def _newRequestConstraint(self, constraintType, constraintValue):
     constraint = RequestConstraint()
     constraint.constraintType = constraintType
     constraint.constraintValue = constraintValue
     return constraint
Beispiel #51
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.setParameters("flightLevel", "reportType")
     req.addIdentifier(key, constraint)
     return self.runGeometryDataTest(req)
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('elevmeter', 'eqp_elv', 'wfo_id', 'immutablex')
     return self.runGeometryDataTest(req, checkDataTimes=False)
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.addIdentifier(key, constraint)
     req.setParameters('intensity')
     return self.runGeometryDataTest(req, checkDataTimes=False)
Beispiel #54
0
 def _runConstraintTest(self, key, operator, value):
     req = DAL.newDataRequest(self.datatype)
     constraint = RequestConstraint.new(operator, value)
     req.setParameters("flightLevel", "reportType")
     req.addIdentifier(key, constraint)
     return self.runGeometryDataTest(req)