Browse Source

Reached 95.5% test coverage

arianagiroux 3 weeks ago
parent
commit
ca26ac9d8c
2 changed files with 51 additions and 1 deletions
  1. 7 1
      bug.go
  2. 44 0
      bug_test.go

+ 7 - 1
bug.go

@@ -23,7 +23,13 @@ type Bug struct {
 
 // Constrcutor for Bugs
 func (b Bug) New(title string, status Field, tags VariadicField, blockedby VariadicField, path string) (bug Bug, err error) { // TODO Implement
-	return Bug{}, err
+	return Bug{
+		Title:     title,
+		Status:    status,
+		Tags:      tags,
+		Blockedby: blockedby,
+		Path:      path,
+	}, err
 }
 
 // Constrcutor for Bugs that loads relevant data from disk

+ 44 - 0
bug_test.go

@@ -6,6 +6,35 @@ import (
 	"github.com/stretchr/testify/assert"
 )
 
+func Test_Bug_New(t *testing.T) {
+	testBug := Bug{
+		Title:       "test 1",
+		Description: Field{Data: "test description\n", Path: "/description"},
+		Status:      Field{Data: "open:test\n", Path: "/status"},
+		Path:        "tests/bugs/test-1",
+
+		Tags: VariadicField{
+			Path: "/tags", Fields: []Field{
+				{Path: "tag1"},
+				{Path: "tag2"},
+			},
+		},
+		Blockedby: VariadicField{
+			Path: "/blockedby", Fields: []Field{
+				{Path: "blocker1"},
+				{Path: "blocker2"},
+			},
+		},
+	}
+
+	bug, _ := Bug.New(Bug{}, testBug.Title, testBug.Status, testBug.Tags, testBug.Blockedby, testBug.Path)
+
+	assert.Equal(t, testBug.Title, bug.Title)
+	assert.Equal(t, testBug.Status, bug.Status)
+	assert.Equal(t, testBug.Tags, bug.Tags)
+	assert.Equal(t, testBug.Blockedby, bug.Blockedby)
+	assert.Equal(t, testBug.Path, bug.Path)
+}
 func Test_Bug_NewFromPath_err_bad_path(t *testing.T) {
 	testBug := Bug{}
 	bug, err := Bug.NewFromPath(testBug, "doesntexist")
@@ -48,6 +77,21 @@ func Test_Bug_NewFromPath_success(t *testing.T) {
 	assert.Equal(t, testBug.Path, bug.Path)
 }
 
+func Test_Field_New(t *testing.T) {
+	var testF = Field{Path: "test1", Data: "test1"}
+
+	f := Field.New(Field{}, testF.Path, testF.Data)
+
+	assert.Equal(t, testF, f)
+}
+
+func Test_VariadicField_New(t *testing.T) {
+	var testVF = VariadicField{Path: "testing", Fields: []Field{{Path: "test"}}}
+	vf := VariadicField.New(VariadicField{}, testVF.Fields, testVF.Path)
+
+	assert.Equal(t, testVF, vf)
+}
+
 func Test_VariadicField_NewFromPath_fails(t *testing.T) {
 	_, err := VariadicField.NewFromPath(VariadicField{Path: "/tags"}, "dosentexist")
 	assert.Error(t, err)