feat: publish v1.0.0-rc.36-custom.1
Publish Docker image (Multi-arch) / Build & push (amd64) (push) Failing after 9m20s
Release (Linux, macOS, Windows) / Linux Release (push) Failing after 55m7s
Publish Docker image (Multi-arch) / Build & push (arm64) (push) Canceled after 0s
Release (Linux, macOS, Windows) / macOS Release (push) Canceled after 0s
Release (Linux, macOS, Windows) / Windows Release (push) Canceled after 0s
Publish Docker image (Multi-arch) / Create multi-arch manifests (push) Canceled after 0s
Publish Docker image (Multi-arch) / Build & push (amd64) (push) Failing after 9m20s
Release (Linux, macOS, Windows) / Linux Release (push) Failing after 55m7s
Publish Docker image (Multi-arch) / Build & push (arm64) (push) Canceled after 0s
Release (Linux, macOS, Windows) / macOS Release (push) Canceled after 0s
Release (Linux, macOS, Windows) / Windows Release (push) Canceled after 0s
Publish Docker image (Multi-arch) / Create multi-arch manifests (push) Canceled after 0s
This commit is contained in:
commit
bb7968b612
2381 files changed
+551494
No files matched your search
@@ -0,0 +1,44 @@
|
||||
package controller
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
perfmetrics "github.com/QuantumNous/new-api/pkg/perf_metrics"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestRequestStatusReplacesReachableProbe(t *testing.T) {
|
||||
monitor := Monitor{Status: 1, Uptime: 1, LastChecked: "probe"}
|
||||
stats := perfmetrics.GroupResult{Group: "test", SuccessRate: 67.9, AvgTtftMs: 7420, Series: []perfmetrics.BucketPoint{{Ts: time.Now().Unix(), SuccessRate: 67.9, AvgTtftMs: 7420}}}
|
||||
applyRequestMetrics(&monitor, stats)
|
||||
require.Equal(t, 0, monitor.Status)
|
||||
require.InDelta(t, 0.679, monitor.Uptime, 0.00001)
|
||||
require.Equal(t, 7420, monitor.History[0].Ping)
|
||||
require.Equal(t, int64(7420), monitor.Metrics.AvgTtftMs)
|
||||
}
|
||||
|
||||
func TestRequestStatusNoSamplesAndDisabled(t *testing.T) {
|
||||
monitor := Monitor{Status: 1, Uptime: 1}
|
||||
applyRequestMetrics(&monitor, perfmetrics.GroupResult{})
|
||||
require.Equal(t, -1, monitor.Status)
|
||||
require.Empty(t, monitor.LastChecked)
|
||||
require.Empty(t, monitor.History)
|
||||
monitor.ChannelDisabled = true
|
||||
applyRequestMetrics(&monitor, perfmetrics.GroupResult{SuccessRate: 100, Series: []perfmetrics.BucketPoint{{Ts: time.Now().Unix(), SuccessRate: 100}}})
|
||||
require.Equal(t, 0, monitor.Status)
|
||||
}
|
||||
|
||||
func TestRequestStatusStaleSamplesStayUnknown(t *testing.T) {
|
||||
monitor := Monitor{}
|
||||
applyRequestMetrics(&monitor, perfmetrics.GroupResult{
|
||||
SuccessRate: 100,
|
||||
Series: []perfmetrics.BucketPoint{{
|
||||
Ts: time.Now().Add(-3 * time.Hour).Unix(),
|
||||
SuccessRate: 100,
|
||||
}},
|
||||
})
|
||||
require.Equal(t, -1, monitor.Status)
|
||||
require.NotEmpty(t, monitor.LastChecked)
|
||||
require.NotNil(t, monitor.Metrics)
|
||||
}
|
||||
Reference in new issue
Block a user