base_test.go 1.1 KB
package controllers

import (
	"fmt"
	"log"
	"reflect"
	"testing"
	"time"

	"gitlab.fjmaimaimai.com/mmm-go/gocomm/common"
	"gitlab.fjmaimaimai.com/mmm-go/gocomm/pkg/mybeego"
)

func Test_GenMessage(t *testing.T) {
	input := []struct {
		Rsp     interface{}
		Error   error
		Exceprt *mybeego.Message
	}{
		{Rsp: "test", Error: fmt.Errorf("test"), Exceprt: mybeego.NewMessage(1)},
		{Rsp: "test-A", Error: common.NewErrorWithMsg(100, "test-A"), Exceprt: mybeego.NewErrMessage(100, "test-A")},
	}

	for i := range input {
		o := input[i]
		out := DefaultController.GenMessage(o.Rsp, o.Error)
		if !reflect.DeepEqual(out, o.Exceprt) {
			log.Fatal("not equal ", out, o.Exceprt)
		}
	}
}

func Benchmark_GenMessage(b *testing.B) {
	o := struct {
		Rsp     interface{}
		Error   error
		Exceprt *mybeego.Message
	}{Rsp: "test", Error: fmt.Errorf("test"), Exceprt: mybeego.NewMessage(1)}
	for i := 0; i < b.N; i++ {
		out := DefaultController.GenMessage(o.Rsp, o.Error)
		if out.Errmsg != o.Exceprt.Errmsg || out.Errno != o.Exceprt.Errno {
			log.Fatal("not equal ", out, o.Exceprt)
		}
	}
}

func TestXXX(t *testing.T) {
	t.Log(time.Now())
}