草庐IT

test_slice

全部标签

arrays - 比较缺少元素的两个 slice

我有两个slice:a[]string,b[]string。b包含与a相同的所有元素加上一个额外的元素。indexes:values彼此不匹配,但值匹配,否则我可以执行类似strings.Join()和strings.Replace()的操作。这就是我正在尝试的。packagemainimport("fmt""github.com/google/go-cmp/cmp")funccompare(start_keys[]string,end_keys[]string)string{match:=make([]string,len(start_keys))q:=0fori:=0;imatch

testing - Go 在运行测试时挂起

我正在用go编写一个网络应用程序,它运行得很好。然而,当为一个包运行测试时,gotest命令只是挂起(它什么都不做,甚至没有终止)。我有一个测试启动服务器的函数:funcmkroutes(t*testing.T,ffunc()){handlerRegistry=handlerList([]handler{})middlewareRegistry=[]middleware{}iftestListener==nil{_testListener,err:=net.Listen("tcp",":8081")testListener=_testListeneriferr!=nil{fmt.Pri

go - 将 slice 转换为元组的便捷函数?

在Python中,可以编写这样的代码,从列表中分配多个值:(a,b,c,d)=[1,2,3,4]slice有没有类似的一套Go库函数?也就是说,我可以这样做:http://play.golang.org/p/DY1Bi5omm1packagemainfuncget3(s[]interface{})(ainterface{},binterface{},cinterface{},rest[]interface{}){returns[0],s[1],s[2],s[4:]}funcmain(){s:=make([]interface{},5);fori:=0;i是否有标准的gophery方法可

go - 使用 html/template 包迭代时打印 slice 的当前索引

在Revel中使用html/template包进行迭代时,我尝试打印slice的当前索引,但没有得到预期的结果。我的行动:func(cApp)Index()revel.Result{test_slice:=[]string{"t","e","s","t"}returnc.Render(test_slice)}我的模板:{{range$i,$test_slice:=.}}{{$i}}{{end}}不是获取0123,我得到DevModeRunModecurrentLocaleerrorsflashtest_slicesessiontitle我做错了什么? 最佳答

module - 从 *_test 包访问函数

我有一个包pkg。包pkg的测试在_test.go文件中。然而,为了初始化测试运行器,我需要一个来自其他包的函数,由于循环依赖,我无法在pkg中导入它。我的想法是使用pkg_test包。有什么方法可以从pkg_test中的pkg访问测试函数(在_test.go文件中)?我的项目结构:├──f.go#packagepkg├──f_test.go#packagepkg├──init_test.go#packagepkg_test换句话说:我想在init_test.go中从f_test.go访问一个函数,反之亦然(从init_test.go在f_test.go中。有什么办法吗?PS:在f_t

戈朗 : Ordering map by slice in Go templates

我有一个关于如何在Go模板中按slice排序map以及是否可行的问题。问题:我有一段有序的变量名称,我想在网站上显示,伴随它们我有一个变量信息的元数据映射,我想与变量一起显示。如果我将以下结构传递给模板:typeDatastruct{Variables[]stringInformationmap[string]int}我会遍历slice并将变量名传递给map{{range$v:=.Variables}}{{index.Information$v}}{{end}}//Doesn'twork.这是带有示例的GoPlayground。https://play.golang.org/p/AL2

mongodb - 如何在 golang 中编写 MongoDB $slice

如何在golang中编写$sliceMongoDB代码?这是我的MongoDB代码:db.userdetail.aggregate([{"$project":{"user":{"$slice":["$user",2,1]}}}]).pretty()我尝试用golang编写这段代码:o1:=bson.M{"$project":bson.M{"user":bson.M{"$slice":bson.M["$user",2,1,],},},}它给了我以下错误:语法错误:意外的逗号,期待] 最佳答案 bson.M是map[string]int

unit-testing - 如何在 golang 中模拟 Zookeeper 服务器进行单元测试?

我正在使用图书馆gozk将我的应用程序与生产zookeeper服务器连接起来。我想测试应用程序是否创建了正确的节点,它们是否包含各种情况下的正确内容,以及DataWatch和NodeWatch是否设置正确:即应用程序根据节点和数据更新执行应执行的操作。我能否拥有一个仅在单元测试期间创建和销毁的模拟zookeeper服务器,并且能够人为地创建新节点并设置节点内容?除了手动创建zookeeper服务器并使用它之外,还有其他方法吗?java的解决方案已经存在 最佳答案 我建议将您调用zookeeper的代码变成一个接口(interface

arrays - golang中多个整数 slice 的序列对齐

我想弄清楚如何使用golang对齐稍微不完美的二进制slice。以下四个slice均使用不同的偏移量正确对齐。然而,并非每一位都是相同的(在下面标记)所以我不能只比较原始block。funcmain(){//Matchallthreeslicesup(ignoringoccasionalerrors)s1:=[]int16{0,1,1,0,1,1,0,0,0,1,1,1,0,0,1,1,0,1,1}s2:=[]int16{/**/0,1,1,0,0,0,1,1,1,1}//^^s3:=[]int16{0,0,1,0,1,1,0,0,0,1,1}//^s4:=[]int16{/**/0,

testing - 使用包调用 go test 时的输出差异

我有一个Go项目,我在其中使用glide进行包管理。我有一个使用godog的测试套件设置,我使用TestMain包装器通过gotest运行它,如docs中所述godoc(格式为pretty)。因为我不想测试我销售的包,所以我调用测试gotest$(glidenovendor)在我的例子中,项目非常简单,glidenovendor只是返回一个。现在我的问题是:为什么在运行gotest时,我得到了很多漂亮的输出,列出了场景和步骤等等,但是当我运行去测试。我刚得到一个单行okgitlab.knf.local/ngs/gpp0.015s[noteststorun](即使我添加了虚拟测试,这也不