Skip to content

Latest commit

 

History

History
37 lines (24 loc) · 1.51 KB

File metadata and controls

37 lines (24 loc) · 1.51 KB

Braintree iOS Development Notes

This document outlines development practices that we follow while developing this SDK.

Development Merchant Server

The included demo app utilizes a sandbox sample merchant server hosted on Heroku.

SwiftLint

Ensure that you have SwiftLint installed as we utilize it within our project.

To install via Homebrew run:

brew install swiftlint

Our Xcode workspace has a Run Phase which integrates in SwiftLint so the only prerequisite is installing via Homebrew.

Style Guide

While we use SwiftLint in the SDK to adhere to a general style, there are some guidelines that are not able to be captured by our linter rules. Those guidelines are defined in our style guide. Please refer to these when developing for the SDK.

Tests

Each module has a corresponding unit test target. These can be run individually, or all at once via the UnitTests scheme.

To run the tests:

  1. Fetch test dependencies
    • pod install
  2. Run tests
    • xcodebuild test -workspace Braintree.xcworkspace -scheme UnitTests -destination 'platform=iOS Simulator,name=iPhone 14'
    • OR via the Xcode UI by selecting the UnitTests scheme + ⌘U

Note: Running the UI and IntegrationTests schemes follows the same steps as above, just replacing the UnitTests scheme name in step 3.

Releasing

Refer to the ios/releases section in the internal SDK Knowledge Repo.