Blobstore
E2E Test Scenarios


Confluence Page with EndPoints

Public API

Internal API

POSITIVE TESTS

UPLOADs

Upload Documents (PDF, PNG, GIF, DOC)

NEGATIVE TESTS

UPLOADS

Upload a file by adding fake metadata on the Date.
Ideas for Naughty Strings:


  • non-US date/time formats (e.g. 2017.01.16)
  • Illegal dates/times (e.g. 2017-01-32 26:00)
  • Leap Day on non-leap year (e.g. 2017-02-29)
  • Timezones/illegal timezones

Upload Zipped files

CONFIGURATION

CLONING A BLOB

RETRIEVE BLOBS

Given a Tenant and the blob UUID this should be cloned as expected

Given a UUID and Tenant try to retrieve a Blob

RETRIEVE BLOBS

Given a correct UUID and a wrong tenant try to retrieve

Given both wrong Tenant and UUID try to retrieve

DELETE A BLOB

click to edit

DELETE

Given a list of UUID's try to delete them all (Batch)

Retreive Metadata [URL generation]

Given a Tenant retrieve all metadata's blobs

Given a list of UUIDs on Body

Given an authorizedUser ID on body

Given a validFor in seconds on body

Retrieve blob's urls

Given one blob UUID on body

Given a list of UUIDs on body


Returned array respects the UUIDs order, if [UUID1, UUID2] then returned hash will be [url1, url2]

Download


GET /blobstore/blob/blob_uuid?private=privacy&expires=expiration&mac=mac&docName=name

Given a valid docName for a file that doesn't contain metadata

Given a valid docName for a file that already contains
metadata

Given a wrong UUID

Given a privacy to true

Given the expiration

Given a valid MAC

Given an invalid MAC

Download blob format


GET /blobstore/blob/blob_uuid/format/format_name?useDefault=true&private=privacy&expires=expiration&mac=mac&docName=name

Given a valid Format Name

Given a wrong Format Name and setting useDefault to TRUE

Given a wrong MAC

Given a valid docName for a file that doesn't contain metadata

MIME-types whitelist/blacklist checking

Given an UUID and Tenant delete it

Upload a file by adding fake metadata on the name.
Ideas for Naughty Strings Here

Given a non existing UUID try to delete it

CLONING A BLOB

From a user that belongs to tenant X try to upload a file specifying tenant Y

GIVEN an encrypted file try to upload it

Given a Tenant and a NULL UUID try to retrieve

Given a Wrong Tenant and the blob UUID this should be cloned as expected

BOUNDARY TESTS