Переглянути джерело

v0 Добавление гнора, кода. тестов; 100%

SVI 3 роки тому
батько
коміт
36d62e43fc

+ 1 - 0
.gitignore

@@ -0,0 +1 @@
+libtui/v0/cover.out

+ 5 - 2
libtui/v0/alias/alias.go

@@ -1,7 +1,10 @@
 package alias
 
-// APosX -- позиция по X
-type APosX int
+// PosX -- позиция по X
+type PosX int
+
+// PosY -- позиция по Y
+type PosY int
 
 // Фейковый метод для типа покрытия тестами
 func do() error {

+ 3 - 3
libtui/v0/posx/posx.go

@@ -7,7 +7,7 @@ import (
 
 // PosX -- позиция по X
 type PosX struct {
-	val alias.APosX
+	val alias.PosX
 }
 
 // NewPosX -- возвращает новую позицию по X
@@ -17,11 +17,11 @@ func NewPosX() *PosX {
 }
 
 // Get -- возвращает хранимое значение позиции по X
-func (sf *PosX) Get() alias.APosX {
+func (sf *PosX) Get() alias.PosX {
 	return sf.val
 }
 
 // Set -- устанавливает хранимое значение позиции по X
-func (sf *PosX) Set(val alias.APosX) {
+func (sf *PosX) Set(val alias.PosX) {
 	sf.val = val
 }

+ 24 - 0
libtui/v0/posy/posy.go

@@ -0,0 +1,24 @@
+// package posy -- позиция объекта по Y
+package posy
+
+import "p78git.ddns.net/svi/libtui/alias"
+
+// PosY -- позиция по Y
+type PosY struct {
+	val alias.PosY
+}
+
+// NewPosY -- возвращает новую позицию по Y
+func NewPosY() *PosY {
+	sf := &PosY{}
+	return sf
+}
+
+// Get -- возвращает позицию по Y
+func (sf *PosY) Get() alias.PosY {
+	return sf.val
+}
+
+func (sf *PosY) Set(val alias.PosY) {
+	sf.val = val
+}

+ 48 - 0
libtui/v0/posy/posy_test.go

@@ -0,0 +1,48 @@
+package posy
+
+import (
+	"testing"
+
+	"p78git.ddns.net/svi/libtui/types"
+)
+
+/*
+	Тест для позиции объекта по координате Y
+*/
+
+// Тестер для позиции по Y
+type tester struct {
+	t    *testing.T
+	pos  *PosY
+	ipos types.IPosY
+}
+
+func TestPosX(t *testing.T) {
+	test := &tester{
+		t: t,
+	}
+	test.create()
+	test.set()
+}
+
+// Установка позиции по Y
+func (sf *tester) set() {
+	sf.t.Logf("set")
+	sf.ipos.Set(-5)
+	if val := sf.ipos.Get(); val != -5 {
+		sf.t.Fatalf("set(): val(%v)!=-5", val)
+	}
+}
+
+// Создание позиции по Y
+func (sf *tester) create() {
+	sf.t.Logf("create")
+	sf.pos = NewPosY()
+	if sf.pos == nil {
+		sf.t.Fatalf("create(): pos==nil")
+	}
+	sf.ipos = sf.pos
+	if val := sf.ipos.Get(); val != 0 {
+		sf.t.Fatalf("create(): val(%v)!=0", val)
+	}
+}

+ 2 - 2
libtui/v0/types/iposx.go

@@ -5,9 +5,9 @@ import "p78git.ddns.net/svi/libtui/alias"
 // IPosX -- интерфейс к позиции по X
 type IPosX interface {
 	// Get -- возвращает позицию по X
-	Get() alias.APosX
+	Get() alias.PosX
 	// Set -- устанавливает позицию по X
-	Set(val alias.APosX)
+	Set(val alias.PosX)
 }
 
 // Фейковый метод для типа покрытия тестами

+ 11 - 0
libtui/v0/types/iposy.go

@@ -0,0 +1,11 @@
+package types
+
+import "p78git.ddns.net/svi/libtui/alias"
+
+// IPosY -- интерфейс к позиции по Y
+type IPosY interface {
+	// Get -- возвращает позицию по Y
+	Get() alias.PosY
+	// Set -- устанавливает позицию по Y
+	Set(val alias.PosY)
+}