Skip to content

i2h3/rainmaker

Repository files navigation

Logo of Rainmaker

Rainmaker

Tests REUSE

A simple Swift library and CLI to access Nextcloud files programmatically. For further information, see the documentation which is built from the source code and deployed to GitHub pages.

Testing

The test suite runs entirely against static fixtures committed under Tests/RainmakerTests/Responses/, so swift test needs no server and runs on every platform.

These fixtures are generated automatically by the record-fixtures subcommand of rainmaker-cli (macOS with Docker only, never run in CI). It deploys ephemeral Nextcloud containers via NextcloudContainerManager, records the test suite against them, and verifies the captures replay without a server:

# Regenerate fixtures for all supported versions, then review and commit the diff.
swift run rainmaker-cli record-fixtures
git diff Tests/RainmakerTests/Responses

Scope a run with --version <tag> and --filter <substring>. See AGENTS.md for details.

License

See LICENSE.

Contributing

SwiftFormat was introduced into this project. Before submitting a pull request, please ensure that your code changes comply with the currently configured code style. You can run the following command in the root of the package repository clone:

swift package plugin --allow-writing-to-package-directory swiftformat --verbose --cache ignore

Also, there is a GitHub action run automatically which lints code changes in pull requests.