github.com/qiniu/go-sdk/v7@v7.27.0/qvs/namespace_test.go (about) 1 //go:build integration 2 // +build integration 3 4 package qvs 5 6 import ( 7 "testing" 8 ) 9 10 func TestNamespaceCRUD(t *testing.T) { 11 if skipTest() { 12 t.SkipNow() 13 } 14 c := getTestManager() 15 16 nsName := "testNamespace" 17 nsAccessType := "rtmp" 18 nsRTMPURLType := 1 19 domain := []string{"qiniu1.com"} 20 zone := "z0" 21 hlslowlatency := false 22 ns := &NameSpace{ 23 Name: nsName, 24 AccessType: nsAccessType, 25 RTMPURLType: nsRTMPURLType, 26 Domains: domain, 27 Zone: zone, 28 HLSLowLatency: hlslowlatency, 29 } 30 ns1, err := c.AddNamespace(ns) 31 noError(t, err) 32 33 ns2, err := c.QueryNamespace(ns1.ID) 34 noError(t, err) 35 shouldBeEqual(t, nsName, ns2.Name) 36 shouldBeEqual(t, nsAccessType, ns2.AccessType) 37 shouldBeEqual(t, nsRTMPURLType, ns2.RTMPURLType) 38 shouldBeEqual(t, domain[0], ns2.Domains[0]) 39 shouldBeEqual(t, hlslowlatency, ns2.HLSLowLatency) 40 41 nsName2 := "testNamespace2" 42 nsAccessType2 := "gb28181" 43 urlMode := 1 44 domain2 := []string{"qiniuUM.com"} 45 zone2 := "z0" 46 hlslowlatency2 := false 47 nsUM := &NameSpace{ 48 Name: nsName2, 49 AccessType: nsAccessType2, 50 UrlMode: urlMode, 51 Domains: domain2, 52 Zone: zone2, 53 HLSLowLatency: hlslowlatency2, 54 } 55 nsUMPost, err := c.AddNamespace(nsUM) 56 noError(t, err) 57 58 nsUMQuery, err := c.QueryNamespace(nsUMPost.ID) 59 noError(t, err) 60 shouldBeEqual(t, nsName2, nsUMQuery.Name) 61 shouldBeEqual(t, nsAccessType2, nsUMQuery.AccessType) 62 shouldBeEqual(t, urlMode, nsUMQuery.UrlMode) 63 shouldBeEqual(t, domain2[0], nsUMQuery.Domains[0]) 64 shouldBeEqual(t, hlslowlatency2, nsUMQuery.HLSLowLatency) 65 66 c.DeleteNamespace(nsUMPost.ID) 67 68 ops := []PatchOperation{ 69 { 70 Op: "replace", 71 Key: "name", 72 Value: "testNamespace2", 73 }, 74 { 75 Op: "replace", 76 Key: "hlsLowLatency", 77 Value: true, 78 }, 79 } 80 ns3, err := c.UpdateNamespace(ns1.ID, ops) 81 noError(t, err) 82 shouldBeEqual(t, "testNamespace2", ns3.Name) 83 shouldBeEqual(t, nsAccessType, ns3.AccessType) 84 shouldBeEqual(t, nsRTMPURLType, ns3.RTMPURLType) 85 shouldBeEqual(t, domain[0], ns3.Domains[0]) 86 shouldBeEqual(t, true, ns3.HLSLowLatency) 87 88 ns4 := &NameSpace{ 89 Name: "testNamespace3", 90 AccessType: "rtmp", 91 RTMPURLType: 1, 92 Domains: []string{"qiniu2.com"}, 93 } 94 ns5, err := c.AddNamespace(ns4) 95 noError(t, err) 96 97 ns6 := &NameSpace{ 98 Name: "testNamespace4", 99 AccessType: "gb28181", 100 RTMPURLType: 2, 101 } 102 ns7, err := c.AddNamespace(ns6) 103 noError(t, err) 104 105 nss, _, err := c.ListNamespace(0, 2, "") 106 noError(t, err) 107 shouldBeEqual(t, 2, len(nss)) 108 109 nss, _, err = c.ListNamespace(1, 2, "") 110 noError(t, err) 111 shouldBeEqual(t, 2, len(nss)) 112 113 err = c.DisableNamespace(ns1.ID) 114 noError(t, err) 115 ret, err := c.QueryNamespace(ns1.ID) 116 noError(t, err) 117 shouldBeEqual(t, true, ret.Disabled) 118 119 err = c.EnableNamespace(ns1.ID) 120 noError(t, err) 121 ret, err = c.QueryNamespace(ns1.ID) 122 noError(t, err) 123 shouldBeEqual(t, false, ret.Disabled) 124 125 c.DeleteNamespace(ns1.ID) 126 c.DeleteNamespace(ns5.ID) 127 c.DeleteNamespace(ns7.ID) 128 } 129 130 func TestDomainCRUD(t *testing.T) { 131 if skipTest() { 132 t.SkipNow() 133 } 134 c := getTestManager() 135 136 nsName := "testNamespace" 137 nsAccessType := "rtmp" 138 nsRTMPURLType := 1 139 domain := []string{"qiniu1.com"} 140 ns := &NameSpace{ 141 Name: nsName, 142 AccessType: nsAccessType, 143 RTMPURLType: nsRTMPURLType, 144 Domains: domain, 145 } 146 ns1, err := c.AddNamespace(ns) 147 noError(t, err) 148 149 err = c.AddDomain(ns1.ID, &DomainInfo{Domain: "qiniu2.com", Type: "publishRtmp"}) 150 noError(t, err) 151 152 err = c.DeleteDomain(ns1.ID, "qiniu2.com") 153 noError(t, err) 154 155 err = c.AddDomain(ns1.ID, &DomainInfo{Domain: "qiniu2.com", Type: "publishRtmp"}) 156 noError(t, err) 157 158 err = c.AddDomain(ns1.ID, &DomainInfo{Domain: "qiniu3.com", Type: "publishRtmp"}) 159 noError(t, err) 160 161 err = c.AddDomain(ns1.ID, &DomainInfo{Domain: "qiniu4.com", Type: "publishRtmp"}) 162 noError(t, err) 163 164 domains, err := c.ListDomain(ns1.ID) 165 noError(t, err) 166 shouldBeEqual(t, 7, len(domains)) 167 c.DeleteNamespace(ns1.ID) 168 }