| 695 | } |
| 696 | |
| 697 | func TestExpr_readme_example(t *testing.T) { |
| 698 | env := map[string]any{ |
| 699 | "greet": "Hello, %v!", |
| 700 | "names": []string{"world", "you"}, |
| 701 | "sprintf": fmt.Sprintf, |
| 702 | } |
| 703 | |
| 704 | code := `sprintf(greet, names[0])` |
| 705 | |
| 706 | program, err := expr.Compile(code, expr.Env(env)) |
| 707 | require.NoError(t, err) |
| 708 | |
| 709 | output, err := expr.Run(program, env) |
| 710 | require.NoError(t, err) |
| 711 | |
| 712 | require.Equal(t, "Hello, world!", output) |
| 713 | } |
| 714 | |
| 715 | func TestExpr(t *testing.T) { |
| 716 | date := time.Date(2017, time.October, 23, 18, 30, 0, 0, time.UTC) |