mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-10-31 16:24:11 +00:00
2cb6dc1cd9
* #9 Add snapshot testing library * #9 Create script to boot test simulators * #9 Create the UI test plan * #9 Create shared schemes for test targets * #9 Disable split view for UI tests * #9 Fix fastlane dependencies * #9 Add snapshot testing to the application * #9 assert screenshots * #9 fix swipe gestures on iPad * #9 Fix accessing items in session verification screen * #9 Workaround for flaky unit test * #9 Specify scheme for alpha build * #9 Add reference screenshots * Update python script path and check assets for png check * Update script path * Use static timezone for simulator time * Fix build after SwiftFormat * Add changelog * Upload failed screenshots artifact * Always upload artifacts * Update boot simulator script * Update simulator overridden time * Install pytz before tests * Get time from Ruby script * Disable SwiftUI animation when running UI tests * Update screenshots after animation setting * Include reference images in the artifact * Update matching precision * Update image matching precision & revert artifact content * Include Xcode result in the artifact * Update test output directory * Disable gradient on splash screen for tests * Tap next button explicitly * Wait a bit before checking alert * Wait 1 second * Run SwiftFormat on project * Ignore temporary screenshots * Fix most of the PR remarks * Fix conflicts * Bump Python version to 3 * Update reference screenshots for authentication screens * Update SwiftFormat * Fix flakey session verification test. * Update scheme. Co-authored-by: Doug <douglase@element.io>
119 lines
3.2 KiB
YAML
119 lines
3.2 KiB
YAML
name: ElementX
|
|
|
|
schemes:
|
|
ElementX:
|
|
analyze:
|
|
config: Debug
|
|
archive:
|
|
config: Release
|
|
build:
|
|
targets:
|
|
ElementX:
|
|
- running
|
|
- testing
|
|
- profiling
|
|
- analyzing
|
|
- archiving
|
|
profile:
|
|
config: Release
|
|
run:
|
|
config: Debug
|
|
test:
|
|
config: Debug
|
|
gatherCoverageData: true
|
|
coverageTargets:
|
|
- ElementX
|
|
targets:
|
|
- UnitTests
|
|
- UITests
|
|
|
|
targets:
|
|
ElementX:
|
|
type: application
|
|
platform: iOS
|
|
|
|
info:
|
|
path: ../SupportingFiles/Info.plist
|
|
properties:
|
|
UILaunchStoryboardName: LaunchScreen
|
|
CFBundleShortVersionString: $(MARKETING_VERSION)
|
|
CFBundleVersion: $(CURRENT_PROJECT_VERSION)
|
|
UISupportedInterfaceOrientations: [
|
|
UIInterfaceOrientationPortrait,
|
|
UIInterfaceOrientationPortraitUpsideDown,
|
|
UIInterfaceOrientationLandscapeLeft,
|
|
UIInterfaceOrientationLandscapeRight
|
|
]
|
|
appGroupIdentifier: $(APP_GROUP_IDENTIFIER)
|
|
|
|
settings:
|
|
base:
|
|
PRODUCT_NAME: ElementX
|
|
PRODUCT_BUNDLE_IDENTIFIER: io.element.elementx
|
|
APP_GROUP_IDENTIFIER: group.io.element
|
|
MARKETING_VERSION: 1.0.3
|
|
CURRENT_PROJECT_VERSION: 1
|
|
DEVELOPMENT_TEAM: 7J4U792NQT
|
|
CODE_SIGN_ENTITLEMENTS: ElementX/SupportingFiles/ElementX.entitlements
|
|
SWIFT_OBJC_BRIDGING_HEADER: ElementX/SupportingFiles/ElementX-Bridging-Header.h
|
|
|
|
preBuildScripts:
|
|
- name: 🛠 SwiftGen
|
|
runOnlyWhenInstalling: false
|
|
shell: /bin/sh
|
|
script: |
|
|
export PATH="$PATH:/opt/homebrew/bin"
|
|
if which swiftgen >/dev/null; then
|
|
swiftgen config run --config Tools/SwiftGen/swiftgen-config.yml
|
|
else
|
|
echo "warning: SwiftGen not installed, download from https://github.com/SwiftGen/SwiftGen"
|
|
fi
|
|
|
|
- name: 🧹 SwiftFormat
|
|
runOnlyWhenInstalling: false
|
|
shell: /bin/sh
|
|
script: |
|
|
export PATH="$PATH:/opt/homebrew/bin"
|
|
if which swiftformat >/dev/null; then
|
|
if [ $CONFIGURATION = "Debug" ]; then
|
|
swiftformat --lint --lenient "$PROJECT_DIR"
|
|
else
|
|
swiftformat --lint "$PROJECT_DIR"
|
|
fi
|
|
else
|
|
echo "warning: SwiftFormat not installed, download from https://github.com/nicklockwood/SwiftFormat"
|
|
fi
|
|
|
|
postBuildScripts:
|
|
- name: ⚠️ SwiftLint
|
|
runOnlyWhenInstalling: false
|
|
shell: /bin/sh
|
|
script: |
|
|
export PATH="$PATH:/opt/homebrew/bin"
|
|
if which swiftlint >/dev/null; then
|
|
swiftlint
|
|
else
|
|
echo "warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint"
|
|
fi
|
|
|
|
dependencies:
|
|
- package: MatrixRustSDK
|
|
- package: DesignKit
|
|
- package: AppAuth
|
|
- package: DTCoreText
|
|
- package: KeychainAccess
|
|
- package: Kingfisher
|
|
- package: Introspect
|
|
- package: SwiftyBeaver
|
|
- package: SwiftState
|
|
- package: GZIP
|
|
- package: Sentry
|
|
|
|
sources:
|
|
- path: ../Sources
|
|
excludes:
|
|
- Screens/Templates
|
|
- path: ../Resources
|
|
- path: ../SupportingFiles
|
|
- path: ../../Tools/Scripts/Templates/SimpleScreenExample/ElementX
|