AtlatestRepositorysigil-youtube
sigil-youtube / tree / testupload-test.sgl
1
;;; Tests for (youtube upload) — upload module2
;;;3
;;; Tests record construction, chunk size constants, and upload4
;;; helper logic. Cannot test actual HTTP upload without mocking.6
(import (sigil core)7
(sigil dict)8
(sigil string)9
(sigil struct)10
(sigil test)11
(youtube)12
(youtube upload))14
;; ---------------------------------------------------------------15
;; Constants tests16
;; ---------------------------------------------------------------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 uploads28
;; ---------------------------------------------------------------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)