crossmate

A collaborative crossword app for iOS
Log | Files | Refs | LICENSE

PuzzleCatalogTests.swift (1126B)


      1 import Testing
      2 
      3 @testable import Crossmate
      4 
      5 @Suite("PuzzleCatalog")
      6 struct PuzzleCatalogTests {
      7     @Test("Bundled puzzle resources are discoverable")
      8     func bundledPuzzleResourcesAreDiscoverable() {
      9         let puzzles = PuzzleCatalog.bundledPuzzles()
     10 
     11         #expect(puzzles.count == 10)
     12         #expect(puzzles.map(\.title).contains("Crossmake #1"))
     13         #expect(puzzles.map(\.title).contains("Crossmake #10"))
     14         #expect(puzzles.allSatisfy { $0.cmVersion == XD.currentCmVersion })
     15         #expect(puzzles.map(\.id) == [
     16             "Crossmate-0001",
     17             "Crossmate-0002",
     18             "Crossmate-0003",
     19             "Crossmate-0004",
     20             "Crossmate-0005",
     21             "Crossmate-0006",
     22             "Crossmate-0007",
     23             "Crossmate-0008",
     24             "Crossmate-0009",
     25             "Crossmate-0010"
     26         ])
     27     }
     28 
     29     @Test("Debug puzzle resources are discoverable")
     30     func debugPuzzleResourcesAreDiscoverable() {
     31         let puzzles = PuzzleCatalog.debugPuzzles()
     32 
     33         #expect(puzzles.count == 3)
     34         #expect(puzzles.allSatisfy { $0.cmVersion == XD.currentCmVersion })
     35     }
     36 }