package sync

import (
	"testing"

	"git.mchus.pro/mchus/quoteforge/internal/localdb"
)

func TestPrioritizeProjectChanges(t *testing.T) {
	changes := []localdb.PendingChange{
		{ID: 1, EntityType: "configuration"},
		{ID: 2, EntityType: "project"},
		{ID: 3, EntityType: "configuration"},
		{ID: 4, EntityType: "project"},
	}

	sorted := prioritizeProjectChanges(changes)
	if len(sorted) != 4 {
		t.Fatalf("unexpected sorted length: %d", len(sorted))
	}

	if sorted[0].EntityType != "project" || sorted[1].EntityType != "project" {
		t.Fatalf("expected project changes first, got order: %s, %s", sorted[0].EntityType, sorted[1].EntityType)
	}
}
