package main

import (
	"testing"

	"github.com/spf13/pflag"
	"github.com/stretchr/testify/assert"
	"github.com/tidbcloud/metrics/internal/service/pipeline"
	"go.opentelemetry.io/collector/service"
)

func TestNewCommandFlagSet(t *testing.T) {
	factories, _ := pipeline.Components()
	params := service.CollectorSettings{
		Factories: factories,
	}

	validFlags := []string{"config", "set", "dbaas-config"}
	flagSet := newCommand(params).Flags()
	flagSet.VisitAll(func(f *pflag.Flag) {
		assert.Contains(t, validFlags, f.Name)
	})
}
