feat(stats): backfill mileage source candidates
This commit is contained in:
@@ -5,7 +5,7 @@ import "testing"
|
||||
func TestChooseTrustedSourceKeepsContinuingSourceAndRejectsNewJump(t *testing.T) {
|
||||
previous := []dailySourceLast{{
|
||||
VIN: "LA9GG64L7PBAF4001",
|
||||
SourceKey: normalizedSourceKey("13307765812", "115.231.168.135:42630"),
|
||||
SourceKey: normalizedSourceKey("JT808", "13307765812", "", "115.231.168.135:42630"),
|
||||
Phone: "13307765812",
|
||||
SourceEndpoint: "115.231.168.135:42630",
|
||||
TotalKM: 4100.8,
|
||||
@@ -13,14 +13,14 @@ func TestChooseTrustedSourceKeepsContinuingSourceAndRejectsNewJump(t *testing.T)
|
||||
current := []dailySourceLast{
|
||||
{
|
||||
VIN: "LA9GG64L7PBAF4001",
|
||||
SourceKey: normalizedSourceKey("13307765812", "115.159.85.149:28316"),
|
||||
SourceKey: normalizedSourceKey("JT808", "13307765812", "", "115.159.85.149:28316"),
|
||||
Phone: "13307765812",
|
||||
SourceEndpoint: "115.159.85.149:28316",
|
||||
TotalKM: 42447.2,
|
||||
},
|
||||
{
|
||||
VIN: "LA9GG64L7PBAF4001",
|
||||
SourceKey: normalizedSourceKey("13307765812", "115.231.168.135:20215"),
|
||||
SourceKey: normalizedSourceKey("JT808", "13307765812", "", "115.231.168.135:20215"),
|
||||
Phone: "13307765812",
|
||||
SourceEndpoint: "115.231.168.135:20215",
|
||||
TotalKM: 4123.9,
|
||||
@@ -31,10 +31,30 @@ func TestChooseTrustedSourceKeepsContinuingSourceAndRejectsNewJump(t *testing.T)
|
||||
if !ok {
|
||||
t.Fatal("chooseTrustedSource() did not choose a source")
|
||||
}
|
||||
if chosen.current.SourceKey != normalizedSourceKey("13307765812", "115.231.168.135:20215") {
|
||||
if chosen.current.SourceKey != normalizedSourceKey("JT808", "13307765812", "", "115.231.168.135:20215") {
|
||||
t.Fatalf("chosen source = %q", chosen.current.SourceKey)
|
||||
}
|
||||
if delta := chosen.current.TotalKM - chosen.previous.TotalKM; delta < 23 || delta > 24 {
|
||||
t.Fatalf("delta = %v, want about 23.1", delta)
|
||||
}
|
||||
}
|
||||
|
||||
func TestDailySourceLastBuildsCandidateKeysBySourceIP(t *testing.T) {
|
||||
sourceA := dailySourceLast{
|
||||
VIN: "LA9GG64L7PBAF4001",
|
||||
SourceKey: normalizedSourceKey("JT808", "13307765812", "", "115.231.168.135:20215"),
|
||||
Phone: "13307765812",
|
||||
SourceEndpoint: "115.231.168.135:20215",
|
||||
TotalKM: 4123.9,
|
||||
}
|
||||
sourceB := dailySourceLast{
|
||||
VIN: "LA9GG64L7PBAF4001",
|
||||
SourceKey: normalizedSourceKey("JT808", "13307765812", "", "115.231.168.135:42630"),
|
||||
Phone: "13307765812",
|
||||
SourceEndpoint: "115.231.168.135:42630",
|
||||
TotalKM: 4100.8,
|
||||
}
|
||||
if sourceA.SourceKey != sourceB.SourceKey {
|
||||
t.Fatalf("same source IP should produce same source key: %q vs %q", sourceA.SourceKey, sourceB.SourceKey)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user