mirror of
https://github.com/hanzoai/esbuild.git
synced 2026-09-24 16:58:50 +00:00
34 lines
910 B
Go
34 lines
910 B
Go
package runtime_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/evanw/esbuild/internal/compat"
|
|
"github.com/evanw/esbuild/internal/config"
|
|
"github.com/evanw/esbuild/internal/js_parser"
|
|
"github.com/evanw/esbuild/internal/logger"
|
|
"github.com/evanw/esbuild/internal/runtime"
|
|
)
|
|
|
|
func TestUnsupportedFeatures(t *testing.T) {
|
|
for key, feature := range compat.StringToJSFeature {
|
|
t.Run(key, func(t *testing.T) {
|
|
source := runtime.Source(feature)
|
|
log := logger.NewDeferLog(logger.DeferLogAll, nil)
|
|
|
|
js_parser.Parse(log, source, js_parser.OptionsFromConfig(&config.Options{
|
|
UnsupportedJSFeatures: feature,
|
|
TreeShaking: true,
|
|
}))
|
|
|
|
if log.HasErrors() {
|
|
msgs := "Internal error: failed to parse runtime:\n"
|
|
for _, msg := range log.Done() {
|
|
msgs += msg.String(logger.OutputOptions{IncludeSource: true}, logger.TerminalInfo{})
|
|
}
|
|
t.Fatal(msgs[:len(msgs)-1])
|
|
}
|
|
})
|
|
}
|
|
}
|