vendor tsgo

This commit is contained in:
2026-07-09 16:50:43 -04:00
parent c06ea2e5a4
commit 98978e4930
5804 changed files with 1556156 additions and 101 deletions

View File

@@ -0,0 +1,44 @@
package packagejson_test
import (
"testing"
"github.com/microsoft/typescript-go/internal/json"
"github.com/microsoft/typescript-go/internal/packagejson"
"gotest.tools/v3/assert"
)
func TestExpected(t *testing.T) {
t.Parallel()
type packageJson struct {
Name packagejson.Expected[string] `json:"name"`
Version packagejson.Expected[string] `json:"version"`
Exports packagejson.Expected[any] `json:"exports"`
Main packagejson.Expected[string] `json:"main"`
}
var p packageJson
jsonString := `{
"name": "test",
"version": 2,
"exports": null
}`
err := json.Unmarshal([]byte(jsonString), &p)
assert.NilError(t, err)
assert.Equal(t, p.Name.Valid, true)
assert.Equal(t, p.Name.Value, "test")
assert.Equal(t, p.Version.Valid, false)
assert.Equal(t, p.Version.Value, "")
assert.Assert(t, p.Exports.Null)
assert.Equal(t, p.Exports.Valid, false)
assert.Equal(t, p.Main.Valid, false)
assert.Equal(t, p.Main.Null, false)
assert.Equal(t, p.Main.Value, "")
}