graphics: Add tests for ColorM

This commit is contained in:
Hajime Hoshi 2016-10-30 23:57:23 +09:00
parent 7bf41ba8d9
commit 9998534a51

View File

@ -34,6 +34,20 @@ func TestColorInit(t *testing.T) {
} }
} }
m.SetElement(0, 0, 1)
for i := 0; i < ColorMDim-1; i++ {
for j := 0; j < ColorMDim; j++ {
got := m.Element(i, j)
want := 0.0
if i == j {
want = 1
}
if want != got {
t.Errorf("m.Element(%d, %d) = %f, want %f", i, j, got, want)
}
}
}
m.Add(m) m.Add(m)
for i := 0; i < ColorMDim-1; i++ { for i := 0; i < ColorMDim-1; i++ {
for j := 0; j < ColorMDim; j++ { for j := 0; j < ColorMDim; j++ {
@ -60,3 +74,42 @@ func TestColorAssign(t *testing.T) {
t.Errorf("m2.Element(%d, %d) = %f, want %f", 0, 0, got, want) t.Errorf("m2.Element(%d, %d) = %f, want %f", 0, 0, got, want)
} }
} }
func TestColorTranslate(t *testing.T) {
expected := [4][5]float64{
{1, 0, 0, 0, 0.5},
{0, 1, 0, 0, 1.5},
{0, 0, 1, 0, 2.5},
{0, 0, 0, 1, 3.5},
}
m := ColorM{}
m.Translate(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 TestColorMonochrome(t *testing.T) {
expected := [4][5]float64{
{0.2990, 0.5870, 0.1140, 0, 0},
{0.2990, 0.5870, 0.1140, 0, 0},
{0.2990, 0.5870, 0.1140, 0, 0},
{0, 0, 0, 1, 0},
}
m := Monochrome()
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)
}
}
}
}