mirror of
https://github.com/RevenueCat/purchases-ios
synced 2026-11-09 22:35:56 +05:45
* Expose Checkpoints APIs behind a feature flag * Keep checkpoint APIs scoped to RevenueCatUI * Refine checkpoints manager initialization * Enable checkpoints for V1 snapshot tests * Expose checkpoints through a named Swift SPI * Fix checkpoint executor on unsupported platforms * Guard checkpoint presenter tests by platform * Rename checkpoints SPI for clarity
75 lines
2.3 KiB
Swift
75 lines
2.3 KiB
Swift
//
|
|
// Copyright RevenueCat Inc. All Rights Reserved.
|
|
//
|
|
// Licensed under the MIT License (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// https://opensource.org/licenses/MIT
|
|
//
|
|
// Project.swift
|
|
//
|
|
// Created by Rick van der Linden.
|
|
//
|
|
|
|
import ProjectDescription
|
|
import ProjectDescriptionHelpers
|
|
|
|
let storeKitConfigurationPath: Path =
|
|
"../../Tests/TestingApps/PaywallsTester/PaywallsTester/Products.storekit"
|
|
|
|
let project = Project(
|
|
name: "CheckpointTester",
|
|
organizationName: .revenueCatOrgName,
|
|
packages: .projectPackages,
|
|
settings: .appProject,
|
|
targets: [
|
|
.target(
|
|
name: "CheckpointTester",
|
|
destinations: [.iPhone, .iPad],
|
|
product: .app,
|
|
// Reuse PaywallsTester's existing products, workflows, and StoreKit configuration for this test app.
|
|
bundleId: Environment.paywallsTesterBundleId,
|
|
deploymentTargets: .iOS("16.0"),
|
|
infoPlist: .extendingDefault(
|
|
with: [
|
|
"UILaunchScreen": [
|
|
"UIColorName": "",
|
|
"UIImageName": "",
|
|
],
|
|
"REVENUECAT_API_KEY": .string(
|
|
Environment.rcApiKey ?? "$(REVENUECAT_API_KEY)"
|
|
),
|
|
]
|
|
),
|
|
sources: ["CheckpointTester/Sources/**/*.swift"],
|
|
dependencies: [
|
|
.revenueCat,
|
|
.revenueCatUI,
|
|
],
|
|
settings: .appTarget(
|
|
including: ([
|
|
"DEVELOPMENT_TEAM": "",
|
|
] as SettingsDictionary).appendingTuistSwiftConditions()
|
|
)
|
|
),
|
|
],
|
|
schemes: [
|
|
.scheme(
|
|
name: "CheckpointTester",
|
|
shared: true,
|
|
buildAction: .buildAction(
|
|
targets: ["CheckpointTester"],
|
|
findImplicitDependencies: true
|
|
),
|
|
runAction: .runAction(
|
|
configuration: "Debug",
|
|
executable: "CheckpointTester",
|
|
options: .options(
|
|
storeKitConfigurationPath: storeKitConfigurationPath
|
|
)
|
|
)
|
|
),
|
|
]
|
|
)
|