def test_browse_subsubfolder(self): """ Test that the S3 Select response is parsed into the correct sub-sub-folder view. """ prefix = "bar/baz/" df = pd.read_json(buffer_s3response(self.s3response), lines=True) assert isinstance(df, pd.DataFrame) filtered_df = df[df['logical_key'].str.startswith(prefix)] stripped = filtered_df['logical_key'].str.slice(start=len(prefix)) stripped_df = stripped.to_frame('logical_key') s3_df = pd.concat([ stripped_df['logical_key'], filtered_df['size'], filtered_df['physical_key'] ], axis=1, keys=['logical_key', 'size', 'physical_key']) folder = file_list_to_folder(s3_df, 1000, 0) assert "objects" in folder assert "prefixes" in folder assert not folder['prefixes'] assert len(folder['objects']) == 2 object_keys = [obj['logical_key'] for obj in folder['objects']] assert "file3.txt" in object_keys assert "file4.txt" in object_keys
def test_offset(self): """ Test that the S3 Select response is parsed into the correct top-level folder view. """ df = pd.read_json(buffer_s3response(self.s3response), lines=True) assert isinstance(df, pd.DataFrame) folder = pkgselect.file_list_to_folder(df, 1000, 1) assert len(folder['prefixes']) == 0 assert len(folder['objects']) == 1 assert folder['objects'][0]['logical_key'] == 'foo.csv'