package main import ( "github.com/layeh/gumble/gumble" "os" "testing" ) func createClient(uname string) *gumble.Client { return gumble.NewClient(&gumble.Config{ Username: uname, Password: os.Getenv("MUMBLE_PASSWORD"), Address: os.Getenv("MUMBLE_IP") + ":" + os.Getenv("MUMBLE_PORT")}) } func TestYoutubeSong(t *testing.T) { dummyClient := createClient("dummy") dummyClient.Connect() dummyUser := dj.client.Users.Find("dummy") // Don't judge, I used the (autogenerated) Top Tracks for United Kingdom playlist songs := map[string]string{ "http://www.youtube.com/watch?v=QcIy9NiNbmo": "Taylor Swift - Bad Blood ft. Kendrick Lamar", "https://www.youtube.com/watch?v=vjW8wmF5VWc": "Silentó - Watch Me (Whip/Nae Nae) (Official)", "http://youtu.be/nsDwItoNlLc": "Tinie Tempah ft. Jess Glynne - Not Letting Go (Official Video)", "https://youtu.be/hXTAn4ELEwM": "Years & Years - Shine", "http://youtube.com/watch?v=RgKAFK5djSk": "Wiz Khalifa - See You Again ft. Charlie Puth [Official Video] Furious 7 Soundtrack", "https://youtube.com/watch?v=qWWSM3wCiKY": "Calvin Harris & Disciples - How Deep Is Your Love (Audio)", "http://www.youtube.com/v/yzTuBuRdAyA": "The Weeknd - The Hills", "https://www.youtube.com/v/cNw8A5pwbVI": "Pia Mia - Do It Again ft. Chris Brown, Tyga", } for url, title := range songs { err := add(dummyUser, url) if err != nil { t.Error( "For", url, "expected", title, "got", err, ) } else if dj.queue.CurrentSong().Title() != title { t.Error( "For", url, "expected", title, "got", dj.queue.CurrentSong().Title(), ) } skip(dummyUser, false, false) } dummyClient.Disconnect() }