package executor

import (
	"context"
	"strings"
	"testing"

	"github.com/everything-on-mysql/cassandra-on-mysql/internal/config"
	"github.com/everything-on-mysql/cassandra-on-mysql/pkg/cql/parser"
)

func TestExecuteCreateTriggerUnsupported(t *testing.T) {
	current := config.GetConfig()
	cfg := config.DefaultConfig()
	cfg.Features.MetadataOnlyTriggers = false
	config.SetConfig(cfg)
	t.Cleanup(func() {
		config.SetConfig(current)
	})

	exec := &Executor{}
	stmt := &parser.CreateTriggerStatement{
		Name:  "tr1",
		Table: &parser.TableName{Schema: "ks", Name: "tbl"},
		Using: "com.example.Trigger",
	}
	_, err := exec.executeCreateTrigger(context.Background(), "user", "pass", stmt)
	if err == nil {
		t.Fatal("expected error for unsupported trigger creation")
	}
	if !strings.Contains(err.Error(), "CREATE TRIGGER is not supported") {
		t.Fatalf("unexpected error: %v", err)
	}
}
