Skip to content

Commit 21e092b

Browse files
committed
Extract api tests into a separate module
1 parent 6c14b9a commit 21e092b

22 files changed

Lines changed: 635 additions & 37 deletions

.github/workflows/tests.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ jobs:
2121
- name: Run tests
2222
run: make run-tests
2323

24+
- name: Run API tests
25+
run: make run-tests-api
26+
2427
- name: Start K3S
2528
run: make start-k3s
2629

Makefile

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
.PHONY: mod-tidy
2+
mod-tidy:
3+
go mod tidy && go work sync
4+
15
.PHONY: build
26
PLATFORMS = linux/arm64
37
build:
@@ -10,6 +14,10 @@ build:
1014
run-tests:
1115
docker compose -f tests/fdb/docker-compose.yaml up --build --exit-code-from tests --abort-on-container-exit
1216

17+
.PHONY: run-tests-api
18+
run-tests-api:
19+
docker compose -f tests/api/docker-compose.yaml up --build --exit-code-from tests --abort-on-container-exit
20+
1321
.PHONY: start-k3s
1422
start-k3s:
1523
docker compose -f tests/k3s/docker-compose.yaml up -d --force-recreate --build

go.mod

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -30,37 +30,23 @@ require (
3030
k8s.io/client-go v0.30.11
3131
)
3232

33-
replace (
34-
go.etcd.io/etcd/api/v3 => go.etcd.io/etcd/api/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f
35-
go.etcd.io/etcd/client/v3 => go.etcd.io/etcd/client/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f
36-
go.etcd.io/etcd/pkg/v3 => go.etcd.io/etcd/pkg/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f
37-
go.etcd.io/etcd/server/v3 => go.etcd.io/etcd/server/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f
38-
go.etcd.io/etcd/tests/v3 => go.etcd.io/etcd/tests/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f
39-
)
40-
4133
require (
42-
github.com/anishathalye/porcupine v1.0.2
4334
github.com/elliotchance/orderedmap/v3 v3.0.0
44-
github.com/google/go-cmp v0.7.0
4535
github.com/k3s-io/kine v1.14.2
4636
github.com/stretchr/testify v1.11.1
47-
go.etcd.io/etcd/pkg/v3 v3.6.4
48-
go.etcd.io/etcd/tests/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f
49-
go.uber.org/zap v1.27.0
5037
golang.org/x/sync v0.16.0
51-
golang.org/x/time v0.12.0
5238
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8
5339
)
5440

