1- //go:build manual
2-
31package discovery
42
53import (
64 "errors"
5+ "fmt"
76 "log/slog"
87 "math/rand"
98 "net"
109 "os"
11- "testing"
1210 "time"
1311
1412 "github.com/df-mc/go-nethernet"
1513)
1614
17- func TestListen ( t * testing. T ) {
15+ func ExampleListen ( ) {
1816 cfg := ListenConfig {
1917 NetworkID : rand .Uint64 (),
2018 }
2119 d , err := cfg .Listen ("0.0.0.0:7551" )
2220 if err != nil {
23- t . Fatalf ("error listening on discovery: %s" , err )
21+ panic ( fmt . Sprintf ("error listening on discovery: %s" , err ) )
2422 }
25- t .Cleanup (func () {
26- if err := d .Close (); err != nil {
27- t .Errorf ("error closing discovery: %s" , err )
28- }
29- })
23+ defer d .Close ()
3024 d .ServerData (& ServerData {
3125 ServerName : "df-mc/go-nethernet" ,
3226 LevelName : "Bedrock World" ,
@@ -44,26 +38,26 @@ func TestListen(t *testing.T) {
4438 var c nethernet.ListenConfig
4539 l , err := c .Listen (d )
4640 if err != nil {
47- t . Fatalf ("error listening: %s" , err )
41+ panic ( fmt . Sprintf ("error listening on NetherNet : %s" , err ) )
4842 }
49- t .Cleanup (func () {
50- if err := l .Close (); err != nil {
51- t .Fatalf ("error closing: %s" , err )
52- }
53- })
43+ defer l .Close ()
5444
5545 for {
5646 conn , err := l .Accept ()
5747 if err != nil {
5848 if ! errors .Is (err , net .ErrClosed ) {
59- t . Fatalf ("error accepting connection: %s" , err )
49+ panic ( fmt . Sprintf ("error accepting connection: %s" , err ) )
6050 }
6151 return
6252 }
63- t .Logf ("accepted: %s" , conn .RemoteAddr ())
53+ slog .Info ("connected" ,
54+ "localAddr" , conn .LocalAddr (),
55+ "remoteAddr" , conn .RemoteAddr (),
56+ "latency" , conn .(* nethernet.Conn ).Latency (),
57+ )
6458 time .AfterFunc (time .Second * 5 , func () {
6559 if err := conn .Close (); err != nil {
66- t . Fatal (err )
60+ panic (err )
6761 }
6862 })
6963 }
0 commit comments