summaryrefslogtreecommitdiffstats
path: root/dependencies/pkg/mod/github.com/goccy/go-yaml@v1.9.6/ast/ast_test.go
blob: e7022b604df00c79e83a9be8e66de0b627135dec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package ast

import (
	"testing"

	"github.com/goccy/go-yaml/token"
)

func TestEscapeSingleQuote(t *testing.T) {
	expected := `'Victor''s victory'`
	got := escapeSingleQuote("Victor's victory")
	if got != expected {
		t.Fatalf("expected:%s\ngot:%s", expected, got)
	}
}

func TestReadNode(t *testing.T) {
	t.Run("utf-8", func(t *testing.T) {
		value := "éɛทᛞ⠻チ▓🦄"
		node := &StringNode{
			BaseNode: &BaseNode{},
			Token:    &token.Token{},
			Value:    value,
		}
		expectedSize := len(value)
		gotBuffer := make([]byte, expectedSize)
		expectedBuffer := []byte(value)
		gotSize, _ := readNode(gotBuffer, node)
		if gotSize != expectedSize {
			t.Fatalf("expected size:%d\ngot:%d", expectedSize, gotSize)
		}
		if string(gotBuffer) != string(expectedBuffer) {
			t.Fatalf("expected buffer:%s\ngot:%s", expectedBuffer, gotBuffer)
		}
	})
}