本文整理汇总了Golang中utils.SetupTests函数的典型用法代码示例。如果您正苦于以下问题:Golang SetupTests函数的具体用法?Golang SetupTests怎么用?Golang SetupTests使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了SetupTests函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: TestDeleteSketch
func TestDeleteSketch(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
m := NewManager()
info := datamodel.NewEmptyInfo()
typ := pb.SketchType_CARD
info.Properties.MaxUniqueItems = utils.Int64p(10000)
info.Name = utils.Stringp(fmt.Sprintf("marvel"))
info.Type = &typ
if err := m.CreateSketch(info); err != nil {
t.Error("Expected no errors, got", err)
}
if sketches := m.GetSketches(); len(sketches) != 1 {
t.Error("Expected 1 sketches, got", len(sketches))
} else if sketches[0][0] != "marvel" || sketches[0][1] != "card" {
t.Error("Expected [[marvel card]], got", sketches)
}
if err := m.DeleteSketch(info.ID()); err != nil {
t.Error("Expected no errors, got", err)
}
if sketches := m.GetSketches(); len(sketches) != 0 {
t.Error("Expected 0 sketches, got", len(sketches))
}
}
示例2: TestAdd
func TestAdd(t *testing.T) {
utils.SetupTests()
defer utils.TearDownTests()
info := datamodel.NewEmptyInfo()
info.Properties.MaxUniqueItems = utils.Int64p(1000000)
info.Name = utils.Stringp("marvel")
sketch, err := NewCMLSketch(info)
if err != nil {
t.Error("expected avengers to have no error, got", err)
}
values := [][]byte{
[]byte("sabertooth"),
[]byte("thunderbolt"),
[]byte("havoc"),
[]byte("cyclops"),
[]byte("cyclops"),
[]byte("cyclops"),
[]byte("havoc")}
if _, err := sketch.Add(values); err != nil {
t.Error("expected no errors, got", err)
}
if res, err := sketch.Get([][]byte{[]byte("cyclops")}); err != nil {
t.Error("expected no errors, got", err)
} else if res.(*pb.FrequencyResult).Frequencies[0].GetCount() != 3 {
t.Error("expected 'cyclops' count == 3, got", res.(*pb.FrequencyResult).Frequencies[0].GetCount())
}
}
示例3: TestCreateDeleteDomain
func TestCreateDeleteDomain(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
m := NewManager()
info := datamodel.NewEmptyInfo()
info.Properties.MaxUniqueItems = utils.Int64p(10000)
info.Properties.Size = utils.Int64p(10000)
info.Name = utils.Stringp(fmt.Sprintf("marvel"))
if err := m.CreateDomain(info); err != nil {
t.Error("Expected no errors, got", err)
}
if sketches := m.GetSketches(); len(sketches) != 4 {
t.Error("Expected 1 sketches, got", len(sketches))
} else if sketches[0][0] != "marvel" || sketches[0][1] != "card" {
t.Error("Expected [[marvel card]], got", sketches)
}
// Create a second Sketch
info2 := datamodel.NewEmptyInfo()
info2.Properties.MaxUniqueItems = utils.Int64p(10000)
info2.Name = utils.Stringp("dc")
if err := m.CreateDomain(info2); err != nil {
t.Error("Expected no errors, got", err)
}
if sketches := m.GetSketches(); len(sketches) != 8 {
t.Error("Expected 8 sketches, got", len(sketches))
} else if sketches[0][0] != "dc" || sketches[0][1] != "card" {
t.Error("Expected [[dc card]], got", sketches[0][0], sketches[0][1])
} else if sketches[1][0] != "dc" || sketches[1][1] != "freq" {
t.Error("Expected [[dc freq]], got", sketches[1][0], sketches[1][1])
}
}
示例4: TestStressHLLPP
func TestStressHLLPP(t *testing.T) {
utils.SetupTests()
defer utils.TearDownTests()
values := make([][]byte, 10)
for i := 0; i < 1024; i++ {
avenger := "avenger" + strconv.Itoa(i)
values = append(values, []byte(avenger))
}
for i := 0; i < 1024; i++ {
info := datamodel.NewEmptyInfo()
info.Properties.MaxUniqueItems = utils.Int64p(1024)
info.Name = utils.Stringp("marvel" + strconv.Itoa(i))
sketch, err := NewHLLPPSketch(info)
if err != nil {
t.Error("expected avengers to have no error, got", err)
}
if _, err := sketch.Add(values); err != nil {
t.Error("expected no errors, got", err)
}
}
}
示例5: TestCreateAddDeleteAddSketch
func TestCreateAddDeleteAddSketch(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
client, conn := setupClient()
defer tearDownClient(conn)
typ := pb.SketchType_CARD
name := "yoyo"
in := &pb.Sketch{
Name: proto.String(name),
Type: &typ,
Properties: &pb.SketchProperties{
MaxUniqueItems: proto.Int64(1337), // FIXME: Allow default as -1
Size: proto.Int64(7),
},
}
addReq := &pb.AddRequest{
Sketch: in,
Values: []string{"a", "b", "c", "d", "a", "b"},
}
if _, err := client.CreateSketch(context.Background(), in); err != nil {
t.Error("Did not expect error, got", err)
}
typ = pb.SketchType_RANK
if _, err := client.CreateSketch(context.Background(), in); err != nil {
t.Error("Did not expect error, got", err)
}
if _, err := client.Add(context.Background(), addReq); err != nil {
t.Error("Did not expect error, got", err)
}
if res, err := client.ListAll(context.Background(), &pb.Empty{}); err != nil {
t.Error("Did not expect error, got", err)
} else if len(res.GetSketches()) != 2 {
t.Error("Expected len(res) == 2, got ", len(res.GetSketches()))
}
if _, err := client.DeleteSketch(context.Background(), in); err != nil {
t.Error("Did not expect error, got", err)
}
if _, err := client.Add(context.Background(), addReq); err == nil {
t.Error("Expected error, got", err)
}
if res, err := client.ListAll(context.Background(), &pb.Empty{}); err != nil {
t.Error("Did not expect error, got", err)
} else if len(res.GetSketches()) != 1 {
t.Error("Expected len(res) == 1, got ", len(res.GetSketches()))
}
}
示例6: TestNoSketches
func TestNoSketches(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
m := NewManager()
if sketches := m.GetSketches(); len(sketches) != 0 {
t.Error("Expected 0 sketches, got", len(sketches))
}
}
示例7: TestAddGetFreqSketch
func TestAddGetFreqSketch(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
client, conn := setupClient()
defer tearDownClient(conn)
typ := pb.SketchType_FREQ
name := "yoyo"
in := &pb.Sketch{
Name: proto.String(name),
Type: &typ,
Properties: &pb.SketchProperties{
MaxUniqueItems: proto.Int64(1337), // FIXME: Allow default as -1
Size: proto.Int64(7),
},
}
if res, err := client.CreateSketch(context.Background(), in); err != nil {
t.Error("Did not expect error, got", err)
} else if res.GetName() != in.GetName() {
t.Errorf("Expected name == %s, got %s", in.GetName(), res.GetName())
} else if res.GetType() != in.GetType() {
t.Errorf("Expected name == %q, got %q", in.GetType(), res.GetType())
}
addReq := &pb.AddRequest{
Sketch: in,
Values: []string{"a", "a", "b", "c", "d"},
}
expected := map[string]int64{
"a": 2, "b": 1, "c": 1, "d": 1, "e": 0,
}
if _, err := client.Add(context.Background(), addReq); err != nil {
t.Error("Did not expect error, got", err)
}
getReq := &pb.GetRequest{
Sketches: []*pb.Sketch{in},
Values: []string{"a", "b", "c", "d", "e", "b"},
}
if res, err := client.GetFrequency(context.Background(), getReq); err != nil {
t.Error("Did not expect error, got", err)
} else {
for _, v := range res.GetResults()[0].GetFrequencies() {
if expected[v.GetValue()] != v.GetCount() {
t.Errorf("Expected %s == %d, got", v.GetValue(), v.GetCount())
}
}
}
}
示例8: TestAddBloom
func TestAddBloom(t *testing.T) {
utils.SetupTests()
defer utils.TearDownTests()
info := datamodel.NewEmptyInfo()
info.Properties.MaxUniqueItems = utils.Int64p(1024)
info.Name = utils.Stringp("marvel")
sketch, err := NewBloomSketch(info)
if err != nil {
t.Error("expected avengers to have no error, got", err)
}
values := [][]byte{
[]byte("sabertooth"),
[]byte("thunderbolt"),
[]byte("havoc"),
[]byte("cyclops"),
[]byte("cyclops"),
[]byte("cyclops"),
[]byte("havoc")}
if _, err := sketch.Add(values); err != nil {
t.Error("expected no errors, got", err)
}
check := map[string]bool{
"sabertooth": true,
"thunderbolt": true,
"havoc": true,
"cyclops": true,
"wolverine": false,
"iceman": false,
"rogue": false,
"storm": false}
if res, err := sketch.Get(values); err != nil {
t.Error("expected no errors, got", err)
} else {
tmp := res.(*pb.MembershipResult)
mres := tmp.GetMemberships()
for key := range check {
for i := 0; i < len(mres); i++ {
if mres[i].GetValue() == key &&
mres[i].GetIsMember() != check[key] {
t.Error("expected member == "+strconv.FormatBool(check[key])+", got", mres[i].GetIsMember())
}
}
}
}
}
示例9: TestAddGetCardSketch
func TestAddGetCardSketch(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
client, conn := setupClient()
defer tearDownClient(conn)
typ := pb.SketchType_CARD
name := "yoyo"
in := &pb.Sketch{
Name: proto.String(name),
Type: &typ,
Properties: &pb.SketchProperties{
MaxUniqueItems: proto.Int64(1337), // FIXME: Allow default as -1
Size: proto.Int64(7),
},
}
if res, err := client.CreateSketch(context.Background(), in); err != nil {
t.Error("Did not expect error, got", err)
} else if res.GetName() != in.GetName() {
t.Errorf("Expected name == %s, got %s", in.GetName(), res.GetName())
} else if res.GetType() != in.GetType() {
t.Errorf("Expected name == %q, got %q", in.GetType(), res.GetType())
}
addReq := &pb.AddRequest{
Sketch: in,
Values: []string{"a", "b", "c", "d", "a", "b"},
}
if _, err := client.Add(context.Background(), addReq); err != nil {
t.Error("Did not expect error, got", err)
}
getReq := &pb.GetRequest{
Sketches: []*pb.Sketch{in},
Values: []string{},
}
if res, err := client.GetCardinality(context.Background(), getReq); err != nil {
t.Error("Did not expect error, got", err)
} else if res.GetResults()[0].GetCardinality() != 4 {
t.Error("Expected cardinality 4, got", res.GetResults()[0].GetCardinality())
}
}
示例10: TestCreateInvalidSketch
func TestCreateInvalidSketch(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
m := NewManager()
info := datamodel.NewEmptyInfo()
info.Properties.MaxUniqueItems = utils.Int64p(10000)
info.Name = utils.Stringp("avengers")
info.Type = nil
if err := m.CreateSketch(info); err == nil {
t.Error("Expected error invalid sketch, got", err)
}
if sketches := m.GetSketches(); len(sketches) != 0 {
t.Error("Expected 0 sketches, got", len(sketches))
}
}
示例11: TestDeleteNonExistingSketch
func TestDeleteNonExistingSketch(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
m := NewManager()
info := datamodel.NewEmptyInfo()
typ := pb.SketchType_CARD
info.Properties.MaxUniqueItems = utils.Int64p(10000)
info.Name = utils.Stringp(fmt.Sprintf("marvel"))
info.Type = &typ
if err := m.DeleteSketch(info.ID()); err == nil {
t.Error("Expected errors deleting non-existing sketch, got", err)
}
if sketches := m.GetSketches(); len(sketches) != 0 {
t.Error("Expected 0 sketches, got", len(sketches))
}
}
示例12: TestMembershipSaveLoad
func TestMembershipSaveLoad(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
m := NewManager()
info := datamodel.NewEmptyInfo()
typ := pb.SketchType_MEMB
info.Properties.MaxUniqueItems = utils.Int64p(1000)
info.Name = utils.Stringp(fmt.Sprintf("marvel"))
info.Type = &typ
if err := m.CreateSketch(info); err != nil {
t.Error("Expected no errors, got", err)
}
if sketches := m.GetSketches(); len(sketches) != 1 {
t.Error("Expected 1 sketch, got", len(sketches))
} else if sketches[0][0] != "marvel" || sketches[0][1] != "memb" {
t.Error("Expected [[marvel memb]], got", sketches)
}
if err := m.AddToSketch(info.ID(), []string{"hulk", "hulk", "thor", "iron man", "hawk-eye"}); err != nil {
t.Error("Expected no errors, got", err)
}
if err := m.AddToSketch(info.ID(), []string{"hulk", "black widow", "black widow", "black widow", "black widow"}); err != nil {
t.Error("Expected no errors, got", err)
}
if res, err := m.GetFromSketch(info.ID(), []string{"hulk", "captian america", "black widow"}); err != nil {
t.Error("Expected no errors, got", err)
} else if len(res.(*pb.MembershipResult).GetMemberships()) != 3 {
t.Error("Expected len(res) = 3, got", len(res.(*pb.MembershipResult).GetMemberships()))
} else if v := res.(*pb.MembershipResult).GetMemberships()[0].GetIsMember(); !v {
t.Error("Expected 'hulk' == true , got", v)
} else if v := res.(*pb.MembershipResult).GetMemberships()[1].GetIsMember(); v {
t.Error("Expected 'captian america' == false , got", v)
} else if v := res.(*pb.MembershipResult).GetMemberships()[2].GetIsMember(); !v {
t.Error("Expected 'captian america' == true , got", v)
}
}
示例13: TestAddHLLPP
func TestAddHLLPP(t *testing.T) {
utils.SetupTests()
defer utils.TearDownTests()
info := datamodel.NewEmptyInfo()
info.Properties.MaxUniqueItems = utils.Int64p(1024)
info.Name = utils.Stringp("marvel")
sketch, err := NewHLLPPSketch(info)
if err != nil {
t.Error("expected avengers to have no error, got", err)
}
values := [][]byte{
[]byte("sabertooth"),
[]byte("thunderbolt"),
[]byte("havoc"),
[]byte("cyclops"),
[]byte("cyclops"),
[]byte("cyclops"),
[]byte("havoc")}
if _, err := sketch.Add(values); err != nil {
t.Error("expected no errors, got", err)
}
const expectedCardinality int64 = 4
if res, err := sketch.Get(values); err != nil {
t.Error("expected no errors, got", err)
} else {
tmp := res.(*pb.CardinalityResult)
mres := tmp.GetCardinality()
if mres != int64(expectedCardinality) {
t.Error("expected cardinality == "+strconv.FormatInt(expectedCardinality, 10)+", got", mres)
}
}
}
示例14: TestRankSaveLoad
func TestRankSaveLoad(t *testing.T) {
config.Reset()
utils.SetupTests()
defer utils.TearDownTests()
m := NewManager()
info := datamodel.NewEmptyInfo()
typ := pb.SketchType_RANK
info.Properties.Size = utils.Int64p(10)
info.Name = utils.Stringp(fmt.Sprintf("marvel"))
info.Type = &typ
if err := m.CreateSketch(info); err != nil {
t.Error("Expected no errors, got", err)
}
if sketches := m.GetSketches(); len(sketches) != 1 {
t.Error("Expected 1 sketch, got", len(sketches))
} else if sketches[0][0] != "marvel" || sketches[0][1] != "rank" {
t.Error("Expected [[marvel rank]], got", sketches)
}
if err := m.AddToSketch(info.ID(), []string{"hulk", "hulk", "thor", "iron man", "hawk-eye"}); err != nil {
t.Error("Expected no errors, got", err)
}
if err := m.AddToSketch(info.ID(), []string{"hulk", "black widow", "black widow", "black widow", "black widow"}); err != nil {
t.Error("Expected no errors, got", err)
}
if res, err := m.GetFromSketch(info.ID(), nil); err != nil {
t.Error("Expected no errors, got", err)
} else if len(res.(*pb.RankingsResult).GetRankings()) != 5 {
t.Error("Expected len(res) = 5, got", len(res.(*pb.RankingsResult).GetRankings()))
} else if res.(*pb.RankingsResult).GetRankings()[0].GetValue() != "black widow" {
t.Error("Expected 'black widow', got", res.(*pb.RankingsResult).GetRankings()[0].GetValue())
}
}
示例15: BenchmarkBloom
func BenchmarkBloom(b *testing.B) {
utils.SetupTests()
defer utils.TearDownTests()
values := make([][]byte, 10)
for i := 0; i < 1024; i++ {
avenger := "avenger" + strconv.Itoa(i)
values = append(values, []byte(avenger))
}
for n := 0; n < b.N; n++ {
info := datamodel.NewEmptyInfo()
info.Properties.MaxUniqueItems = utils.Int64p(1000)
info.Name = utils.Stringp("marvel")
sketch, err := NewBloomSketch(info)
if err != nil {
b.Error("expected no errors, got", err)
}
for i := 0; i < 1000; i++ {
if _, err := sketch.Add(values); err != nil {
b.Error("expected no errors, got", err)
}
}
}
}