草庐IT

go-simplejson

全部标签

unit-testing - 在 go 中正确测试 http 路由

我有5个端点,它们具有GET、POST和DELETE等方法来测试。我使用go的内置测试包编写了测试用例。我担心我遗漏了一些我不感兴趣的案例。我已经在代码审查中发布了我的测试用例进行审查,但我没有得到任何回应。我也关注了这个帖子TestingHTTProutesingolang.所有这些测试用例都在检查响应代码。问题是,我的大部分测试用例都遵循类似的模式,我以不同的格式发布数据并检查响应代码。我强烈觉得我错过了一些东西,当我将它推向产品时会破坏我的API。我需要对测试这些路由有一些了解,这样我才能有信心将API推向产品。main_test.gofuncTestSigHandler(t*t

go - pprof(对于 golang)不显示我的包的详细信息

我一直在尝试使用pprof分析我的go应用程序(evm-specification-miner),但输出并不是很有用:(pprof)top5108.59minsof109.29minstotal(99.36%)Dropped607nodes(cum=0.98mins)flatflat%sum%cumcum%107.83mins98.66%98.66%108.64mins99.40%[evm-specification-miner]0.36mins0.33%98.99%6mins5.49%net.dialIP0.30mins0.28%99.27%4.18mins3.83%net.list

algorithm - 在 Go 中将 map 转换为树

我有一个非常具体的问题,我找不到解决方案。我有一个map[string]Metric,我想将它转换成树以便在前端使用。Metric接口(interface)看起来有一个Path()和一个Name()方法,name方法返回以句号分隔的路径的最后一部分(因此“my.awesome.metric”的路径将意味着该指标的名称为“metric”)树应按路径排序,并应包含IndexNode。这个结构看起来像这样:typeIndexNodestruct{NamestringPathstringChildren[]*IndexNode}所以像这样的map:{my.awesome.metric.down

go - 如何在查询中使用问号?

我使用gorm和postgresql9.4。运算符?|在我的查询中使用。DB.Where(`a->'b'?|ARRAY['1','2','3']`)打印语句:WHEREa->'b'|ARRAY['1','2','3']运算符?|被转换为|。这不是我想要的。谢谢。 最佳答案 这是一个已知的issue.无论是否有意,???都会转义问号。 关于go-如何在查询中使用问号?,我们在StackOverflow上找到一个类似的问题: https://stackoverfl

go - 等待非子进程结束

您好,我正在编写一个简单的代码,它将监视进程并在进程崩溃时重新启动进程。我写了一个小示例代码。这是我的外部进程packagemainimport("fmt""time")funcmain(){for{time.Sleep(1000*time.Millisecond)fmt.Println("hello")}}这是监控它的代码。packagemainimport("fmt""os")funcmain(){p,e:=os.FindProcess()fmt.Println(e)fmt.Println(p.Wait())fmt.Println("done")}这里的挑战在于,由于第一个进程不是

Go - 区分用户仅输入数字和其他所有内容

我试图让代码在输入的数字低于600时循环,在输入包含字母和符号时循环。我就是做不到。packagemainimport("fmt""strconv")funcmain(){fmt.Println("Howfarinmetresarethepeopleawayfromthespacecraft?")varpeoplestringfmt.Scanf("%s",&people)number,_:=strconv.Atoi(people)fornumber0||people=="0"){fmt.Println("TooClose\nTryAgain")varpeoplestringfmt.Sc

go - 在 Go slice 中,为什么 s[lo :hi] end at element hi-1?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭1年前。Improvethisquestion根据TourofGo,在Goslices中,表达式s[lo:hi]计算为从lo到hi的元素slice-1,包括:packagemainimport"fmt"funcmain(){p:=[]int{0,//sliceposition010,//sliceposition120,//sliceposition230,//sliceposition340,//sliceposition450}/

go - golang 上的公历包

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭5年前。Improvethisquestion我正在做一个项目,我想在goLang中用公历创建一个日期变量,我已经搜索过了,但没有找到答案这是我想在golang中用java类型代码做的事情try{finalCalendargc=newGregorianCalendar();gc.setTime(simpleDateFormat.parse(callEndDateTime));gc.add(Calendar.SECOND,-1*duration

go - 如何在 glide 中使用自定义包

我使用golangMasterminds/glide来管理包。这是我的项目:$GOPATH/bin/pkg/src/go_test/long(owncustompackage:justprinta"hello")main.goglide.yamlvendor/github.com/lib/pqlong包在main.go中使用如下:packagemainimport("database/sql""github.com/lib/pq""long")funcmain(...}glide.yaml是:package:go_testimport:-package:github.com/lib/p

go - 在 golang 中类型转换重叠结构

我是golang的新手,正在尝试找出将字节block转换为正确结构的正确方法。所有结构都以两个字节开头,这两个字节指示其余字节的布局。在C中,我会指向内存块的开头并将其转换为仅包含这两个字节(下面的X)的简单结构,但在这里我得到一个无效的类型断言。我可能离题太远了,不胜感激。packagemainimport("fmt")typeAstruct{tagbyteverbytedata1intdata2intdata3int}typeBstruct{tagbyteverbytedata1float32}typeXstruct{tagbyteverbyte}funcmain(){varaAa