diff --git a/.DS_Store b/.DS_Store index 19f6321..1882b3d 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/README.md b/README.md index 8fc0f01..c8fdfab 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ # speedtest -Fork of https://github.com/showwin/speedtest-go adjusted to use erigon infra to do download speed test +Fork of https://github.com/erigontech/speedtest adjusted to use erigon infra to do download speed test diff --git a/example/.DS_Store b/example/.DS_Store new file mode 100644 index 0000000..c214861 Binary files /dev/null and b/example/.DS_Store differ diff --git a/example/main.go b/example/main.go new file mode 100644 index 0000000..5a89046 --- /dev/null +++ b/example/main.go @@ -0,0 +1,48 @@ +package main + +import ( + "fmt" + "log" + "net/http" + + "github.com/erigontech/speedtest/speedtest" +) + +var cloudflareHeaders = http.Header{ + "lsjdjwcush6jbnjj3jnjscoscisoc5s": []string{"I%OSJDNFKE783DDHHJD873EFSIVNI7384R78SSJBJBCCJBC32JABBJCBJK45"}, +} + +func main() { + servurl := []string{ + "v1:https://caplin-snapshots-sepolia.erigon.network", + "v1:https://erigon2-v1-snapshots-sepolia.erigon.network/", + "v1:https://erigon2-v2-snapshots-sepolia.erigon.network/", + "v1:https://erigon2-v3-snapshots-sepolia.erigon.network/", + "v1:https://erigon3-v1-snapshots-sepolia.erigon.network/", + "v1:https://erigon3-v3-snapshots-sepolia.erigon.network/", + "v1:https://erigon3-v3-snapshots-sepolia.erigon.network/v2/", + } + + urlstr, err := speedtest.SelectSegmentFromWebseeds(servurl, cloudflareHeaders) + if err != nil { + log.Fatal(err) + } + + s, err := speedtest.CustomServer(urlstr) + if err != nil { + log.Fatal(err) + } + + checkError(s.PingTest(nil)) + checkError(s.DownloadTest()) + + // Note: The unit of s.DLSpeed, s.ULSpeed is bytes per second, this is a float64. + fmt.Printf("Latency: %s, Download: %s\n", s.Latency, s.DLSpeed) + s.Context.Reset() +} + +func checkError(err error) { + if err != nil { + log.Fatal(err) + } +} diff --git a/go.mod b/go.mod index 976d439..00d0b67 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/showwin/speedtest-go +module github.com/erigontech/speedtest go 1.19 diff --git a/speedtest.go b/speedtest.go index 018233a..b3e3426 100644 --- a/speedtest.go +++ b/speedtest.go @@ -13,10 +13,10 @@ import ( "sync/atomic" "time" - "github.com/showwin/speedtest-go/speedtest/transport" + "github.com/erigontech/speedtest/speedtest/transport" "gopkg.in/alecthomas/kingpin.v2" - "github.com/showwin/speedtest-go/speedtest" + "github.com/erigontech/speedtest/speedtest" ) var ( diff --git a/speedtest/data_manager.go b/speedtest/data_manager.go index 7ae2a48..843802d 100644 --- a/speedtest/data_manager.go +++ b/speedtest/data_manager.go @@ -4,13 +4,14 @@ import ( "bytes" "context" "errors" - "github.com/showwin/speedtest-go/speedtest/internal" "io" "math" "runtime" "sync" "sync/atomic" "time" + + "github.com/erigontech/speedtest/speedtest/internal" ) type Manager interface { diff --git a/speedtest/internal/README.md b/speedtest/internal/README.md index a867604..31d181e 100644 --- a/speedtest/internal/README.md +++ b/speedtest/internal/README.md @@ -1,6 +1,6 @@ # Issue #192 -SpeedTest-Go (1) +SpeedTest-Go (1) 1. Use welford alg to quickly calculate standard deviation and mean. 2. The welford alg integrated moving window feature, This allows us to ignore early data with excessive volatility. diff --git a/speedtest/loss.go b/speedtest/loss.go index 719b71a..88b1c48 100644 --- a/speedtest/loss.go +++ b/speedtest/loss.go @@ -2,10 +2,11 @@ package speedtest import ( "context" - "github.com/showwin/speedtest-go/speedtest/transport" "net" "sync" "time" + + "github.com/erigontech/speedtest/speedtest/transport" ) type PacketLossAnalyzerOptions struct { diff --git a/speedtest/request.go b/speedtest/request.go index 4eb3341..377d305 100644 --- a/speedtest/request.go +++ b/speedtest/request.go @@ -13,7 +13,7 @@ import ( "sync/atomic" "time" - "github.com/showwin/speedtest-go/speedtest/transport" + "github.com/erigontech/speedtest/speedtest/transport" ) type ( diff --git a/speedtest/server.go b/speedtest/server.go index 1bc0d8f..a389e9b 100644 --- a/speedtest/server.go +++ b/speedtest/server.go @@ -16,7 +16,7 @@ import ( "sync" "time" - "github.com/showwin/speedtest-go/speedtest/transport" + "github.com/erigontech/speedtest/speedtest/transport" ) const (