speedtester

package module
v0.0.0-...-650f8bc Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 12, 2022 License: MIT Imports: 10 Imported by: 0

README

Speedtester

Test the download and upload speeds by using Ookla's https://www.speedtest.net/ and Netflix's https://fast.com/.

Used libs:

Dependency

go get github.com/roudder/speedtester
API Usage
package main

import (
	"fmt"
	"github.com/roudder/speedtester"
)

func main() {
	speedtestMeasurement, err := speedtester.NewMeasureSpeedtest().Measure()
	if err != nil {
		//process error as you want
	}
	fmt.Println(speedtestMeasurement)

	fastMeasurement, err := speedtester.NewMeasurementFast().Measure()
	if err != nil {
		//process error as you want
	}
	fmt.Println(fastMeasurement)
}

Documentation

Index

Constants

View Source
const (
	Fast      string = "fast.com"
	Speedtest string = "speedtest.net"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type MeasureSpeedtest

type MeasureSpeedtest struct{}

func NewMeasureSpeedtest

func NewMeasureSpeedtest() *MeasureSpeedtest

func (*MeasureSpeedtest) Measure

func (st *MeasureSpeedtest) Measure() (*Measurement, error)

Measure measures speedtest network speed

type Measurement

type Measurement struct {
	Resource                   string
	DownloadSpeed, UploadSpeed float64
}

Measurement measure's result of network speed

func (Measurement) String

func (measurement Measurement) String() string

type MeasurementFast

type MeasurementFast struct {
	// contains filtered or unexported fields
}

func NewMeasurementFast

func NewMeasurementFast() *MeasurementFast

func (*MeasurementFast) Measure

func (f *MeasurementFast) Measure() (*Measurement, error)

Measure naively attempts to measure network speed by using fast.com's api directly because fast-cli and go-fast libraries provide only download speed

type Measurer

type Measurer interface {
	Measure() (*Measurement, error)
}

Measurer common interface for all measurement's functions

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL