39 lines
1.1 KiB
Go
39 lines
1.1 KiB
Go
package pkg
|
|
|
|
import (
|
|
"fmt"
|
|
"log"
|
|
"testing"
|
|
)
|
|
|
|
func TestFanEncoder(t *testing.T) {
|
|
testFans := []Fan{
|
|
{Id: 1, Name: "大四喜", Pattern: PatternDivision{Ke: 4, Shun: 0, Dui: 1, Gang: 0}, ExcludeIds: []int{12}, Value: 88},
|
|
{Id: 2, Name: "七对", Pattern: PatternDivision{Ke: 0, Shun: 0, Dui: 7, Gang: 0}, ExcludeIds: []int{12}, Value: 24},
|
|
}
|
|
data, err := FansEncoder(testFans)
|
|
if err != nil {
|
|
log.Fatalf("Can't encode fan xing: %v", err)
|
|
return
|
|
}
|
|
fmt.Println(data)
|
|
}
|
|
|
|
func TestFanDecoder(t *testing.T) {
|
|
testFans := []Fan{
|
|
{Id: 1, Name: "大四喜", Pattern: PatternDivision{Ke: 4, Shun: 0, Dui: 1, Gang: 0}, ExcludeIds: []int{12}, Value: 88},
|
|
{Id: 2, Name: "七对", Pattern: PatternDivision{Ke: 0, Shun: 0, Dui: 7, Gang: 0}, ExcludeIds: []int{12}, Value: 24},
|
|
}
|
|
jsonBytes, err := FansEncoder(testFans)
|
|
if err != nil {
|
|
log.Fatalf("Can't encode fan xing, cancel decoding test: %v", err)
|
|
return
|
|
}
|
|
fans, err := FansDecoder(jsonBytes)
|
|
if err != nil {
|
|
log.Fatalf("Failed decoding byte stream of fan xing: %v", err)
|
|
return
|
|
}
|
|
fmt.Println(fans)
|
|
}
|