V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  502Chef  ›  全部回复第 2 页 / 共 19 页
回复总数  368
1  2  3  4  5  6  7  8  9  10 ... 19  
@zhmouV2 30 不到还是阿姨呀
notion 表格,到期自动发邮件
133 天前
回复了 gaiba 创建的主题 酷工作 招 Golang 后端工程师|深圳线下
133 天前
回复了 gaiba 创建的主题 酷工作 招 Golang 后端工程师|深圳线下
深圳,这薪资和要求不匹配吧
137 天前
回复了 xhd2015 创建的主题 Go 编程语言 xgo:一个基于 IR 重写的 golang mock 库
第三个 Test 函数代码贴错了,纠正一下,下面的日志没有错

➜ demo xgo version
1.1.7
➜ demo xgo exec go version
go version go1.24.2 darwin/arm64
➜ demo go env
GOHOSTARCH='arm64'
GOHOSTOS='darwin'
GOVERSION='go1.24.2'

```go
package demo_test

import (
"testing"

"github.com/xhd2015/xgo/runtime/mock"
)

func MyFunc() string {
return "my func"
}

func MyFuncT[T any](t T) T {
return t
}

var MyFuncTInt = MyFuncT[int]

func TestFuncMock(t *testing.T) {
mock.Patch(MyFunc, func() string {
return "mock func"
})
text := MyFunc()
if text != "mock func" {
t.Fatalf("expect MyFunc() to be 'mock func', actual: %s", text)
}
}

func TestFuncMockIntA(t *testing.T) {
mock.Patch(MyFuncTInt, func(t int) int {
return 2
})
text := MyFuncTInt(1)
if text != 2 {
t.Fatalf("expect intA() to be '2', actual: %d", text)
}
}

func TestFuncMockT(t *testing.T) {
println("111111")
mock.Patch(MyFuncT[int], func(t int) int {
println("333333")
return 2
})
println("222222")
text := MyFuncTInt(1)
if text != 2 {
t.Fatalf("expect MyFuncT() to be '2', actual: %d", text)
}
}
```
137 天前
回复了 xhd2015 创建的主题 Go 编程语言 xgo:一个基于 IR 重写的 golang mock 库
看文档是支持泛型函数指定类型 mock 的,但是自己尝试下来确不支持,求解答,谢谢

报错:

panic: func not instrumented by xgo, see https://github.com/xhd2015/xgo/tree/master/doc/ERR_NOT_INSTRUMENTED.md: demo_test.MyFuncT[int]



```go
package demo_test

import (
"testing"

"github.com/xhd2015/xgo/runtime/mock"
)

func MyFunc() string {
return "my func"
}

func MyFuncT[T any](t T) T {
return t
}

var MyFuncTInt = MyFuncT[int]

func TestFuncMock(t *testing.T) {
mock.Patch(MyFunc, func() string {
return "mock func"
})
text := MyFunc()
if text != "mock func" {
t.Fatalf("expect MyFunc() to be 'mock func', actual: %s", text)
}
}

func TestFuncMockIntA(t *testing.T) {
mock.Patch(MyFuncTInt, func(t int) int {
return 2
})
text := MyFuncTInt(1)
if text != 2 {
t.Fatalf("expect intA() to be '2', actual: %d", text)
}
}

func TestFuncMockT(t *testing.T) {
println("111111")
mock.Patch(MyFuncTInt, func(t int) int {
println("333333")
return 2
})
println("222222")
text := MyFuncTInt(1)
if text != 2 {
t.Fatalf("expect MyFuncT() to be '2', actual: %d", text)
}
}
```

