@@ -0,0 +1,68 @@
|
||||
package mediacontentser
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestMediaContentInfoMarshalH265URL(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
h265URL string
|
||||
want string
|
||||
}{
|
||||
{
|
||||
name: "resource exists",
|
||||
h265URL: "https://cdn.example.com/h265/index.m3u8",
|
||||
want: "https://cdn.example.com/h265/index.m3u8",
|
||||
},
|
||||
{
|
||||
name: "resource missing",
|
||||
want: "",
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
data, err := json.Marshal(MediaContentInfo{
|
||||
VideoUrl: "https://cdn.example.com/h264/index.m3u8",
|
||||
H265Url: tt.h265URL,
|
||||
})
|
||||
if err != nil {
|
||||
t.Fatalf("marshal media content info: %v", err)
|
||||
}
|
||||
|
||||
var response map[string]interface{}
|
||||
if err := json.Unmarshal(data, &response); err != nil {
|
||||
t.Fatalf("unmarshal response: %v", err)
|
||||
}
|
||||
if response["videoUrl"] != "https://cdn.example.com/h264/index.m3u8" {
|
||||
t.Fatalf("unexpected H.264 URL: %v", response["videoUrl"])
|
||||
}
|
||||
if response["h265Url"] != tt.want {
|
||||
t.Fatalf("unexpected H.265 URL: %v", response["h265Url"])
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestAppMediaContentMarshalH265URL(t *testing.T) {
|
||||
data, err := json.Marshal(AppMediaContent{
|
||||
VideoUrl: "https://cdn.example.com/h264/index.m3u8",
|
||||
H265Url: "https://cdn.example.com/h265/index.m3u8",
|
||||
})
|
||||
if err != nil {
|
||||
t.Fatalf("marshal app media content: %v", err)
|
||||
}
|
||||
|
||||
var response map[string]interface{}
|
||||
if err := json.Unmarshal(data, &response); err != nil {
|
||||
t.Fatalf("unmarshal app media content: %v", err)
|
||||
}
|
||||
if response["videoUrl"] != "https://cdn.example.com/h264/index.m3u8" {
|
||||
t.Fatalf("unexpected H.264 URL: %v", response["videoUrl"])
|
||||
}
|
||||
if response["h265Url"] != "https://cdn.example.com/h265/index.m3u8" {
|
||||
t.Fatalf("unexpected H.265 URL: %v", response["h265Url"])
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user