This establishes relation between album and song. Signed-off-by: Yonah <contrib@gensokyo.uk>
32 lines
685 B
Go
32 lines
685 B
Go
package monstersirenfetch_test
|
|
|
|
import (
|
|
"encoding/json"
|
|
"testing"
|
|
|
|
. "git.gensokyo.uk/yonah/monstersirenfetch"
|
|
)
|
|
|
|
func TestFlatten(t *testing.T) {
|
|
t.Run("sample", func(t *testing.T) {
|
|
var (
|
|
albumsResp AlbumsResponse
|
|
songsResp SongsResponse
|
|
)
|
|
|
|
if err := json.Unmarshal(albumsJSON, &albumsResp); err != nil {
|
|
t.Fatalf("Unmarshal: error = %v", err)
|
|
}
|
|
if err := json.Unmarshal(songsJSON, &songsResp); err != nil {
|
|
t.Fatalf("Unmarshal: error = %v", err)
|
|
}
|
|
|
|
if m, err := Flatten(albumsResp.Data, songsResp.Data); err != nil {
|
|
t.Fatalf("Flatten: error = %v", err)
|
|
} else {
|
|
// TODO(ophestra): validate this result
|
|
t.Logf("Flatten: %#v", m)
|
|
}
|
|
})
|
|
}
|