@@ -2,6 +2,7 @@ package natpmp
22
33import (
44 "context"
5+ "net"
56 "net/netip"
67 "testing"
78 "time"
@@ -23,14 +24,15 @@ func Test_Client_ExternalAddress(t *testing.T) {
2324 durationSinceStartOfEpoch time.Duration
2425 externalIPv4Address netip.Addr
2526 err error
26- errMessage string
27+ errMessageRegex string
2728 }{
2829 "failure" : {
2930 ctx : canceledCtx ,
3031 gateway : netip .AddrFrom4 ([4 ]byte {127 , 0 , 0 , 1 }),
3132 initialConnDuration : initialConnectionDuration ,
32- err : context .Canceled ,
33- errMessage : "executing remote procedure call: reading from udp connection: context canceled" ,
33+ err : net .ErrClosed ,
34+ errMessageRegex : "executing remote procedure call: setting connection deadline: " +
35+ "set udp 127.0.0.1:[1-9][0-9]{1,4}: use of closed network connection" ,
3436 },
3537 "success" : {
3638 ctx : context .Background (),
@@ -60,7 +62,7 @@ func Test_Client_ExternalAddress(t *testing.T) {
6062 durationSinceStartOfEpoch , externalIPv4Address , err := client .ExternalAddress (testCase .ctx , testCase .gateway )
6163 assert .ErrorIs (t , err , testCase .err )
6264 if testCase .err != nil {
63- assert .EqualError (t , err , testCase . errMessage )
65+ assert .Regexp (t , testCase . errMessageRegex , err . Error () )
6466 }
6567 assert .Equal (t , testCase .durationSinceStartOfEpoch , durationSinceStartOfEpoch )
6668 assert .Equal (t , testCase .externalIPv4Address , externalIPv4Address )
0 commit comments