summaryrefslogtreecommitdiff
path: root/HutchTests/TicketBulkActionTests.swift
blob: 2f4d1fdcdf80d12b101cb4541b7774ee0c4d60d4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import Testing
@testable import Hutch

struct TicketBulkActionTests {

    @Test
    func bulkActionResultFormatsSuccessMessage() {
        let result = TicketBulkActionResult(
            action: .close,
            totalCount: 3,
            updatedCount: 3,
            unchangedCount: 0,
            failures: []
        )

        #expect(result.title == "Close Complete")
        #expect(result.message == "Closed 3 tickets.")
    }

    @Test
    func bulkActionResultFormatsPartialFailureMessage() {
        let result = TicketBulkActionResult(
            action: .assign,
            totalCount: 4,
            updatedCount: 2,
            unchangedCount: 1,
            failures: [
                TicketBulkActionFailure(ticketID: 42, message: "Network error")
            ]
        )

        #expect(result.title == "Assign Partially Applied")
        #expect(result.message == "Assigned 2 tickets. 1 already assigned. Failed: #42.")
    }
}