mirror of
https://github.com/kubernetes/kubernetes.git
synced 2026-05-26 03:03:24 -04:00
The iptables and nftables proxy backends had 2 unit tests
(TestDeleteEndpointConnections and TestProxierDeleteNodePortStaleUDP)
that were effectively testing that:
- If the proxy saw various Service/EndpointSlice events this would
result in specific changes to the service/endpoints trackers, AND
- If the service/endpoints trackers changed in those specific ways
this would result in specific UpdateServiceMapResult and
UpdateEndpointsMapResult values being generated, AND
- If you passed those specific UpdateServiceMapResult and
UpdateEndpointsMapResult values to conntrack.CleanStaleEntries it
would make specific calls to the lower-level conntrack methods,
AND
- If you called the lower-level conntrack methods with those
specific arguments, it would result in specific executions of the
conntrack binary, mixed with a specific number of klog
invocations.
This... is not a good unit test. We already test the change tracker
behavior in other unit tests, and we already tested the
Update{Service,Endpoints}MapResult behavior in the pkg/proxy unit
tests, and we already tested the conntrack exec behavior in
pkg/proxy/conntrack/conntrack_test.go, and we now test the
CleanStaleEntries behavior in pkg/proxy/conntrack/cleanup_test.go. So
there is no need to try to test the top-to-bottom behavior as a "unit
test".
|
||
|---|---|---|
| .. | ||
| apis | ||
| config | ||
| conntrack | ||
| healthcheck | ||
| iptables | ||
| ipvs | ||
| kubemark | ||
| metaproxier | ||
| metrics | ||
| nftables | ||
| util | ||
| winkernel | ||
| doc.go | ||
| endpoint.go | ||
| endpointschangetracker.go | ||
| endpointschangetracker_test.go | ||
| endpointslicecache.go | ||
| endpointslicecache_test.go | ||
| node.go | ||
| node_test.go | ||
| OWNERS | ||
| servicechangetracker.go | ||
| servicechangetracker_test.go | ||
| serviceport.go | ||
| topology.go | ||
| topology_test.go | ||
| types.go | ||