Esempio n. 1
0
 def _get_metadata_from_key(cls, key):
     metadata = key.get_metadata('datalake')
     if not metadata:
         msg = 'No datalake metadata for s3://{}{}'
         msg = msg.format(key.bucket.name, key.name)
         raise InvalidDatalakeMetadata(msg)
     return Metadata.from_json(metadata)
Esempio n. 2
0
 def _get_metadata(cls, url):
     parsed_url = urlparse(url)
     bucket = cls._get_bucket(parsed_url.netloc)
     key = bucket.get_key(parsed_url.path)
     if key is None:
         msg = '{} does not appear to be in the datalake'
         msg = msg.format(url)
         raise NoSuchDatalakeFile(msg)
     metadata = key.get_metadata('datalake')
     if not metadata:
         raise InvalidDatalakeMetadata('No datalake metadata for ' + url)
     return Metadata.from_json(metadata)
Esempio n. 3
0
 def _get_metadata(cls, url):
     parsed_url = urlparse(url)
     bucket = cls._get_bucket(parsed_url.netloc)
     key = bucket.get_key(parsed_url.path)
     if key is None:
         msg = '{} does not appear to be in the datalake'
         msg = msg.format(url)
         raise NoSuchDatalakeFile(msg)
     metadata = key.get_metadata('datalake')
     if not metadata:
         raise InvalidDatalakeMetadata('No datalake metadata for ' + url)
     return Metadata.from_json(metadata)
def test_from_none_json():
    with pytest.raises(InvalidDatalakeMetadata):
        Metadata.from_json(None)
def test_from_invalid_json():
    with pytest.raises(InvalidDatalakeMetadata):
        Metadata.from_json('{flee floo')
def test_from_to_json(basic_metadata):
    m1 = Metadata.from_json(basic_json)
    m2 = m1.json
    assert sorted(m2) == sorted(basic_json)
Esempio n. 7
0
 def _get_metadata_from_key(self, key):
     m = key.get_metadata(METADATA_NAME)
     return Metadata.from_json(m)