package systemtables

import (
	"context"
	"testing"

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

func TestFixedSchemaVersionProvider(t *testing.T) {
	cfg := config.SchemaVersionConfig{
		Strategy: "fixed",
		Fixed:    "00000000-0000-0000-0000-000000000001",
	}
	provider, err := newSchemaVersionProvider(cfg, nil)
	if err != nil {
		t.Fatalf("provider init failed: %v", err)
	}
	value, err := provider.Current(context.Background(), "user", "pass")
	if err != nil {
		t.Fatalf("current failed: %v", err)
	}
	if value != cfg.Fixed {
		t.Fatalf("unexpected current schema version: %s", value)
	}
	value, err = provider.Bump(context.Background(), "user", "pass")
	if err != nil {
		t.Fatalf("bump failed: %v", err)
	}
	if value != cfg.Fixed {
		t.Fatalf("unexpected bumped schema version: %s", value)
	}
}
