def test_ctor(self): rdr = location.LocationReader() assert rdr assert not rdr.basedir assert rdr.deffmt == 'txt' assert rdr.parsers assert 'json' in rdr.parsers and 'txt' in rdr.parsers rdr = location.LocationReader('/usr/local/etc') assert rdr assert rdr.basedir == '/usr/local/etc' assert rdr.deffmt == 'txt' rdr = location.LocationReader(basedir='/usr/local/etc') assert rdr assert rdr.basedir == '/usr/local/etc' assert rdr.deffmt == 'txt' parsers = dict(rdr.parsers) parsers['text'] = parsers['txt'] rdr = location.LocationReader(None, parsers) assert rdr assert not rdr.basedir assert rdr.parsers assert 'json' in rdr.parsers and 'txt' in rdr.parsers \ and 'text' in rdr.parsers assert ('txt' in rdr.parsers) is ('text' in rdr.parsers) rdr = location.LocationReader(parsers=parsers) assert rdr assert not rdr.basedir assert rdr.parsers assert 'json' in rdr.parsers and 'txt' in rdr.parsers \ and 'text' in rdr.parsers assert ('txt' in rdr.parsers) is ('text' in rdr.parsers)
def test_read_bad_format(self): rdr = location.LocationReader() with pytest.raises(RuntimeError) as excinfo: data = rdr.read(txtfile, 'yaml') assert "Don't know how to parse location file of type 'yaml'" == \ str(excinfo.value)
def test_read_no_deffmt(self): rdr = location.LocationReader() rdr.deffmt = None with pytest.raises(RuntimeError) as excinfo: data = rdr.read(deffile) assert "No default parser set to apply to " in str(excinfo.value)
def test_read(self): rdr = location.LocationReader() data = rdr.read(txtfile) assert data assert len(data) == 2 assert data.get( "uri:nist.gov/goober") == "http://www.ivoa.net/xml/goober" assert data.get("http://mgi.nist.gov/goof") == \ os.path.join(datadir,"goof.xml") data = rdr.read(jsonfile) assert data assert len(data) == 2 assert data.get( "uri:nist.gov/goober") == "http://www.ivoa.net/xml/goober" assert data.get("http://mgi.nist.gov/goof") == \ os.path.join(datadir,"goof.xml") data = rdr.read(deffile) assert data assert len(data) == 2 assert data.get( "uri:nist.gov/goober") == "http://www.ivoa.net/xml/goober" assert data.get("http://mgi.nist.gov/goof") == \ os.path.join(datadir,"goof.xml")
def test_read_json(self): rdr = location.LocationReader() data = rdr.read(jsonfile, fmt='json', basedir="") assert data assert len(data) == 2 assert data.get( "uri:nist.gov/goober") == "http://www.ivoa.net/xml/goober" assert data.get("http://mgi.nist.gov/goof") == "goof.xml" data = rdr.read(jsonfile, fmt='json', basedir="/etc") assert data assert len(data) == 2 assert data.get( "uri:nist.gov/goober") == "http://www.ivoa.net/xml/goober" assert data.get("http://mgi.nist.gov/goof") == "/etc/goof.xml" data = rdr.read(jsonfile, fmt='json') assert data assert len(data) == 2 assert data.get( "uri:nist.gov/goober") == "http://www.ivoa.net/xml/goober" assert data.get("http://mgi.nist.gov/goof") == \ os.path.join(datadir,"goof.xml")