iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 15
0
自我挑戰組

Go to 放棄系列 第 15

go note =>test

  • 減少review code time
  • 降低別人動你code 的錯誤機會
  • code quality

car.go

package car

import "errors"

// Car struct
type Car struct {
	Name  string
	Price float32
}

// SetName set car name
func (c *Car) SetName(name string) string {
	if name != "" {
		c.Name = name
	}

	return c.Name
}

// New Object
func New(name string, price float32) (*Car, error) {
	if name == "" {
		return nil, errors.New("missing name")
	}

	return &Car{
		Name:  name,
		Price: price,
	}, nil
}

car_test.go

package car

import (
	"testing"
)

// Simple testing what different between Fatal and Error
func TestNew(t *testing.T) {
	c, err := New("", 100)
	if err != nil {
		t.Error("got errors:", err)
	}

	if c == nil {
		t.Error("car should be nil")
	}
}

下command

go test -v

https://ithelp.ithome.com.tw/upload/images/20181030/20112477REX1T6Dc6g.png


上一篇
go note 9 => init
下一篇
go note => test part2
系列文
Go to 放棄30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言