| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- package read
- import (
- "testing"
- "github.com/stretchr/testify/assert"
- )
- func TestReadMultipleFiles(t *testing.T) {
- files := make(chan string, 1)
- go func() {
- files <- testFile
- close(files)
- }()
- outputChan := ReadMultipleFiles(files)
- var results []*Song
- outputDone := false
- for !outputDone {
- select {
- case result, more := <- outputChan:
- if more {
- results = append(results, result)
- }
- outputDone = !more
- }
- }
- assert.Len(t, results, 1)
- assert.Equal(t, *results[0], Song{
- title: testTitle,
- artist: testArtist,
- album: testAlbum,
- length: testLengthSeconds,
- })
- }
- func TestScanDirectory(t *testing.T) {
- files := ScanDirectory(".")
- var results []string
- done := false
- for !done {
- select {
- case result, more := <- files:
- if more {
- results = append(results, result)
- }
- done = !more
- }
- }
- assert.Equal(t, results, []string{testFile})
- }
|