示例#1
0
    def get(self, serviceName):
        params_with_errs = PointListResourceParser.parseGetParameters()

        # Generating error string for 'bc_from' and 'bc_to' parameters if error
        # appeared
        if len(params_with_errs[POINT_LIST_PARSER_ERRS_KEY]) > 0:
            err_str = ""
            for i in params_with_errs[POINT_LIST_PARSER_ERRS_KEY]:
                err_str += '[' + i + '] '
            # GET request will return 'standard' error for bad parameters
            return {BC_DATES_FLAGS_ERR_KEY: err_str +
                    BC_DATES_FLAGS_ERR_VAL}, 400

        params = params_with_errs
        result = findPoints(
            serviceName,
            params[CHANNEL_IDS],
            params[NUMBER],
            params[GEOMETRY],
            params[ALTITUDE_FROM],
            params[ALTITUDE_TO],
            params[SUBSTRING],
            dateDeserialiser(
                params,
                DATE_FROM),
            dateDeserialiser(
                params,
                DATE_TO),
            params[OFFSET],
            params[RADIUS])
        return result
示例#2
0
 def post(self, serviceName):
     try:
         poinList = PointListResourceParser.parsePostParameters()
     except ValueError:
         return {}, 400
     result = addPoints(serviceName, poinList)
     return result
示例#3
0
 def get(self, serviceName=None):
     try:
         args = PointListResourceParser.parseGetParameters()
         args[SERVICE_NAME] = serviceName
         get_param = args
         return make_response(render_template('map.html', params=get_param))
     except Exception:
         get_param = getDefaultMapParams(serviceName)
         return make_response(render_template('map.html', params=get_param))
示例#4
0
    def testParserPointListGetResource(self):
        with app.test_request_context(
                '/instance/service/testservice/point/?' + CORRECT_ARGS):
            args = PointListResourceParser.parseGetParameters()
            self.assertEquals(args[OFFSET], OFFSET_VALUE)
            self.assertEquals(args[NUMBER], NUMBER_VALUE)
            loadedDatetime_from = json.loads(
                args[DATE_FROM], object_hook=dateDeserialiser(
                    args, args[DATE_FROM]))
            self.assertEquals(loadedDatetime_from, DATE_FROM_VALUE)
            loadedDatetime_to = json.loads(
                args[DATE_TO], object_hook=dateDeserialiser(
                    args, args[DATE_TO]))
            self.assertEquals(loadedDatetime_to, DATE_TO_VALUE)
            geometryValue = geo_json_type.GeoJsonType(
                unicode(args.get(GEOMETRY)))
            self.assertEquals(GEOMETRY_VALUE_JSON, geometryValue)

        with app.test_request_context(
                '/instance/service/testservice/point/?' + INCORRECT_ARGS):
            with self.assertRaises(BadRequest):
                args = PointListResourceParser.parseGetParameters()
示例#5
0
 def post(self, serviceName):
     pointList = PointListResourceParser.parsePostParameters()
     result = addPoints(serviceName, pointList)
     return result
示例#6
0
 def testExtendPointListParserWithFlagsBC_DATES_BC_FROM_BC_TO(self):
     with app.test_request_context('/?' + DATE_AND_BC_FLAGS_QS):
         res = PointListResourceParser.parseGetParameters()
         self.assertEqual(res[BC_TO], True)
         self.assertEqual(res[BC_FROM], True)
         self.assertEqual(len(res[BC_DATES_FLAG_CHECK_ERR_KEY]), 0)
示例#7
0
 def testExtendPointListParserWithFlagsBC_DATES_NO_BC(self):
     with app.test_request_context('/?' + NO_BC_ERR_DATA_QS):
         res = PointListResourceParser.parseGetParameters()
         self.assertEqual(res[BC_TO], None)
         self.assertEqual(res[BC_FROM], None)
         self.assertEqual(len(res[BC_DATES_FLAG_CHECK_ERR_KEY]), 2)