fix: move checksum to HTTP opts, fix mismatch retry, scope get_download_speed to aggregate-only

This commit is contained in:
ashish6298 committed 2026-09-25 12:15:50 +05:30
1 parent 929e2d2d7c
commit b5e8d61f01
16 files changed
+501 -655

No files matched your search

-32
View File
@@ -435,35 +435,3 @@ func TestDownloaderStoreConfig_Merge(t *testing.T) {
})
}
}
func TestOptions_Checksum(t *testing.T) {
opts := &Options{
Name: "test.zip",
Path: "/downloads",
Checksum: &ChecksumOption{
Algorithm: "sha256",
Expected: "abcdef1234567890",
},
}
cloned := opts.Clone()
if cloned.Checksum == nil {
t.Fatal("expected cloned options to have non-nil Checksum")
}
if cloned.Checksum.Algorithm != "sha256" || cloned.Checksum.Expected != "abcdef1234567890" {
t.Fatalf("cloned checksum mismatch: got %+v", cloned.Checksum)
}
// Verify deep clone isolation
cloned.Checksum.Expected = "modified"
if opts.Checksum.Expected != "abcdef1234567890" {
t.Fatal("modifying cloned checksum affected original options")
}
// Verify nil checksum options clone
optsNil := &Options{Name: "nil_check.zip"}
clonedNil := optsNil.Clone()
if clonedNil.Checksum != nil {
t.Fatal("expected nil checksum in cloned options")
}
}