Source code for publicdata.census.test.files.test_appurls

# Copyright (c) 2017 Civic Knowledge. This file is licensed under the terms of the
# MIT License, included in this distribution as LICENSE

""" App Urls and generators for  accessing  static files from census.gov"""

import unittest

from publicdata.census.test import TestCase

[docs]class TestAppUrls(TestCase):
[docs] def test_basic(self): from publicdata.census import CensusFileUrl, CensusReporterUrl u = CensusFileUrl('census://CA/140/B17001') print(u.proto) self.assertEqual('census://CA/140/B17001',str(u)) self.assertEqual('B17001', u.tableid) self.assertEqual('140', u.summary_level) self.assertEqual('04000US06', u.geoid)
[docs] def test_kwargs(self): from publicdata.census import CensusFileUrl, CensusReporterUrl url = CensusFileUrl(table='B17001', summarylevel='140', geoid='04000US06') self.assertEqual('B17001', url.tableid) self.assertEqual('140', url.summary_level) self.assertEqual('04000US06', url.geoid) url = CensusReporterUrl(table='B17001', summarylevel='140', geoid='04000US06') self.assertEqual('B17001', url.tableid) self.assertEqual('140', url.summary_level) self.assertEqual('04000US06', url.geoid)
[docs] def test_geo_basic(self): from rowgenerators import parse_app_url for url_s in ['census://CA/140', 'census://04000US06/140', 'census://6/140', 'census://CA/tract', 'census://04000US06/tract', 'census://6/tract', 'censusgeo://CA/140', 'censusgeo://04000US06/140', 'censusgeo://6/140', 'censusgeo://CA/tract', 'censusgeo://04000US06/tract', 'censusgeo://6/tract' ]: u = parse_app_url(url_s) # This maybe should specify the year. self.assertEqual(138, round(u.geoframe().head().area.sum()*100000, 0))
[docs] def test_national_geo(self): from rowgenerators import geoframe gf = geoframe('censusgeo://US/cbsa') print(len(gf))
if __name__ == '__main__': unittest.main()