From 93aac25ca4b856fc54461e755d3265c797a09489 Mon Sep 17 00:00:00 2001 From: Dmitry Spikhalskiy Date: Mon, 7 Mar 2022 22:30:02 -0500 Subject: [PATCH] Add test for an expected format of Datetime search attribute --- common/searchattribute/encode_value_test.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/common/searchattribute/encode_value_test.go b/common/searchattribute/encode_value_test.go index fe6a15aeb2c2..79d616b71e10 100644 --- a/common/searchattribute/encode_value_test.go +++ b/common/searchattribute/encode_value_test.go @@ -27,6 +27,7 @@ package searchattribute import ( "errors" "testing" + "time" "github.com/stretchr/testify/assert" enumspb "go.temporal.io/api/enums/v1" @@ -125,4 +126,13 @@ func Test_EncodeValue(t *testing.T) { assert.NoError(err) assert.Equal(`"qwe"`, string(encodedPayload.GetData())) assert.Equal("Text", string(encodedPayload.Metadata["type"])) + + var expectedEncodedRepresentation = "2022-03-07T21:27:35.986848-05:00" + timeValue, err := time.Parse(time.RFC3339, expectedEncodedRepresentation) + assert.NoError(err) + encodedPayload, err = EncodeValue(timeValue, enumspb.INDEXED_VALUE_TYPE_DATETIME) + assert.NoError(err) + assert.Equal(`"`+expectedEncodedRepresentation+`"`, string(encodedPayload.GetData()), + "Search Attributes are expected to be encoded in RFC 3339 format") + assert.Equal("Datetime", string(encodedPayload.Metadata["type"])) }