草庐IT

GL_SCISSOR_TEST

全部标签

go - 为什么我们在 Go 中的 foo() 中有一个独立的 test() ?

为什么下面代码中的test()函数是这样组织的,而不是将test()中的所有内容都取出来放入foo()中?谢谢!funcfoo()error{...err=test()error{......}...} 最佳答案 您可能需要这样的内部函数有多种原因,但到目前为止,最常见的用途是当您需要在内部函数中使用包含函数的局部变量时。为什么要有一个内部函数?有时您需要它传递到库中,或者您需要它用于go或defer语句。内部函数“关闭”它使用的任何来自外部函数的变量,即使在外部函数返回后这些变量仍然有效。因此,以这种方式定义的函数称为“闭包”。一

unit-testing - 让 'go test -run <case>' 成功为 'go test' 的一般规则是什么?

我发现'gotest'PASS,但是如果我指定subtest,它会失败,这里我给一个全局变量sample,'gotest'会PASS,'gotest-runf/sample2'会失败.我想知道我应该遵循什么一般规则来防止此类问题?走吧packagemainimport"fmt"vargstringfuncf(sstring)string{g=g+sreturns+g}funcmain(){fmt.Println(f("a"))}t_test.gopackagemainimport("testing")funcTest_f(t*testing.T){tests:=[]struct{nam

go test 仅在测试完成后打印输出

我注意到gotest似乎在测试完成后打印到标准输出。我不确定这是gotest的问题,还是因为我正在使用ginkgo以及。有谁知道如何让它在测试运行时打印输出? 最佳答案 在gotest上使用verbose标志以在测试运行时查看日志或打印语句的输出。gotest-v 关于gotest仅在测试完成后打印输出,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/47535538/

opengl - 如何使用 openGL 的 golang 绑定(bind)定义 gl.DrawBuffers COLOR_ATTACHMENTi

使用“github.com/go-gl/gl/v4.5-core/gl”设置color_attachments数组的golang绑定(bind)如下://SpecifiesalistofcolorbufferstobedrawnintofuncDrawBuffers(nint32,bufs*uint32){C.glowDrawBuffers(gpDrawBuffers,(C.GLsizei)(n),(*C.GLenum)(unsafe.Pointer(bufs)))}在C++中你会这样做://Set"renderedTexture"asourcolourattachement#0glF

go test 无法使用命令 : go test file1_test. go file2.go 加载包

我正在编写单元测试。我将所有测试文件放在其他目录中。假设文件夹mypack。fun1_test.go和base.go文件夹下有两个文件。base.go具有与fun1_test.go相同的通用基本函数。base.go看起来像:packagemypack_testimport(.....)funcBase1(){//somecode}func1_test.go具有测试func1的函数。func1_test.go看起来像:packagemypack_testimport(.....)funcTestFunc1(){//somecodeBase1()//somecode}当我使用命令时gote

golang test spy 错误地比较相等性

我正在学习围棋并正在改编来自testdouble的Java生命游戏示例.然而,我编写的测试spy错误地比较了我的World结构的相等性——测试在它应该失败的时候通过了,因为output(world)没有被调用。我做错了什么?测试:packagegameoflifeimport("testing""github.com/google/go-cmp/cmp")funcTestZeroGenerations(t*testing.T){generatesSeedWorldStub:=GeneratesSeedWorldStub{}outputsWorldSpy:=OutputsWorldSpy

api - 如何从 "test"包测试 Golang 中的主包?

我有一个用Golang编写的简单程序。它是一个API。所以在项目文件夹中,有一个名为cmd的文件夹,其中包含我的main包(用于初始化应用程序并定义API的端点)。还有一个以我的程序命名的文件夹,其中包含同样以我的程序命名的包中的多个文件。这个包作为执行所有必要查询的模型,并包含我定义的所有类型。我还创建了一个名为test的文件夹。它包含名为test的包下的所有测试文件。问题是要运行测试,我必须访问我的主包!有没有办法在Golang中做到这一点?我尝试简单地使用import"cmd/main"但当然它不起作用。我也有一个想法。也许我可以将所有初始化函数(在cmd文件夹中)移动到以我的程

go - 如何处理 'go test all' 中的预期+无关故障?

我正在使用NPM来管理使用go1.11模块的go包的构建/测试/版本生命周期。在发布之前,我想检查“一切”,包括模块,所以我运行:gotestall(在所有包含的模块中运行测试)。问题是go1.11.5中的标准os包(至少)在某些Mac版本/环境(包括我的)上失败。这没关系,与我的目的无关,因为失败发生在我不使用的功能中。但是,这会导致发布过程失败,因为gotest以非零状态退出。关于如何处理这个问题有什么建议吗?如果有一种方法可以为我本地测试的调用树中的函数运行所有测试,那就太好了(gotestall-relevant)。或者,如果我可以命名并跳过测试,那也很好。我知道-run标志,

go - 无法理解 go test -race : RACE: DATA WARNING stack trace

我在测试我的项目时遇到了DATARACE警告,想知道是否有人愿意帮助我破译这个问题。我过去从未尝试过测试go例程,我发现很难全神贯注于数据竞赛。我在描述中提供了指向未解决问题的链接,并在问题描述中提供了跟踪。我真的很感激一些帮助,只是从学习调试类似问题和为将来的go例程编写更好的测试方面。https://github.com/nitishm/vegeta-server/issues/52下面还提供了跟踪的片段===RUNTest_dispatcher_Cancel_Error_completedINFO[0000]creatingnewdispatchercomponent=dispa

javascript - json:无法将字符串解码为 main.test_struct 类型的 Go 值

我从api收到一个json,我尝试解码它,但我不明白我得到的错误:json:cannotunmarshalstringintoGovalueoftypemain.test_struct这是我得到的json:INFO:2017/02/0317:47:53ApiRecordGeo.go:66:"{\"lat\":48.892423,\"lng\":2.215331,\"acc\":1962}"这是我的代码:typetest_structstruct{Latfloat32`json:"lat"`Lngfloat32`json:"lng"`Accint`json:"acc"`}funcpost