// Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 package indexer import ( "testing" "time" "github.com/hashicorp/nomad/ci" "github.com/stretchr/testify/require" ) func Test_IndexFromTimeQuery(t *testing.T) { ci.Parallel(t) testCases := []struct { inputArg interface{} expectedOutputBytes []byte expectedOutputError error name string }{ { inputArg: &TimeQuery{ Value: time.Date(1987, time.April, 13, 8, 3, 0, 0, time.UTC), }, expectedOutputBytes: []byte{0x0, 0x0, 0x0, 0x0, 0x20, 0x80, 0x9b, 0xb4}, expectedOutputError: nil, name: "generic test 1", }, { inputArg: &TimeQuery{ Value: time.Date(2022, time.April, 27, 14, 12, 0, 0, time.UTC), }, expectedOutputBytes: []byte{0x0, 0x0, 0x0, 0x0, 0x62, 0x69, 0x4f, 0x30}, expectedOutputError: nil, name: "generic test 2", }, } for _, tc := range testCases { t.Run(tc.name, func(t *testing.T) { actualOutput, actualError := IndexFromTimeQuery(tc.inputArg) require.Equal(t, tc.expectedOutputError, actualError) require.Equal(t, tc.expectedOutputBytes, actualOutput) }) } }