testing

XCTest—diseño, mocks, fixtures, SwiftLint/Slather, pruebas sin conexión, manifiestos de Linux.

npx skills add https://github.com/contentstack/contentstack-utils-swift --skill testing

Testing – Contentstack Utils Swift

When to use

  • Adding or changing tests under Tests/ContentstackUtilsTests/.
  • Debugging flaky tests; improving fixtures or mocks.

Runner and tooling

  • XCTest via swift test (SPM) and/or Xcode scheme ContentstackUtils-Package (ContentstackUtils.xcodeproj), matching .github/workflows/ci.yml.
  • SwiftLint: .swiftlint.yml; Tests/ContentstackUtilsTests/Constants.swift is excluded—other test files are linted.
  • Slather: .slather.yml ignores Tests/* in coverage reports; still add tests for new production code in Sources/ContentstackUtils/ when practical.

Test naming and layout

  • Target: ContentstackUtilsTests; path Tests/ContentstackUtilsTests/.
  • File names: *Tests.swift, *Test.swift, or feature-oriented names (GQLJsonToHtml.swift, JsonNodes.swift, VariantUtilityTests.swift).
  • Fixtures and mocks: Prefer JsonNodes.swift, JsonNodesHtmlResults.swift, EmbededModelMock.swift, CustomRenderOptionMock.swift, TestClient.swift, etc., before adding parallel helpers.

Integration vs unit

  • No separate integration tree: tests live in ContentstackUtilsTests with mocks for API-shaped payloads—no live network or credentials in CI.

Linux / discovery

  • Maintain XCTestManifests.swift if your workflow requires explicit Linux test discovery.

Secrets

  • Tests are offline; do not commit API keys or real tokens.

References

  • skills/dev-workflow/SKILL.md
  • skills/code-review/SKILL.md

Más skills de contentstack

brand-kit-assistant
contentstack
Advise users on Contentstack Brand Kit concepts, setup, governance, and on-brand AI generation. Route API-specific tasks to the right Brand Kit capability or…
official
cms-assets
contentstack
Asesorar a los desarrolladores sobre cómo organizar, entregar y transformar activos en Contentstack. Cubrir la estructura de carpetas, las transformaciones de la API de entrega de imágenes, la publicación…
official
cms-branches-aliases
contentstack
Asesorar a desarrolladores sobre el uso de ramas de Contentstack para desarrollo de contenido aislado y alias para implementaciones de contenido sin tiempo de inactividad. Cubrir estrategia de ramas, …
official
cms-data-modeling-best-practices
contentstack
Guía a los desarrolladores para modelar contenido en Contentstack usando la estructura reutilizable más simple. La habilidad explica cuándo usar tipos de contenido, referencias, global...
official
cms-entries
contentstack
Advise developers on querying, localizing, versioning, publishing, and structuring Contentstack entries for efficient delivery. Focus on CDA usage, reference…
official
cms-environments-publishing
contentstack
Asesorar a los desarrolladores sobre la configuración de entornos, la publicación de contenido, el uso de tokens de entrega y vista previa, el aprovechamiento de la Sync API y la comprensión de CDN y…
official
cms-live-preview-visual-builder-support-assistant
contentstack
Diagnostica y guía implementaciones de Contentstack Live Preview y Visual Builder. Rastrea el contexto de vista previa, identifica el contrato roto y recomienda la…
official
cms-localization
contentstack
Advise developers on Contentstack localization: language setup, fallback chains, localized vs unlocalized entries, non-localizable fields, and multi-locale…
official