草庐IT

test_map

全部标签

testing - 如何去测试多个包

在我的项目中,有数百个包。所以我跑的地方:$(foreachi,$(TEST_PKGS),gotest$(i)-test.short-v)大约需要一个小时。如果我运行:gotest$(TEST_PKGS),它将消耗大量内存。如何处理这个问题? 最佳答案 您可以使用./...测试当前目录和所有子目录中的所有包。来自文档:Tomakecommonpatternsmoreconvenient,therearetwospecialcases.First,/...attheendofthepatterncanmatchanemptystrin

go - 从结构 slice 动态创建 map[string]struct 的常用函数

我有两个不同的结构,如下所述AabdB和两个过程函数。有什么方法可以让我编写一个通用函数来为struct生成map[string]struct。此外,有什么方法可以使用给定结构名称的反射来创建相同的对象?typeAstruct{namestring//morefields}typeBstruct{namestring//morefields}funcProcessA(input[]A)map[string]A{output:=make(map[string]A)for_,v:=rangeinput{output[v.name]=v}returnoutput}funcProcessB(i

unit-testing - 如何模拟getClient?

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭4年前。Improvethisquestion我有一个功能:funcHTTPGet(urlstring)(*http.Response,error){resp,err:=getClient().Get(url)returnresp,err}getClient函数是:vardefaultClient*http.ClientfuncgetClient()*http.Client{ifdefaultClient==nil{defaultClient

dictionary - 如何找出 'map[string][][]int' 是否有值

给定这段代码:varamap[string][][]intvaraamap[string][][]int=map[string][][]int{"a":[][]int{{10,10},{20,20}}}varbbmap[string][][]int=map[string][][]int{"b":[][]int{{30,30},{40,40}}}fmt.Println(aa)//>>map[a:[[1010][2020]]b:[[3030][4040]]]我怎么知道'[30,30]'是否在'aa'中?我想检查“aa”是否有“[3030]”。 最佳答案

go - 如何将文件行中的值分配给 Golang 中的 map

我正在尝试编写一个自键值对,稍后用作规则引擎。在这里我想要实现的是获取以下代码来制作一个名为“f”的map并将文件行上的值分配给它。但是下面的代码抛出一个异常,提示“fisnotatype”我实现上述任务的方法是否正确?如果没有,请提出更好的方法,如果你能给我一个示例代码就更好了如何为map分配线值?如果你能给我一个示例代码就更好了提前致谢规则文件"name":"hero","age":"27"name":"villein","age":"30代码packagemainimport("bufio""fmt""log""os")funcmain(){file,err:=os.Open("

dictionary - 如何更新 map 中的结构属性

这个问题在这里已经有了答案:Golangupdatingmapsandvariablesinanobject(1个回答)关闭3年前。目前正在努力学习围棋。我有以下功能,但它仅在团队不存在于map中并在map中创建新记录时才有效。如果团队在map中已有结构,则不会更新值。funcAddLoss(teamMapmap[string]TeamRow,teamNamestring){ifval,ok:=teamMap[teamName];ok{val.Wins++val.GamesPlayed++}else{newTeamRow:=TeamRow{Losses:1}teamMap[teamNa

unit-testing - 在 Go 单元测试中使用两个不同的模拟

我正在学习使用gomock的mockgen实用程序第一次在Go中使用mock进行单元测试。我的单元测试工作正常,除了其中一个。被测方法有两个依赖项:一个依赖于数据库,另一个依赖于它调用restapi的外部服务。数据库的模拟(mockRepo)工作正常,因为被测方法正确调用模拟而不是实际的repo代码。然而,rest客户端的mock继续调用实际的rest客户端而不是mock代码。我不知道为什么。有人可以解释原因并帮助修复吗?这是我的单元测试:funcTestService_CreateWorkspace(t*testing.T){ts:=NewTestService(t)deferts.

go - 无法将复合文字与 map[string][]struct 一起使用

关闭。这个问题是notreproducibleorwascausedbytypos.它目前不接受答案。这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。关闭3年前。Improvethisquestion我正在尝试对map使用复合文字,但无法使用它,因为它显示了一些错误。请在下面找到代码。我是Golang的新手,对复合字面量的了解可能还比较少。typeAssessmentstruct{StructuringForcemap[string][]StructuringForce}typeStructur

go - 如何将 map 中的值与一组已知值进行比较

我有一些代码可以从URL中提取URL参数并将其放入map中。我可以成功地打印出我想要检查的map项的值。values:=r.URL.Query()a:=values["a"]fmt.Println(a)我注意到当打印值时,它们会在周围打印“[]”。我想计算每个a、b、c的值并检查它是否包含在以逗号分隔的字符串中。allowedA="value1,value2,value3"即类似于:if(contains(allowedA,a)意思是“如果'a'中的值包含在变量'allowedA'中,则返回true。有什么建议吗? 最佳答案 Ino

对 map[string][]struct{} 进行排序

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我想按成本对这张map进行排序typeGraphstruct{verticestringcostfloat64}vargraphmap[string][]Graph按照从低到高的顺序谢谢!