5541
require (
5642
filippo.io/edwards25519 v1.1.0 // indirect
43+
github.com/antithesishq/antithesis-sdk-go v0.4.3 // indirect
5744
github.com/beorn7/perks v1.0.1 // indirect
5845
github.com/cenkalti/backoff/v5 v5.0.2 // indirect
5946
github.com/cespare/xxhash/v2 v2.3.0 // indirect
6047
github.com/coreos/go-semver v0.3.1 // indirect
6148
github.com/coreos/go-systemd/v22 v22.5.0 // indirect
6249
github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect
63-
github.com/creack/pty v1.1.18 // indirect
6450
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
6551
github.com/dustin/go-humanize v1.0.1 // indirect
6652
github.com/expr-lang/expr v1.17.5 // indirect
@@ -70,6 +56,7 @@ require (
7056
github.com/golang-jwt/jwt/v5 v5.2.2 // indirect
7157
github.com/golang/protobuf v1.5.4 // indirect
7258
github.com/google/btree v1.1.3 // indirect
59+
github.com/google/go-cmp v0.7.0 // indirect
7360
github.com/google/go-tpm v0.9.5 // indirect
7461
github.com/google/uuid v1.6.0 // indirect
7562
github.com/gorilla/websocket v1.5.0 // indirect
@@ -89,13 +76,15 @@ require (
8976
github.com/prometheus/client_model v0.6.2 // indirect
9077
github.com/prometheus/common v0.66.1 // indirect
9178
github.com/prometheus/procfs v0.17.0 // indirect
79+
github.com/rogpeppe/go-internal v1.14.1 // indirect
9280
github.com/russross/blackfriday/v2 v2.1.0 // indirect
9381
github.com/soheilhy/cmux v0.1.5 // indirect
9482
github.com/spf13/pflag v1.0.6 // indirect
9583
github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802 // indirect
9684
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 // indirect
9785
github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 // indirect
9886
go.etcd.io/bbolt v1.4.2 // indirect
87+
go.etcd.io/etcd/pkg/v3 v3.6.4 // indirect
9988
go.etcd.io/raft/v3 v3.6.0 // indirect
10089
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
10190
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.61.0 // indirect
@@ -107,16 +96,19 @@ require (
10796
go.opentelemetry.io/otel/trace v1.37.0 // indirect
10897
go.opentelemetry.io/proto/otlp v1.7.0 // indirect
10998
go.uber.org/multierr v1.11.0 // indirect
99+
go.uber.org/zap v1.27.0 // indirect
110100
go.yaml.in/yaml/v2 v2.4.2 // indirect
111101
golang.org/x/crypto v0.41.0 // indirect
112102
golang.org/x/net v0.43.0 // indirect
113103
golang.org/x/sys v0.35.0 // indirect
114104
golang.org/x/text v0.28.0 // indirect
105+
golang.org/x/time v0.12.0 // indirect
115106
google.golang.org/genproto/googleapis/api v0.0.0-20250707201910-8d1bb00bc6a7 // indirect
116107
google.golang.org/genproto/googleapis/rpc v0.0.0-20250707201910-8d1bb00bc6a7 // indirect
117108
google.golang.org/protobuf v1.36.8 // indirect
118109
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
119110
gopkg.in/yaml.v3 v3.0.1 // indirect
120111
k8s.io/klog/v2 v2.130.1 // indirect
112+
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
121113
sigs.k8s.io/yaml v1.4.0 // indirect
122114
)

go.sum

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA=
22
filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4=
33
github.com/Rican7/retry v0.3.1 h1:scY4IbO8swckzoA/11HgBwaZRJEyY9vaNJshcdhp1Mc=
44
github.com/Rican7/retry v0.3.1/go.mod h1:CxSDrhAyXmTMeEuRAnArMu1FHu48vtfjLREWqVl7Vw0=
5-
github.com/anishathalye/porcupine v1.0.2 h1:cXMWjnN95KYsbZVTi9VmXj0ePs1w3ZJ82zWoXDy6WPE=
6-
github.com/anishathalye/porcupine v1.0.2/go.mod h1:WM0SsFjWNl2Y4BqHr/E/ll2yY1GY1jqn+W7Z/84Zoog=
75
github.com/antithesishq/antithesis-sdk-go v0.4.3 h1:a2hGdDogClzHzFu20r1z0tzD6zwSWUipiaerAjZVP90=
86
github.com/antithesishq/antithesis-sdk-go v0.4.3/go.mod h1:IUpT2DPAKh6i/YhSbt6Gl3v2yvUZjmKncl7U91fup7E=
97
github.com/apple/foundationdb/bindings/go v0.0.0-20250702211439-37fcf1c8ce08 h1:FBu5q43+8pMQO5IgC+anjjz+3djUWg2jfCp7rz+IyWM=
@@ -22,8 +20,6 @@ github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8
2220
github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
2321
github.com/cpuguy83/go-md2man/v2 v2.0.7 h1:zbFlGlXEAKlwXpmvle3d8Oe3YnkKIK4xSRTd3sHPnBo=
2422
github.com/cpuguy83/go-md2man/v2 v2.0.7/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
25-
github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY=
26-
github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4=
2723
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
2824
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
2925
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
@@ -121,7 +117,6 @@ github.com/prometheus/common v0.66.1/go.mod h1:gcaUsgf3KfRSwHY4dIMXLPV0K/Wg1oZ8+
121117
github.com/prometheus/procfs v0.17.0 h1:FuLQ+05u4ZI+SS/w9+BWEM2TXiHKsUQ9TADiRH7DuK0=
122118
github.com/prometheus/procfs v0.17.0/go.mod h1:oPQLaDAMRbA+u8H5Pbfq+dl3VDAvHxMUOVhe0wYB2zw=
123119
github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ=
124-
github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc=
125120
github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk=
126121
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
127122
github.com/shengdoushi/base58 v1.0.0 h1:tGe4o6TmdXFJWoI31VoSWvuaKxf0Px3gqa3sUWhAxBs=
@@ -151,18 +146,16 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de
151146
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
152147
go.etcd.io/bbolt v1.4.2 h1:IrUHp260R8c+zYx/Tm8QZr04CX+qWS5PGfPdevhdm1I=
153148
go.etcd.io/bbolt v1.4.2/go.mod h1:Is8rSHO/b4f3XigBC0lL0+4FwAQv3HXEEIgFMuKHceM=
154-
go.etcd.io/etcd/api/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f h1:nJCgeWgJ5I7P3Dvrs0TIt+SEoD8yAt88f+Gn3Q917go=
155-
go.etcd.io/etcd/api/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f/go.mod h1:j1MADcjzVyzj/D69VrBZRxZ5SEfkRGyQfN/ijH5LMxA=
149+
go.etcd.io/etcd/api/v3 v3.6.4 h1:7F6N7toCKcV72QmoUKa23yYLiiljMrT4xCeBL9BmXdo=
150+
go.etcd.io/etcd/api/v3 v3.6.4/go.mod h1:eFhhvfR8Px1P6SEuLT600v+vrhdDTdcfMzmnxVXXSbk=
156151
go.etcd.io/etcd/client/pkg/v3 v3.6.4 h1:9HBYrjppeOfFjBjaMTRxT3R7xT0GLK8EJMVC4xg6ok0=
157152
go.etcd.io/etcd/client/pkg/v3 v3.6.4/go.mod h1:sbdzr2cl3HzVmxNw//PH7aLGVtY4QySjQFuaCgcRFAI=
158-
go.etcd.io/etcd/client/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f h1:xqIaawq4cs/1l2x7ozOa+GKcKWlNvf32LNGMSsizh2Y=
159-
go.etcd.io/etcd/client/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f/go.mod h1:wbRrBg3V0vmBYUrufqBQXrGD7myJk4l6tXUdp0+ivbk=
160-
go.etcd.io/etcd/pkg/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f h1:Ay55ed0e9C0RDLuxuw7mPOXN0fFjwr0jAlvSjNZsdf0=
161-
go.etcd.io/etcd/pkg/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f/go.mod h1:k9+BmFJCKMXTWsLNpKKmUlP+1Tl+v0QyEP7kPMvpBBs=
162-
go.etcd.io/etcd/server/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f h1:XA/5RAm3Zfo9ACVy/Ssn3gDfM/ar0vStutxpbEwR+fY=
163-
go.etcd.io/etcd/server/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f/go.mod h1:JdDRI7+4hinHKcMMWVgW0x+twwbVxldcOQ5n0u4FYhk=
164-
go.etcd.io/etcd/tests/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f h1:WCQyLVKcBmCrETvCy2mViWtuuhBkUmCDobT4ZGtC9jU=
165-
go.etcd.io/etcd/tests/v3 v3.6.0-alpha.0.0.20250620100753-eab99c53bf3f/go.mod h1:K7vQ4zJ3p7beDsOML6OHDaWcQ1WYIEevyBjRPJ5F3L8=
153+
go.etcd.io/etcd/client/v3 v3.6.4 h1:YOMrCfMhRzY8NgtzUsHl8hC2EBSnuqbR3dh84Uryl7A=
154+
go.etcd.io/etcd/client/v3 v3.6.4/go.mod h1:jaNNHCyg2FdALyKWnd7hxZXZxZANb0+KGY+YQaEMISo=
155+
go.etcd.io/etcd/pkg/v3 v3.6.4 h1:fy8bmXIec1Q35/jRZ0KOes8vuFxbvdN0aAFqmEfJZWA=
156+
go.etcd.io/etcd/pkg/v3 v3.6.4/go.mod h1:kKcYWP8gHuBRcteyv6MXWSN0+bVMnfgqiHueIZnKMtE=
157+
go.etcd.io/etcd/server/v3 v3.6.4 h1:LsCA7CzjVt+8WGrdsnh6RhC0XqCsLkBly3ve5rTxMAU=
158+
go.etcd.io/etcd/server/v3 v3.6.4/go.mod h1:aYCL/h43yiONOv0QIR82kH/2xZ7m+IWYjzRmyQfnCAg=
166159
go.etcd.io/raft/v3 v3.6.0 h1:5NtvbDVYpnfZWcIHgGRk9DyzkBIXOi8j+DDp1IcnUWQ=
167160
go.etcd.io/raft/v3 v3.6.0/go.mod h1:nLvLevg6+xrVtHUmVaTcTz603gQPHfh7kUAwV6YpfGo=
168161
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
@@ -259,5 +252,7 @@ k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
259252
k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
260253
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A=
261254
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
255+
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo=
256+
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0=
262257
sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E=
263258
sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY=

go.work

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
go 1.25.0
2+
3+
use (
4+
.
5+
./tests/api
6+
)

0 commit comments

Comments
 (0)