AtlatestRepositorysigil-youtube

sigil-youtube / tree / testupload-test.sgl

1;;; Tests for (youtube upload) — upload module
2;;;
3;;; Tests record construction, chunk size constants, and upload
4;;; helper logic. Cannot test actual HTTP upload without mocking.
5
6(import (sigil core)
7 (sigil dict)
8 (sigil string)
9 (sigil struct)
10 (sigil test)
11 (youtube)
12 (youtube upload))
14;; ---------------------------------------------------------------
15;; Constants tests
16;; ---------------------------------------------------------------
18(test-group "upload constants"
20 (test "chunk size is multiple of 256KB"
21 (assert-equal 0 (modulo youtube-chunk-size (* 256 1024))))
23 (test "chunk size is 8MB"
24 (assert-equal (* 8 1024 1024) youtube-chunk-size)))
26;; ---------------------------------------------------------------
27;; Client construction for uploads
28;; ---------------------------------------------------------------
30(test-group "upload client"
32 (test "client has upload URL"
33 (let ((c (youtube-client access-token: "test-token")))
34 (assert-equal "https://www.googleapis.com/upload/youtube/v3"
35 (youtube-client-upload-url c))))
37 (test "custom upload URL"
38 (let ((c (youtube-client access-token: "tok"
39 upload-url: "http://localhost:9090/upload")))
40 (assert-equal "http://localhost:9090/upload"
41 (youtube-client-upload-url c)))))
43(run-tests)