PPysolate SpineREAD THE CODE · UNDERSTAND THE SYSTEM
课程与章节
源码索引 / CURRENT IMPLEMENTATION

learning/go-patterns/stages/01-sync/main_test.go

25 行 · 点击行号可定位;函数链接随声明位置更新,不手填行号。

跳到函数 / 声明
package main

import "testing"

func TestServiceQuoteReadsCatalogSynchronously(t *testing.T) {
	service := NewService(Catalog{
		"book": {Item: "book", Cents: 2100},
	})

	got, err := service.Quote("book")
	if err != nil {
		t.Fatalf("Quote returned error: %v", err)
	}
	if got != (Price{Item: "book", Cents: 2100}) {
		t.Fatalf("Quote returned %#v", got)
	}
}

func TestServiceQuoteReportsMissingItem(t *testing.T) {
	service := NewService(Catalog{})

	if _, err := service.Quote("book"); err == nil {
		t.Fatal("Quote returned nil error for a missing item")
	}
}