require_relative "test_helper" class TriageCheckTest < Minitest::Test def test_card_missing_both_labels_needs_triage assert Backlog::TriageCheck.needs_triage?([]) end def test_card_missing_priority_label_needs_triage assert Backlog::TriageCheck.needs_triage?(["semi"]) end def test_card_missing_autonomy_label_needs_triage assert Backlog::TriageCheck.needs_triage?(["P1"]) end def test_fully_labeled_card_does_not_need_triage refute Backlog::TriageCheck.needs_triage?(%w[P1 semi]) end def test_note_for_no_unlabeled_cards_is_nil assert_nil Backlog::TriageCheck.note_for("cc-os", [%w[P1 semi], %w[P0 hitl]]) end def test_note_for_counts_only_unlabeled_cards labels = [%w[P1 semi], [], ["P2"]] note = Backlog::TriageCheck.note_for("cc-os", labels) refute_nil note assert_includes note, "2 unlabeled Backlog cards on board cc-os" assert_includes note, "card-triage" assert_includes note, "haiku" assert_includes note, "background" end def test_note_for_singular_card_uses_singular_wording note = Backlog::TriageCheck.note_for("cc-os", [[]]) assert_includes note, "1 unlabeled Backlog card on board cc-os" refute_includes note, "1 unlabeled Backlog cards" end end