1package directories 2 3import ( 4 "testing" 5 6 "github.com/Azure/go-autorest/autorest/azure" 7) 8 9func TestGetResourceID(t *testing.T) { 10 testData := []struct { 11 Environment azure.Environment 12 Expected string 13 }{ 14 { 15 Environment: azure.ChinaCloud, 16 Expected: "https://account1.file.core.chinacloudapi.cn/share1/directory1", 17 }, 18 { 19 Environment: azure.GermanCloud, 20 Expected: "https://account1.file.core.cloudapi.de/share1/directory1", 21 }, 22 { 23 Environment: azure.PublicCloud, 24 Expected: "https://account1.file.core.windows.net/share1/directory1", 25 }, 26 { 27 Environment: azure.USGovernmentCloud, 28 Expected: "https://account1.file.core.usgovcloudapi.net/share1/directory1", 29 }, 30 } 31 for _, v := range testData { 32 t.Logf("[DEBUG] Testing Environment %q", v.Environment.Name) 33 c := NewWithEnvironment(v.Environment) 34 actual := c.GetResourceID("account1", "share1", "directory1") 35 if actual != v.Expected { 36 t.Fatalf("Expected the Resource ID to be %q but got %q", v.Expected, actual) 37 } 38 } 39} 40 41func TestParseResourceID(t *testing.T) { 42 testData := []struct { 43 Environment azure.Environment 44 Input string 45 }{ 46 { 47 Environment: azure.ChinaCloud, 48 Input: "https://account1.file.core.chinacloudapi.cn/share1/directory1", 49 }, 50 { 51 Environment: azure.GermanCloud, 52 Input: "https://account1.file.core.cloudapi.de/share1/directory1", 53 }, 54 { 55 Environment: azure.PublicCloud, 56 Input: "https://account1.file.core.windows.net/share1/directory1", 57 }, 58 { 59 Environment: azure.USGovernmentCloud, 60 Input: "https://account1.file.core.usgovcloudapi.net/share1/directory1", 61 }, 62 } 63 for _, v := range testData { 64 t.Logf("[DEBUG] Testing Environment %q", v.Environment.Name) 65 actual, err := ParseResourceID(v.Input) 66 if err != nil { 67 t.Fatal(err) 68 } 69 70 if actual.AccountName != "account1" { 71 t.Fatalf("Expected Account Name to be `account1` but got %q", actual.AccountName) 72 } 73 if actual.ShareName != "share1" { 74 t.Fatalf("Expected Share Name to be `share1` but got %q", actual.ShareName) 75 } 76 if actual.DirectoryName != "directory1" { 77 t.Fatalf("Expected Directory Name to be `directory1` but got %q", actual.DirectoryName) 78 } 79 } 80} 81