aboutsummaryrefslogtreecommitdiffstats
path: root/Godeps/_workspace/src/github.com/gizak/termui/block_test.go
blob: 2de205b21f8f874cdce7249029ac646c112bca23 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package termui

import "testing"

func TestBlock_InnerBounds(t *testing.T) {
    b := NewBlock()
    b.X = 10
    b.Y = 11
    b.Width = 12
    b.Height = 13

    assert := func(name string, x, y, w, h int) {
        t.Log(name)
        cx, cy, cw, ch := b.InnerBounds()
        if cx != x {
            t.Errorf("expected x to be %d but got %d", x, cx)
        }
        if cy != y {
            t.Errorf("expected y to be %d but got %d", y, cy)
        }
        if cw != w {
            t.Errorf("expected width to be %d but got %d", w, cw)
        }
        if ch != h {
            t.Errorf("expected height to be %d but got %d", h, ch)
        }
    }

    b.HasBorder = false
    assert("no border, no padding", 10, 11, 12, 13)

    b.HasBorder = true
    assert("border, no padding", 11, 12, 10, 11)

    b.PaddingBottom = 2
    assert("border, 2b padding", 11, 12, 10, 9)

    b.PaddingTop = 3
    assert("border, 2b 3t padding", 11, 15, 10, 6)

    b.PaddingLeft = 4
    assert("border, 2b 3t 4l padding", 15, 15, 6, 6)

    b.PaddingRight = 5
    assert("border, 2b 3t 4l 5r padding", 15, 15, 1, 6)
}