Selaa lähdekoodia

Добавление кода, тестов размера; 100%

SVI 3 vuotta sitten
vanhempi
commit
c8c8de9f1d

+ 39 - 0
libtui/v0/size/size.go

@@ -1,6 +1,45 @@
 // package size -- размеры объекта
 package size
 
+import (
+	"p78git.ddns.net/svi/libtui/alias"
+	"p78git.ddns.net/svi/libtui/size/sizex"
+	"p78git.ddns.net/svi/libtui/size/sizey"
+	"p78git.ddns.net/svi/libtui/types"
+)
+
 // Size -- размеры объекта
 type Size struct {
+	sizeX *sizex.SizeX
+	sizeY *sizey.SizeY
+}
+
+// Возвращает новый размер
+func NewSize() *Size {
+	sf := &Size{
+		sizeX: sizex.NewSizeX(),
+		sizeY: sizey.NewSizeY(),
+	}
+	return sf
+}
+
+// Get -- возвращает фактический размер
+func (sf *Size) Get() (alias.SizeX, alias.SizeY) {
+	return sf.sizeX.Get(), sf.sizeY.Get()
+}
+
+// Set -- устанавливает размеры объекта
+func (sf *Size) Set(x alias.SizeX, y alias.SizeY) {
+	sf.sizeX.Set(x)
+	sf.sizeY.Set(y)
+}
+
+// X -- возвращает объект размера по X
+func (sf *Size) X() types.ISizeX {
+	return sf.sizeX
+}
+
+// Y -- возвращает объект размера по Y
+func (sf *Size) Y() types.ISizeY {
+	return sf.sizeY
 }

+ 74 - 0
libtui/v0/size/size_test.go

@@ -0,0 +1,74 @@
+package size
+
+import (
+	"testing"
+
+	"p78git.ddns.net/svi/libtui/types"
+)
+
+/*
+
+	Тест для объекта размера
+
+*/
+
+// Тестер для объекта позиции
+type tester struct {
+	t   *testing.T
+	sz  *Size
+	isz types.ISize
+}
+
+func TestSize(t *testing.T) {
+	test := &tester{
+		t: t,
+	}
+	test.create()
+	test.set()
+}
+
+// Устанавливает позицию объекта
+func (sf *tester) set() {
+	sf.t.Logf("set")
+	sf.isz.Set(12, -5)
+	x0, y0 := sf.isz.Get()
+	if x0 != 12 {
+		sf.t.Fatalf("create(): x0(%v)!=12", x0)
+	}
+	if y0 != -5 {
+		sf.t.Fatalf("create(): y0(%v)!=-5", y0)
+	}
+}
+
+// Создаёт объект размера
+func (sf *tester) create() {
+	sf.t.Logf("create")
+	sf.sz = NewSize()
+	if sf.sz == nil {
+		sf.t.Fatalf("create(): size==nil")
+	}
+	sf.isz = sf.sz
+	x := sf.isz.X()
+	if x == nil {
+		sf.t.Fatalf("create(): x==nil")
+	}
+	if x := x.Get(); x != 0 {
+		sf.t.Fatalf("create(): x(%v)!=0", x)
+	}
+
+	y := sf.isz.Y()
+	if y == nil {
+		sf.t.Fatalf("create(): y==nil")
+	}
+	if y := y.Get(); y != 0 {
+		sf.t.Fatalf("create(): y(%v)!=0", y)
+	}
+
+	x0, y0 := sf.isz.Get()
+	if x0 != 0 {
+		sf.t.Fatalf("create(): x0(%v)!=0", x0)
+	}
+	if y0 != 0 {
+		sf.t.Fatalf("create(): y0(%v)!=0", y0)
+	}
+}

+ 4 - 4
libtui/v0/size/sizey/sizex.go → libtui/v0/size/sizex/sizex.go

@@ -1,9 +1,9 @@
-// package sizey -- размеры объекта по Y
-package sizey
+// package sizex -- размеры объекта по X
+package sizex
 
 import "p78git.ddns.net/svi/libtui/alias"
 
-// SizeX -- размеры объекта по Х
+// SizeX -- размеры объекта по X
 type SizeX struct {
 	val alias.SizeX
 }
@@ -19,7 +19,7 @@ func (sf *SizeX) Get() alias.SizeX {
 	return sf.val
 }
 
-// Set -- устанавливает хранимое значение размера по Y
+// Set -- устанавливает хранимое значение размера по X
 func (sf *SizeX) Set(val alias.SizeX) {
 	sf.val = val
 }

+ 5 - 5
libtui/v0/size/sizey/sizex_test.go → libtui/v0/size/sizex/sizex_test.go

@@ -1,4 +1,4 @@
-package sizey
+package sizex
 
 import (
 	"testing"
@@ -7,10 +7,10 @@ import (
 )
 
 /*
-	Тест для размера по X
+	Тест для размера по Y
 */
 
-// Тестер для размера по X
+// Тестер для размера по Y
 type tester struct {
 	t     *testing.T
 	size  *SizeX
@@ -25,7 +25,7 @@ func TestSizeX(t *testing.T) {
 	test.set()
 }
 
-// Установка размера по X
+// Установка размера по Y
 func (sf *tester) set() {
 	sf.t.Logf("set")
 	sf.isize.Set(12)
@@ -35,7 +35,7 @@ func (sf *tester) set() {
 	}
 }
 
-// Создание размера по X
+// Создание размера по Y
 func (sf *tester) create() {
 	sf.t.Logf("create")
 	sf.size = NewSizeX()

+ 0 - 0
libtui/v0/size/sizex/sizey.go → libtui/v0/size/sizey/sizey.go


+ 10 - 10
libtui/v0/size/sizex/sizey_test.go → libtui/v0/size/sizey/sizey_test.go

@@ -7,10 +7,10 @@ import (
 )
 
 /*
-	Тест для размера по Y
+	Тест для размера по X
 */
 
-// Тестер для размера по Y
+// Тестер для размера по X
 type tester struct {
 	t     *testing.T
 	size  *SizeY
@@ -25,17 +25,17 @@ func TestSizeX(t *testing.T) {
 	test.set()
 }
 
-// Установка размера по Y
+// Установка размера по X
 func (sf *tester) set() {
 	sf.t.Logf("set")
 	sf.isize.Set(12)
-	y := sf.isize.Get()
-	if y != 12 {
-		sf.t.Fatalf("set(): y(%v)!=12", y)
+	x := sf.isize.Get()
+	if x != 12 {
+		sf.t.Fatalf("set(): x(%v)!=12", x)
 	}
 }
 
-// Создание размера по Y
+// Создание размера по X
 func (sf *tester) create() {
 	sf.t.Logf("create")
 	sf.size = NewSizeY()
@@ -43,8 +43,8 @@ func (sf *tester) create() {
 		sf.t.Fatalf("create(): size==nil")
 	}
 	sf.isize = sf.size
-	y := sf.isize.Get()
-	if y != 0 {
-		sf.t.Fatalf("create(): yx(%v)!=0", y)
+	x := sf.isize.Get()
+	if x != 0 {
+		sf.t.Fatalf("create(): x(%v)!=0", x)
 	}
 }