package util import ( "fmt" "testing" ) func TestNoteFreq(t *testing.T) { type TestCase struct { In int Out float64 } testCases := []TestCase{ {108, 4186.01}, {81, 880}, {69, 440}, {58, 233.08}, {57, 220}, {56, 207.65}, {55, 196}, {36, 65.41}, } for _, tc := range testCases { out := NoteFreq(tc.In) if fmt.Sprintf("%.2f", out) != fmt.Sprintf("%.2f", tc.Out) { t.Fatalf("%v != %v", out, tc.Out) } } }