fix(uploads): serve private previews through API and show batch cover status
ci / mobile / mobile (Metro-бандл Android) (push) Successful in 1m30s
ci / ts / ts (packages + web) (push) Canceled after 4m13s
ci / module boundaries / boundaries (push) Successful in 8s
ci / api / api (push) Successful in 56s
ci / contract / contract (сгенерированный код совпадает с openapi.yaml) (push) Successful in 1m1s
ci / db / db (push) Successful in 1m7s
ci / mobile / mobile (Metro-бандл Android) (push) Successful in 1m30s
ci / ts / ts (packages + web) (push) Canceled after 4m13s
ci / module boundaries / boundaries (push) Successful in 8s
ci / api / api (push) Successful in 56s
ci / contract / contract (сгенерированный код совпадает с openapi.yaml) (push) Successful in 1m1s
ci / db / db (push) Successful in 1m7s
This commit is contained in:
1 parent
37e33c656b
commit
7d62531c02
15 files changed
+533
-410
No files matched your search
@@ -17,7 +17,7 @@ import (
|
||||
"pipu/api/internal/platform/sign"
|
||||
)
|
||||
|
||||
func TestUploadStreamRangeAndAccel(t *testing.T) {
|
||||
func TestPrivateUploadStreamIsServedByAPIWithRange(t *testing.T) {
|
||||
file := filepath.Join(t.TempDir(), "audio")
|
||||
require.NoError(t, os.WriteFile(file, []byte("fLaC0123456789"), 0600))
|
||||
req := httptest.NewRequest(http.MethodGet, "/audio", nil)
|
||||
@@ -28,18 +28,20 @@ func TestUploadStreamRangeAndAccel(t *testing.T) {
|
||||
require.Equal(t, "audio/flac", rec.Header().Get("Content-Type"))
|
||||
require.Equal(t, "bytes 4-7/14", rec.Header().Get("Content-Range"))
|
||||
require.Equal(t, "0123", rec.Body.String())
|
||||
require.Empty(t, rec.Header().Get("X-Accel-Redirect"))
|
||||
|
||||
rec = httptest.NewRecorder()
|
||||
require.NoError(t, (uploadStream{format: "flac", xAccel: true, accel: "/_internal/uploads/batch/file"}).VisitStreamUploadResponse(rec))
|
||||
require.NoError(t, (uploadStream{req: httptest.NewRequest(http.MethodGet, "/audio", nil), file: file, format: "flac"}).VisitStreamUploadResponse(rec))
|
||||
require.Equal(t, http.StatusOK, rec.Code)
|
||||
require.Equal(t, "/_internal/uploads/batch/file", rec.Header().Get("X-Accel-Redirect"))
|
||||
require.Empty(t, rec.Header().Get("X-Accel-Redirect"))
|
||||
require.Equal(t, "fLaC0123456789", rec.Body.String())
|
||||
require.Equal(t, "audio/flac", rec.Header().Get("Content-Type"))
|
||||
}
|
||||
|
||||
func TestUploadStreamRejectsInvalidAndExpiredLinksBeforeReadingStaging(t *testing.T) {
|
||||
signer, err := sign.New("")
|
||||
require.NoError(t, err)
|
||||
h := NewHandler(nil, signer, false)
|
||||
h := NewHandler(nil, signer)
|
||||
id := uuid.New()
|
||||
for _, expired := range []bool{false, true} {
|
||||
exp := time.Now().Add(time.Hour).Unix()
|
||||
|
||||
Reference in new issue
Block a user