graphics: Add tests to colorm_test.go

This commit is contained in:
Hajime Hoshi 2016-11-27 23:22:50 +09:00
parent b6a8b5f5c9
commit cd48e79355

View File

@ -95,6 +95,47 @@ func TestColorTranslate(t *testing.T) {
}
}
func TestColorScale(t *testing.T) {
expected := [4][5]float64{
{0.5, 0, 0, 0, 0},
{0, 1.5, 0, 0, 0},
{0, 0, 2.5, 0, 0},
{0, 0, 0, 3.5, 0},
}
m := ColorM{}
m.Scale(0.5, 1.5, 2.5, 3.5)
for i := 0; i < 4; i++ {
for j := 0; j < 5; j++ {
got := m.Element(i, j)
want := expected[i][j]
if want != got {
t.Errorf("m.Element(%d, %d) = %f, want %f", i, j, got, want)
}
}
}
}
func TestColorTranslateAndScale(t *testing.T) {
expected := [4][5]float64{
{1, 0, 0, 0, 0},
{0, 1, 0, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 0, 0.5, 1},
}
m := ColorM{}
m.Translate(0, 0, 0, 1)
m.Scale(1, 1, 1, 0.5)
for i := 0; i < 4; i++ {
for j := 0; j < 5; j++ {
got := m.Element(i, j)
want := expected[i][j]
if want != got {
t.Errorf("m.Element(%d, %d) = %f, want %f", i, j, got, want)
}
}
}
}
func TestColorMonochrome(t *testing.T) {
expected := [4][5]float64{
{0.2990, 0.5870, 0.1140, 0, 0},