github.com/expr-lang/expr@v1.16.9/patcher/with_timezone_test.go (about)

     1  package patcher_test
     2  
     3  import (
     4  	"testing"
     5  	"time"
     6  
     7  	"github.com/expr-lang/expr/internal/testify/require"
     8  
     9  	"github.com/expr-lang/expr"
    10  )
    11  
    12  func TestWithTimezone_date(t *testing.T) {
    13  	program, err := expr.Compile(`date("2024-05-07 23:00:00")`, expr.Timezone("Europe/Zurich"))
    14  	require.NoError(t, err)
    15  
    16  	out, err := expr.Run(program, nil)
    17  	require.NoError(t, err)
    18  	require.Equal(t, "2024-05-07T23:00:00+02:00", out.(time.Time).Format(time.RFC3339))
    19  }
    20  
    21  func TestWithTimezone_now(t *testing.T) {
    22  	program, err := expr.Compile(`now()`, expr.Timezone("Asia/Kamchatka"))
    23  	require.NoError(t, err)
    24  
    25  	out, err := expr.Run(program, nil)
    26  	require.NoError(t, err)
    27  	require.Equal(t, "Asia/Kamchatka", out.(time.Time).Location().String())
    28  }