```console
xgo test -v ./
=== RUN TestFuncMock
--- PASS: TestFuncMock (0.00s)
=== RUN TestFuncMockIntA
--- FAIL: TestFuncMockIntA (0.00s)
panic: func not instrumented by xgo, see https://github.com/xhd2015/xgo/tree/master/doc/ERR_NOT_INSTRUMENTED.md: demo_test.MyFuncT[int] [recovered]
panic: func not instrumented by xgo, see https://github.com/xhd2015/xgo/tree/master/doc/ERR_NOT_INSTRUMENTED.md: demo_test.MyFuncT[int]

goroutine 19 [running]:
testing.tRunner.func1.2({0x100c85be0, 0x140000a0ac0})
/Users/lula/.xgo/go-instrument/go1.24.2_op_ho_Ce_go_1._li_9f53f045/go1.24.2/src/testing/testing.go:1734 +0x1ac
testing.tRunner.func1()
/Users/lula/.xgo/go-instrument/go1.24.2_op_ho_Ce_go_1._li_9f53f045/go1.24.2/src/testing/testing.go:1737 +0x334
panic({0x100c85be0?, 0x140000a0ac0?})
/Users/lula/.xgo/go-instrument/go1.24.2_op_ho_Ce_go_1._li_9f53f045/go1.24.2/src/runtime/panic.go:792 +0x124
github.com/xhd2015/xgo/runtime/internal/trap.Inspect({0x100c75480, 0x100cb6540})
/Users/lula/Library/Go/pkg/mod/github.com/xhd2015/xgo/[email protected]/internal/trap/inspect.go:68 +0x530
github.com/xhd2015/xgo/runtime/internal/trap.pushMockReplacer({0x100c75480, 0x100cb6540}, {0x100c75480, 0x100cb6550})
/Users/lula/Library/Go/pkg/mod/github.com/xhd2015/xgo/[email protected]/internal/trap/mock.go:160 +0x3d0
github.com/xhd2015/xgo/runtime/internal/trap.PushMockReplacer(...)
/Users/lula/Library/Go/pkg/mod/github.com/xhd2015/xgo/[email protected]/internal/trap/mock.go:47
github.com/xhd2015/xgo/runtime/mock.Patch(...)
/Users/lula/Library/Go/pkg/mod/github.com/xhd2015/xgo/[email protected]/mock/patch.go:15
demo_test.TestFuncMockIntA(0x14000146380)
/Users/lula/Code/Go/go-learn/demo/demo_test.go:30 +0x14c
testing.tRunner(0x14000146380, 0x100cb5c50)
/Users/lula/.xgo/go-instrument/go1.24.2_op_ho_Ce_go_1._li_9f53f045/go1.24.2/src/testing/testing.go:1792 +0xe4
created by testing.(*T).Run in goroutine 1
/Users/lula/.xgo/go-instrument/go1.24.2_op_ho_Ce_go_1._li_9f53f045/go1.24.2/src/testing/testing.go:1851 +0x374
FAIL demo 0.259s
FAIL
```
154 天前
回复了 zzzyyysss 创建的主题 NAS 当下往 nas 里拉资源 pt 是最优方案吗
windows smb 目录挂载,直接下载到 nas
163 天前
回复了 wchluxi 创建的主题 NAS 内网 ip 的 web 服务有必要上 https 吗
上。自签根证书、手动信任
@liuliren 那你的可能和我的场景还不太一样。我额外买的不是保险、是服务
@huyujievip 出了这事我才知道买的是服务不是保险
@huyujievip 在携程租车,蔚来 et7 。刮了轮毂,车行说不报保险了,报了也不一定理赔。因为买了车行的 3000 免赔额度,车行也没找我赔钱
这坑我踩过,你买的是服务(车行的服务),不是给你单独投保

保险公司是否出险需要根据他们车子买的保险来定

如果保险公司不出险,你买的服务里面有车行提供的免赔额度也行,车行自行维修不找你出钱
@honus 通过截图还有一个问题是,有些消费详情上面压根不显示商品名,导致无法分类
@MarsCloud
没用过后面试试

ios 长截图有点麻烦,不知道截图重复会不会重复记账

分类、备注、日期不知道准不准
@dwu8555

> 调用 AI 分析,返回结构化数据反倒不复杂,Cursor Agent 帮我处理了 95% 的开发量

这里指的是绿色部分的后端开发量,不包括快捷指令的编写
@dwu8555 快捷指令调用后端接口,上传录音文件,然后后端分析(绿色部分),再在快捷指令里面解析 JSON 响应,提取参数

![]( https://assets.111234.xyz/Picsew_20250511175712.JPEG)
172 天前
回复了 fitme 创建的主题 问与答 老哥们,如何更优惠的在阿里云买服务器?
买阿里云母公司 claw 吧
1  2  3  4  5  6  7  8  9  10 ... 19  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2357 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 26ms · UTC 15:44 · PVG 23:44 · LAX 08:44 · JFK 11:44
♥ Do have faith in what you're doing.