-
Notifications
You must be signed in to change notification settings - Fork 2
/
dash_test.go
68 lines (64 loc) · 1.54 KB
/
dash_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package main
import (
"fmt"
"os"
"strings"
"testing"
)
func Test_decode(t *testing.T) {
dashDir := "./DashFiles/"
fs, _ := os.ReadDir(dashDir)
for _, f := range fs {
if strings.HasSuffix(f.Name(), ".mpd") {
mpd, _ := os.Open(dashDir + f.Name())
list := decode(mpd)
fmt.Println(list)
}
}
}
// func Test_scrapeReddit(t *testing.T) {
// Url, _ := url.Parse("https://www.reddit.com/domain/v.redd.it/")
// j, _ := fetchJson(Url)
// var result interface{}
// json.Unmarshal(j, &result)
// m := result.(map[string]interface{})
// var stack []string
// var walk func(value reflect.Value)
// walk = func(v reflect.Value) {
// if v.String() == "dash_url" {
// fmt.Printf("Visiting %v\n", v)
// }
// for v.Kind() == reflect.Ptr || v.Kind() == reflect.Interface {
// v = v.Elem()
// }
// switch v.Kind() {
// case reflect.Array, reflect.Slice:
// for i := 0; i < v.Len(); i++ {
// walk(v.Index(i))
// }
// case reflect.Map:
// for _, k := range v.MapKeys() {
// //if k.String() == "dash_url" {
// if k.String() == "url_overridden_by_dest" {
// stack = append(stack, fmt.Sprintf("%v", v.MapIndex(k)))
// return
// }
// if k.String() != "secure_media" {
// walk(v.MapIndex(k))
// }
// }
// }
// }
// walk(reflect.ValueOf(m))
// ch := make(chan struct{})
// for _, u := range stack {
// go func(mpd string) {
// resp, _ := fetch(mpd)
// fmt.Println(mpd, decode(resp.Body))
// ch <- struct{}{}
// }(u + "/DASHPlaylist.mpd")
// }
// for range stack {
// <-ch
// }
// }