def test_extremes(self): lat, lon = (-90.0, -181.0) self.assertEqual(bbox(lat, lon, 0.0), (constants.MIN_LAT, constants.MIN_LAT, constants.MIN_LON, constants.MIN_LON)) lat, lon = (90.0, 181.0) self.assertEqual(bbox(lat, lon, 0.0), (constants.MAX_LAT, constants.MAX_LAT, constants.MAX_LON, constants.MAX_LON))
def test_extremes(self): lat, lon = (-90.0, -181.0) assert (bbox(lat, lon, 0.0) == (constants.MIN_LAT, constants.MIN_LAT, constants.MIN_LON, constants.MIN_LON)) lat, lon = (90.0, 181.0) assert (bbox(lat, lon, 0.0) == (constants.MAX_LAT, constants.MAX_LAT, constants.MAX_LON, constants.MAX_LON))
def make_import_dict(validate, import_spec, row): data = {} # parse radio field radio = row[0].lower() if radio == 'cdma': # pragma: no cover return None if radio == 'umts': radio = 'wcdma' try: data['radio'] = Radio[radio] except KeyError: # pragma: no cover return None for field, pos, default, _type in import_spec: value = row[pos] if value is None or value == '': data[field] = default else: data[field] = _type(value) data['created'] = datetime.utcfromtimestamp(data['created']) data['modified'] = datetime.utcfromtimestamp(data['modified']) data['max_lat'], data['min_lat'], \ data['max_lon'], data['min_lon'] = geocalc.bbox( data['lat'], data['lon'], data['radius']) validated = validate(data) if validated is None: return None for field in ('region', 'cellid', 'radio', 'mcc', 'mnc', 'lac', 'cid'): if validated[field] is None: return None return validated
def test_null(self): lat, lon = (1.0, 1.0) lat1, lon1, lat2, lon2 = bbox(lat, lon, 0.0) assert round(lat1, 7) == lat assert round(lon1, 7) == lon assert round(lat2, 7) == lat assert round(lon2, 7) == lon
def where_area(lat, lon, radius): # Construct a where clause based on a bounding box around the given # center point. if lat is None or lon is None or radius is None: return None max_lat, min_lat, max_lon, min_lon = bbox(lat, lon, radius) return '`lat` <= %s and `lat` >= %s and `lon` <= %s and `lon` >= %s' % ( round(max_lat, 5), round(min_lat, 5), round(max_lon, 5), round(min_lon, 5))
def make_import_dict(validate, import_spec, row): data = {} # parse radio field radio = row[0].lower() if radio == 'cdma': # pragma: no cover return None if radio == 'umts': radio = 'wcdma' try: data['radio'] = Radio[radio] except KeyError: # pragma: no cover return None for field, pos, default, _type in import_spec: value = row[pos] if value is None or value == '': data[field] = default else: data[field] = _type(value) data['created'] = datetime.utcfromtimestamp(data['created']) data['modified'] = datetime.utcfromtimestamp(data['modified']) if (data['radius'] is not None and data['lat'] is not None and data['lon'] is not None): data['max_lat'], data['min_lat'], \ data['max_lon'], data['min_lon'] = geocalc.bbox( data['lat'], data['lon'], data['radius']) validated = validate(data) if validated is None: return None for field in ('region', 'cellid', 'radio', 'mcc', 'mnc', 'lac', 'cid'): if validated[field] is None: return None return validated
def test_null(self): lat, lon = (1.0, 1.0) self.assertEqual(bbox(lat, lon, 0.0), (lat, lat, lon, lon))