Project

Profile

Help

Test #4197

closed

Test upload of large artifacts

Added by kersom over 3 years ago. Updated almost 2 years ago.

Status:
CLOSED - WONTFIX
Priority:
Normal
Assignee:
Category:
-
Sprint/Milestone:
-
Version:
Platform Release:
Tags:
Sprint:
Quarter:

Description

  • Evaluate add new pulp-fixtures to fit this case needs.
  • Create files with sizes bigger than 1MB.
  • Upload file to Pulp.
  • Assert not exception was raised.

Related issues

Related to Pulp - Story #4196: As a user, I can upload files in chunks.CLOSED - CURRENTRELEASEdaviddavis

Actions
Related to Pulp - Issue #4896: [Ruby client] Chunked Uploads API doesn't recognize file parameterCLOSED - CURRENTRELEASEdkliban@redhat.comActions
Actions #1

Updated by kersom over 3 years ago

  • Related to Story #4196: As a user, I can upload files in chunks. added
Actions #2

Updated by kersom over 3 years ago

Fixture was update to generated files with 10M.

See: https://github.com/PulpQE/pulp-fixtures/issues/112

Actions #3

Updated by daviddavis over 3 years ago

Here is my recommended test plan.

Test out https://pulp.plan.io/issues/4196. See the docs at https://docs.pulpproject.org/en/3.0/nightly/workflows/upload-publish.html for how to perform chunked uploads.

Test Case 1

Follow the steps in the docs to upload a file and create an artifact. Assert that an artifact is successfully created. You could also create a content unit from it (e.g. FileContent).

Test Case 2

1. Create an upload (POST /api/v3/uploads/)
2. Try to import this upload into artifacts (POST :8000/pulp/api/v3/artifacts/ upload=/pulp/api/v3/uploads/a8b5a7f7-2f22-460d-ab20-d5616cb71cdd/)

This should fail (400 error) because the upload is not committed.

Test Case 3

1. Create an upload (POST /api/v3/uploads/)
2. Upload your file in chunks
3. Commit your upload but specify a bad sha256

The commit action should fail.

Test Case 4

1. Create an upload of a particular size (eg 1024 bytes)
2. Try to upload a chunk that it out of range (eg offset is 1025 bytes or the chunk size + offset > 1024)

Test Case 5

Attempt to create an artifact by supplying BOTH file and upload parameters. It should fail (400 error).

Also, optionally supply neither file nor upload parameters. This should also fail (400 error).

Test Case 6

Perform test case 1. Then try to create an artifact again by POSTing to /api/v3/artifacts/ again. It should fail (400 error) as the upload gets removed after it's imported.

Test Case 7

Create an upload. Delete the upload (DELETE /api/v3/uploads/abc123../). Confirm that the upload is deleted. Optionally, try to create an artifact from the upload which should fail.

Test Case 8

Create an upload. Filter by incomplete uploads to verify the upload is there (GET /api/v3/uploads/?completed__isnull=True). Commit the upload and then filter by GET /api/v3/uploads/?completed__isnull=True to verify the upload is no longer listed.

Actions #4

Updated by bmbouter about 3 years ago

  • Tags deleted (Pulp 3)
Actions #5

Updated by kersom about 3 years ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to kersom
Actions #6

Updated by kersom about 3 years ago

  • Related to Issue #4896: [Ruby client] Chunked Uploads API doesn't recognize file parameter added
Actions #7

Updated by kersom about 3 years ago

  • Status changed from ASSIGNED to NEW
  • Assignee deleted (kersom)
Actions #8

Updated by kersom almost 3 years ago

  • Assignee set to kersom

Added by kersom almost 3 years ago

Revision c4db2b70

Add test to create artifact using chunk uplpoad

Add test to create artifact using chunk upload.

https://pulp.plan.io/issues/4197 ref: #4197

Actions #9

Updated by daviddavis almost 2 years ago

  • Status changed from NEW to CLOSED - WONTFIX

Also available in: Atom PDF