Commit Graph

70 Commits

Author SHA1 Message Date
Dalton Claybrook 66b1db4b5c Add support for specifying the UI testing screenshot behavior in a scheme test action (#942)
* Support for specifying UI testing snapshot behavior in scheme test action

* Add tests for new screenshot scheme options

* Update changelog

* Add new fields to Scheme.Test json encoding

* Only save values to JSON if they aren't the defaults

* Using new defaults constants
2021-06-27 22:25:26 +10:00
freddi(Yuki Aki) 4233cc8578 Support runPostActionsOnFailure on build scheme (#1075)
* supports runPostActionsOnFailure on build scheme

* updates test for runPostActionsOnFailure

update runPostActionsOnFailure tests

* update Docs for runPostActionsOnFailure

* update change log

* Update CHANGELOG.md

* Update CHANGELOG.md
2021-05-06 12:54:33 +10:00
Stefano Mondino dfe7f28bcb Scheme config variants wrong assignment for similar config names (#976)
* Failing test for #975

* fixes #975

* chore: refactor to properly select a config from a collection with specific variant and config type
chore: updated changelog

* fix: lowercase compare on config variant names

* fix CI

* fix missing scheme for CI

* fix schemes for CI

* Update CHANGELOG.md

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>

* Update Sources/ProjectSpec/Config.swift

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>

* - fix compilation issue
- duplicated test for config variant name (uppercase/lowercase)

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-05-01 15:50:39 +10:00
Artem Semavin 0ac7a5f8c6 Added support for SelectedTests in schemes Test configuration. (#913)
* added support for selectedTests in test shemes

* added PR description to changelog

* CHANGELOG fix

* use presence of selectedTests for useTestSelectionWhitelist

Co-authored-by: Artem Semavin <Artem Semavin>
Co-authored-by: yonaskolb <yonaskolb@gmail.com>
2021-04-08 23:01:28 +10:00
André 209afcc898 Allowing override LastUpgradeCheck and LastUpgradeVersion (#1013)
* Allowing the property LastUpgradeCheck and LastUpgradeVersion to be overrided

* Updating changelod and project spec

* Updating changelog

Co-authored-by: André Lucas Ota <andrel.ota@PPM-SPO-6835.local>
Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-04-08 22:20:10 +10:00
Dale ff64a4a1cb Set error message for missing build targets in scheme (#1040)
* Set error message for missing build targets in scheme

The current behavior means it just crashes due to trying to force unwrap
a nil optional.

Note: A build target shouldn't really be needed, but this is just a
quick fix to get things moving again.

* Update changelog
2021-04-01 08:57:42 +11:00
freddi(Yuki Aki) cf88681749 Support macroExpansion on run scheme (#1036)
* allow to specify macroExpansion on schemes

* fix json parsing on macroExpansion

* set macroExpansion only launch scheme

* add test for macroExpansion

* add macroExpansion description

* add macroExpansion to Change Log

* Update CHANGELOG.md

* add App_Extension scheme for macroExpansion

* change example of macroExpansion in Fixtures project

* fix to keep back to keep back compatibility as possible

* Apply suggestions from code review

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-03-21 20:02:01 +11:00
freddi(Yuki Aki) f550d01678 Support askForAppToLaunch on profile scheme (#1035)
* add askForAppToLaunch to profile scheme

* add test

* add description for askForAppToLaunch

* add Change Log for askForAppToLaunch

* Update Docs/ProjectSpec.md
2021-03-17 18:10:04 +11:00
Joseph Colicchio ae186edb68 Bugfix/SimulateLocation Fix (#973)
* Preemptively fix compilation for latest XcodeProj

* Add StoreKitConfiguration to scheme and generator

* Add scheme generator test

* Fix and add tests

* Support StoreKitConfiguration in TargetScheme

* Set default type of `storekit` to `.none`

* Upgrade XcodeProj to 7.15.0

* Create struct for StoreKitConfiguration

* Update tests

* Add storekit configuration to test project

* Update changelog

* Update project spec

* Fix xcodeprojs

* Fix projects

* Capitalize String

* Update CHANGELOG.md

Co-authored-by: Gemma Barlow <gemmakbarlow@gmail.com>

* Refactor StoreKitConfiguration init from json

* Change `forWorkspace` to `pathPrefix` and add tests

* Replace StoreKitConfiguration struct with string + option

* Fix tests

* Update project spec

* Fixup changelog

* Add `See Options` to `storeKitConfiguration` in project spec

* Make `simulateLocation` respect `schemePathPrefix`

* Update docs

Co-authored-by: Gemma Barlow <gemmakbarlow@gmail.com>
2021-02-16 09:35:47 +11:00
Joseph Colicchio 50aedc4511 Feature/Store Kit Configuration (#964)
* Preemptively fix compilation for latest XcodeProj

* Add StoreKitConfiguration to scheme and generator

* Add scheme generator test

* Fix and add tests

* Support StoreKitConfiguration in TargetScheme

* Set default type of `storekit` to `.none`

* Upgrade XcodeProj to 7.15.0

* Create struct for StoreKitConfiguration

* Update tests

* Add storekit configuration to test project

* Update changelog

* Update project spec

* Fix xcodeprojs

* Fix projects

* Capitalize String

* Update CHANGELOG.md

Co-authored-by: Gemma Barlow <gemmakbarlow@gmail.com>

* Refactor StoreKitConfiguration init from json

* Change `forWorkspace` to `pathPrefix` and add tests

* Replace StoreKitConfiguration struct with string + option

* Fix tests

* Update project spec

* Fixup changelog

* Add `See Options` to `storeKitConfiguration` in project spec

Co-authored-by: Gemma Barlow <gemmakbarlow@gmail.com>
2021-02-15 11:58:16 +11:00
Elliott Williams 2601d39792 Support Linux by upgrading XcodeProj and Spectre (#988)
* Bump XcodeProj and Spectre

* Add LinuxMain.swift

* Linux test fixups

* Add CI job for ubuntu-latest

* Use URLs in glob logic to avoid Linux/Mac foundation inconsistencies

* fatalError when --enable-test-discovery is not used

* Update fixtures

They changed because of a bugfix in XcodeProj: https://github.com/tuist/XcodeProj/pull/563

* Update CHANGELOG.md
2020-11-24 11:28:41 +11:00
Cody Vandermyn 43177dec49 Select the first runnable target (#957)
* Select the first runnable target, if there is one

Instead of just selecting the first target as the scheme target, instead search for and select the first runnable target. If there are no runnables found, then select the first target.

* update docs
2020-09-29 16:44:53 +10:00
Brentley Jones 5ac96741bc Improved Application Extension scheme generation (#932)
* Default extensions to launchAutomaticallySubstyle "2"

* Don't use debugger launcher with extensions

Xcode schemes don't use the LLDB launcher, even when debugging is enabled.

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-09-06 15:40:32 +10:00
Bartosz Polaczyk 1d2a28490f Add custom lldinit for a scheme (#929)
* Add customLLDBInit

* Add changelog info to a valid bucket

* Update PR number

* Add fixture tests

Co-authored-by: Bartosz Polaczyk <bartoszp@spotify.com>
2020-08-12 16:13:47 +10:00
Cody Vandermyn 727a648623 Add ability to skip the entire test target (#916)
* add ability to skip the entire test target

* when skipped is true, add it to the toJSONValue dictionary

* Add changelog entry
2020-08-05 20:05:23 +10:00
Muhammad Muizzsuddin d68900e313 Fix app extension scheme generation (#899)
* Fix XCScheme generation for Extension

* Use schemeTarget
2020-07-26 22:17:32 +10:00
Yonas Kolb 7da953a488 swift format 2020-06-17 18:12:34 +10:00
Yonas Kolb 179eec45d9 rename executableName to executable 2020-06-17 17:23:17 +10:00
Joeri Djojosoeparto 7ec2f7f8e3 Feature: Ability to set executable to Ask to Launch (#871) 2020-05-29 07:53:48 -05:00
Igor Ranieri Elland 463db0616d Added ability to name executable target in schemes Run configuration. (#869) 2020-05-28 07:50:52 -05:00
Igor Ranieri Elland 92aaebb9d5 Added ability to name the executable target in schemes. (#866)
```
schemes:
  MyScheme:
    build:
      executable: MyExecutable
      targets:
      ...
```

Co-authored-by: Igor Ranieri Elland <igor.ranieri@de.bosch.com>
2020-05-20 08:05:03 -05:00
Brentley Jones 0319116f94 Prevent tests from being set as launch actions (#835)
When a scheme only contains a test target, and you want it to build when "Building for Run", you don't want the test target to be set as the launch action. This fixes that.

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-04-23 08:00:44 -05:00
Brentley Jones e44dcd3948 Set scheme actions to build step for TargetScheme (#823)
Adjusts the preActions and postActions of a TargetScheme to only be applied applied to the `build` step.
2020-04-13 23:30:46 +10:00
Sebastian Celis 0328fa03e7 Add improved support for simple iOS sticker packs (#824)
* Allow messages applications to skip the compile sources phase

By default, simple iOS sticker packs created in Xcode do not include
a compile sources phase. This change will allow messages applications
with an empty list of sources to skip that phase entirely.

* Add support for launchAutomaticallySubstyle in run schemes

This is especially important for simple iOS sticker packs that require
this run scheme setting to be set to 2 in order to run the scheme
properly.
2020-04-06 13:37:37 -05:00
Dalton Claybrook 039f6c31e7 Use remote-runnable launch actions for Apple Watch schemes (#798)
* Add support for using remote runnables with an Apple Watch scheme
2020-03-26 08:14:46 -05:00
Evan Coleman 0d714bb47e add buildImplicitDependencies to TargetScheme 2020-03-20 13:23:50 -04:00
ionutivan 5487e3ce18 add property stopOnEveryMainThreadCheckerIssue to the scheme, target scheme and generator 2020-03-04 17:21:18 +01:00
Bas van Kuijck f544dd36e6 Added a simulateLocation option in scheme specs (#756)
* Added a simulateLocation option in scheme specs

* Updated fixtures for simulateLocation

* Use fileGroups instead of sources
2020-01-23 09:12:06 -06:00
John Flanagan c52ed49a29 Prefer default Debug and Release configs 2020-01-14 21:40:12 -06:00
Kamil Pyć 9bf657cb1d Use full path for XcodeProj
This solves issue with relative project path.
2020-01-07 14:20:16 +01:00
Franz Busch bedbfef9cd Add support for language and region for targets 2019-12-04 09:35:56 +01:00
Ken Tominaga fd05b9ba08 Use Xcode.IDEFoundation.Launcher.PosixSpawn for TestAction when debugEnabled: false 2019-11-23 01:46:57 +09:00
yonaskolb 0e4e08bfc4 run swift format for Swift 5.1 2019-11-10 11:56:23 +11:00
Yuta Saito 3a810d1499 Add missing onlyGenerateCoverageForSpecifiedTargets which enables specific target coverage 2019-10-30 15:17:08 +09:00
yonaskolb d0d509c1a5 swiftformat 2019-10-27 22:37:41 +11:00
Yuta Saito f81adfe291 Merge branch 'external-target-ref' into test-coverage 2019-10-27 12:57:23 +09:00
Yuta Saito bbed01d1d6 Cache pbxproj by reference name 2019-10-27 09:23:35 +09:00
Yuta Saito d3560e7f6b Use convenience initializer for TargetReference.local 2019-10-27 09:11:27 +09:00
Yuta Saito 848dfe28ba Re-revert 'Throw error instead of fatalError' partially 2019-10-24 08:21:32 +09:00
Yuta Saito 31667516a5 Revert 'Throw error instead of fatalError' 2019-10-23 07:50:29 +09:00
Yuta Saito c432337ef7 Throw error instead of fatalError 2019-10-21 18:32:49 +09:00
Yuta Saito c2ab781acb Fix buildableName generation logic 2019-10-15 15:47:28 +09:00
Yuta Saito d978cf4df2 Rename ExternalProject -> ProjectReference 2019-10-15 15:10:01 +09:00
Yuta Saito 0a43435af3 Merge branch 'master' into external-target-ref 2019-10-10 23:38:45 +09:00
giginet 7386674fc3 Tweak whitespace 2019-10-03 01:06:07 +09:00
giginet 9061985686 Separate suitableConfig and defaultConfig 2019-10-03 01:05:15 +09:00
giginet fb05f675f1 Use defaultConfig(of:in:) 2019-10-02 23:57:17 +09:00
giginet 1c4f5442e6 Use default config 2019-10-02 23:04:02 +09:00
Yuta Saito a97e89b18c Fix passing targetReference 2019-09-24 15:04:40 +09:00
Yuta Saito 0595f07611 Resolve conflicts 2019-09-23 00:55:42 +09:00