Jelajahi Sumber

SVI Добавление тестов

SVI 2 tahun lalu
induk
melakukan
0116ab6cfb

+ 13 - 3
internal/module/coord/coord_line/coord_line.go

@@ -2,6 +2,8 @@
 package coord_line
 
 import (
+	мФорм "fmt"
+
 	мАлиас "p78git.ddns.net/svi/odeft/pkg/alias"
 )
 
@@ -11,9 +13,17 @@ type КоордСтрока struct {
 }
 
 // НовКоордСтрока -- возвращает новую координату строки
-func НовКоордСтрока(номер мАлиас.КоордСтрока) *КоордСтрока {
+func НовКоордСтрока(ном мАлиас.КоордСтрока) (*КоордСтрока, error) {
+	if ном == 0 {
+		return nil, мФорм.Errorf("НовКоордСтрока(): ном==0")
+	}
 	сам := &КоордСтрока{
-		знач: номер,
+		знач: ном,
 	}
-	return сам
+	return сам, nil
+}
+
+// Знач -- возвращает хранимый номер строки
+func (сам *КоордСтрока) Знач() мАлиас.КоордСтрока {
+	return сам.знач
 }

+ 53 - 0
internal/module/coord/coord_line/coord_line_test.go

@@ -0,0 +1,53 @@
+package coord_line
+
+import (
+	"testing"
+)
+
+/*
+	Тстирует номер строки исходника
+*/
+
+type тестер struct {
+	т *testing.T
+}
+
+func TestКоордСтрока(т *testing.T) {
+	сам := &тестер{
+		т: т,
+	}
+	сам.создать()
+}
+
+// Создание номера строки
+func (сам *тестер) создать() {
+	сам.т.Log("создать")
+	сам.создатьСбой1()
+	сам.создатьОк1()
+}
+
+func (сам *тестер) создатьОк1() {
+	сам.т.Log("создатьОк1")
+	кСтр, ош := НовКоордСтрока(28)
+	if ош != nil {
+		сам.т.Fatalf("создатьОк1(): ош=%v", ош)
+	}
+	if кСтр == nil {
+		сам.т.Fatalf("создатьОк1(): кСтр==нил")
+	}
+	if знач := кСтр.Знач(); знач != 28 {
+		сам.т.Fatalf("создатьОк1(): кСтр!=28")
+	}
+}
+
+// нулевой номер строки
+func (сам *тестер) создатьСбой1() {
+	сам.т.Log("создатьСбой1")
+	кСтр, ош := НовКоордСтрока(0)
+	if ош == nil {
+		сам.т.Fatalf("создатьСбой1(): ош==нил")
+	}
+	if кСтр != nil {
+		сам.т.Fatalf("создатьСбой1(): кСтр!=нил")
+	}
+}