| 12345678910111213141516171819202122232425262728293031323334353637383940414243 | package trackingimport (	"testing"	"github.com/longjoy/micro-go-course/section19/cargo/mock"	shipping "github.com/longjoy/micro-go-course/section19/cargo/model")func TestTrack(t *testing.T) {	var cargos mock.CargoRepository	cargos.FindFn = func(id shipping.TrackingID) (*shipping.Cargo, error) {		return shipping.NewCargo("FTL456", shipping.RouteSpecification{			Origin:      shipping.AUMEL,			Destination: shipping.SESTO,		}), nil	}	var events mock.HandlingEventRepository	events.QueryHandlingHistoryFn = func(id shipping.TrackingID) shipping.HandlingHistory {		return shipping.HandlingHistory{}	}	s := NewService(&cargos, &events)	c, err := s.Track("FTL456")	if err != nil {		t.Fatal(err)	}	if c.TrackingID != "FTL456" {		t.Errorf("c.TrackingID = %v; want = %v", c.TrackingID, "FTL456")	}	if c.Origin != "AUMEL" {		t.Errorf("c.Origin = %v; want = %v", c.Destination, "AUMEL")	}	if c.Destination != "SESTO" {		t.Errorf("c.Destination = %v; want = %v", c.Destination, "SESTO")	}	if c.StatusText != shipping.NotReceived.String() {		t.Errorf("c.StatusText = %v; want = %v", c.StatusText, shipping.NotReceived.String())	}}
 |