40 lines
1.4 KiB
Go
40 lines
1.4 KiB
Go
package tasks
|
|
|
|
import (
|
|
"strings"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestBuildCanonicalHourlySummaryUnionCastsInventoryIDToBigInt(t *testing.T) {
|
|
start := time.Unix(1700000000, 0).UTC()
|
|
end := start.Add(24 * time.Hour)
|
|
|
|
query := buildCanonicalHourlySummaryUnion(start, end)
|
|
if !strings.Contains(query, `CAST(NULL AS BIGINT) AS "InventoryId"`) {
|
|
t.Fatalf("expected InventoryId cast to BIGINT in canonical hourly union query")
|
|
}
|
|
if !strings.Contains(query, `CAST(NULL AS TEXT) AS "EventKey"`) {
|
|
t.Fatalf("expected EventKey cast to TEXT in canonical hourly union query")
|
|
}
|
|
if !strings.Contains(query, `CAST(NULL AS TEXT) AS "CloudId"`) {
|
|
t.Fatalf("expected CloudId cast to TEXT in canonical hourly union query")
|
|
}
|
|
}
|
|
|
|
func TestBuildCanonicalDailyRollupSummaryUnionCastsInventoryIDToBigInt(t *testing.T) {
|
|
start := time.Unix(1700000000, 0).UTC()
|
|
end := start.AddDate(0, 1, 0)
|
|
|
|
query := buildCanonicalDailyRollupSummaryUnion(start, end)
|
|
if !strings.Contains(query, `CAST(NULL AS BIGINT) AS "InventoryId"`) {
|
|
t.Fatalf("expected InventoryId cast to BIGINT in canonical daily rollup union query")
|
|
}
|
|
if !strings.Contains(query, `CAST(NULL AS TEXT) AS "EventKey"`) {
|
|
t.Fatalf("expected EventKey cast to TEXT in canonical daily rollup union query")
|
|
}
|
|
if !strings.Contains(query, `CAST(NULL AS TEXT) AS "CloudId"`) {
|
|
t.Fatalf("expected CloudId cast to TEXT in canonical daily rollup union query")
|
|
}
|
|
}
|