2019-01-21 15:22:17 +03:00
|
|
|
/*
|
|
|
|
NAME
|
|
|
|
flac_test.go
|
|
|
|
|
|
|
|
DESCRIPTION
|
|
|
|
flac_test.go provides utilities to test FLAC audio decoding
|
|
|
|
|
|
|
|
AUTHOR
|
|
|
|
Saxon Nelson-Milton <saxon@ausocean.org>
|
|
|
|
|
|
|
|
LICENSE
|
|
|
|
flac_test.go is Copyright (C) 2017-2019 the Australian Ocean Lab (AusOcean)
|
|
|
|
|
|
|
|
It is free software: you can redistribute it and/or modify them
|
|
|
|
under the terms of the GNU General Public License as published by the
|
|
|
|
Free Software Foundation, either version 3 of the License, or (at your
|
|
|
|
option) any later version.
|
|
|
|
|
|
|
|
It is distributed in the hope that it will be useful, but WITHOUT
|
|
|
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
|
|
for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
|
|
along with revid in gpl.txt. If not, see http://www.gnu.org/licenses.
|
|
|
|
*/
|
2019-01-21 08:11:49 +03:00
|
|
|
package flac
|
|
|
|
|
|
|
|
import (
|
|
|
|
"io/ioutil"
|
|
|
|
"os"
|
|
|
|
"testing"
|
|
|
|
)
|
|
|
|
|
|
|
|
const (
|
|
|
|
testFile = "/home/saxon/Desktop/robot.flac"
|
2019-01-21 10:04:15 +03:00
|
|
|
outFile = "testOut.wav"
|
2019-01-21 08:11:49 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestDecodeFlac(t *testing.T) {
|
|
|
|
b, err := ioutil.ReadFile(testFile)
|
|
|
|
if err != nil {
|
|
|
|
t.Fatalf("Could not read test file, failed with err: %v", err.Error())
|
|
|
|
}
|
|
|
|
out, err := Decode(b)
|
|
|
|
if err != nil {
|
|
|
|
t.Errorf("Could not decode, failed with err: %v", err.Error())
|
|
|
|
}
|
|
|
|
f, err := os.Create(outFile)
|
|
|
|
if err != nil {
|
|
|
|
t.Fatalf("Could not create output file, failed with err: %v", err.Error())
|
|
|
|
}
|
|
|
|
_, err = f.Write(out)
|
|
|
|
if err != nil {
|
|
|
|
t.Fatalf("Could not write to output file, failed with err: %v", err.Error())
|
|
|
|
}
|
|
|
|
}
|