You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
1.7 KiB
79 lines
1.7 KiB
3 years ago
|
package v1
|
||
3 years ago
|
|
||
|
import (
|
||
|
"os"
|
||
3 years ago
|
"path/filepath"
|
||
3 years ago
|
"testing"
|
||
|
)
|
||
|
|
||
3 years ago
|
var TESTDATAPATH string = filepath.Join("..", "testData")
|
||
|
|
||
3 years ago
|
var TESTv1TAGS = &ID3v1Tags{
|
||
|
SongName: "testsong",
|
||
|
Artist: "testartist",
|
||
|
Album: "testalbum",
|
||
|
Year: 727,
|
||
|
Comment: "testcomment",
|
||
|
Genre: "Blues",
|
||
|
}
|
||
|
|
||
3 years ago
|
func TestGetID3v1Tags(t *testing.T) {
|
||
3 years ago
|
testfile, err := os.OpenFile(filepath.Join(TESTDATAPATH, "testreadv1.mp3"), os.O_CREATE|os.O_RDONLY, os.ModePerm)
|
||
3 years ago
|
if err != nil {
|
||
|
t.Errorf("could not open file for testing: %s", err)
|
||
|
}
|
||
|
tags, err := GetID3v1Tags(testfile)
|
||
|
if err != nil {
|
||
|
t.Errorf("GetID3v1Tags failed: %s", err)
|
||
|
}
|
||
|
|
||
3 years ago
|
if tags.Comment != "Comment here " {
|
||
|
t.Errorf("GetID3v1Tags failed: expected %s; got %s", "Comment here ", tags.Comment)
|
||
3 years ago
|
}
|
||
|
}
|
||
3 years ago
|
|
||
|
func TestWriteID3v1Tags(t *testing.T) {
|
||
3 years ago
|
f, err := os.OpenFile(filepath.Join(TESTDATAPATH, "testwritev1.mp3"), os.O_CREATE|os.O_RDWR, os.ModePerm)
|
||
3 years ago
|
if err != nil {
|
||
|
t.Errorf("%s", err)
|
||
|
}
|
||
|
defer f.Close()
|
||
|
|
||
3 years ago
|
tags := TESTv1TAGS
|
||
3 years ago
|
|
||
3 years ago
|
// writing tags
|
||
3 years ago
|
err = tags.Write(f)
|
||
3 years ago
|
if err != nil {
|
||
|
t.Errorf("WriteID3v1Tags failed: %s", err)
|
||
|
}
|
||
|
|
||
3 years ago
|
// reading tags
|
||
3 years ago
|
readTags, err := GetID3v1Tags(f)
|
||
|
if err != nil {
|
||
|
t.Errorf("%s", err)
|
||
|
}
|
||
|
|
||
|
if readTags.Album != "testalbum" {
|
||
|
t.Errorf("WriteID3v1Tags failed: expected %s; got %s", "testalbum", readTags.Album)
|
||
|
}
|
||
|
|
||
|
if readTags.Year != 727 {
|
||
|
t.Errorf("WriteID3v1Tags failed: expected %d; got %d", 727, readTags.Year)
|
||
|
}
|
||
|
}
|
||
3 years ago
|
|
||
|
func TestWriteID3v1ToFile(t *testing.T) {
|
||
3 years ago
|
f, err := os.OpenFile(filepath.Join(TESTDATAPATH, "testwritev1.mp3"), os.O_CREATE|os.O_RDWR, os.ModePerm)
|
||
3 years ago
|
if err != nil {
|
||
|
t.Errorf("%s", err)
|
||
|
}
|
||
|
|
||
|
tags := TESTv1TAGS
|
||
|
|
||
3 years ago
|
err = tags.WriteToFile(f)
|
||
3 years ago
|
if err != nil {
|
||
|
t.Errorf("WriteID3v1ToFile failed: %s", err)
|
||
|
}
|
||
|
|
||
|
}
|