package opml import ( "fmt" "reflect" "testing" ) func TestOPML(t *testing.T) { have := (&Folder{ Title: "", Feeds: []*Feed{ &Feed{ Title: "title1", FeedUrl: "https://baz.com/feed.xml", SiteUrl: "https://baz.com/", }, }, Folders: []*Folder{ &Folder{ Title: "sub", Feeds: []*Feed{ &Feed{ Title: "subtitle1", FeedUrl: "https://foo.com/feed.xml", SiteUrl: "https://foo.com/", }, &Feed{ Title: "&>", FeedUrl: "https://bar.com/feed.xml", SiteUrl: "https://bar.com/", }, }, Folders: []*Folder{}, }, }, }).OPML() want := ` subscriptions ` fmt.Println(have) if !reflect.DeepEqual(want, have) { t.Logf("want: %s", want) t.Logf("have: %s", have) t.Fatal("invalid opml") } }