aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/TestSupport.java
Commit message (Collapse)AuthorAge
* Replace all usages of Blaze's Preconditions class with guava.Gravatar tomlu2017-11-09
| | | | | | | | Blaze had its own class to avoid GC from varargs array creation for the precondition happy path. Guava now (mostly) implements these, making it unnecessary to maintain our own. This change was almost entirely automated by search-and-replace. A few BUILD files needed fixing up since I removed an export of preconditions from lib:util, which was all done by add_deps. There was one incorrect usage of Preconditions that was caught by error prone (which checks Guava's version of Preconditions) that I had to change manually. PiperOrigin-RevId: 175033526
* Export apple_host_system_env and target_apple_env through apple_common (as ↵Gravatar lberki2017-10-16
| | | | | | | | | opposed to only through ctx.fragments.apple) Progress towards #3424. RELNOTES: None. PiperOrigin-RevId: 172299240
* Move RuleConfiguredTarget to lib.analysis.configuredtargets.Gravatar gregce2017-09-19
| | | | | | This is a trivial change with a large file footprint. PiperOrigin-RevId: 169169864
* Automatic code cleanup.Gravatar cushon2017-09-15
| | | | PiperOrigin-RevId: 168802886
* Rename some of native declared providers according to the new naming scheme.Gravatar dslomov2017-08-21
| | | | | RELNOTES: None PiperOrigin-RevId: 165910455
* Move core test classes to lib.analysis.testGravatar ulfjack2017-08-11
| | | | | | | | These are depended upon by analysis code, so need to live in the same library as lib.analysis. Moving them here makes it possible to split the build-base library into separate libraries for analysis, execution, and rules. PiperOrigin-RevId: 164847161
* Better names for declared providers-related classes.Gravatar dslomov2017-08-01
| | | | | | | | Follows https://docs.google.com/document/d/1aAIVWvHPERDz2cv_PCFGwr8dvh5FcAkENFoRsNS4clk/. RELNOTES: None. PiperOrigin-RevId: 163728291
* Make native declared providers not implement TransitiveInfoCollection.Gravatar dslomov2017-07-12
| | | | | | | | | | | | (Almost) all native declared providers are accessed as such and not as native non-declared providers (inheritors of TransitiveInfoCollaction). There are still three providers that use TransitiveInfoCollection.WithLegacySkylarkName mechanism, I'll address them in the follow-up CL. RELNOTES: None. PiperOrigin-RevId: 161655315
* Add ActionEnvironment, which is a wrapper class for a fixed+inherited envGravatar ulfjack2017-06-28
| | | | | | | | | | | | | | | | We are currently tracking the action environment (computed from --action_env), and the test action environment (computed from --test_env, and not including the action env) as two pairs of fields, and a lot of callers haven't been updated to handle both parts (TestRunnerAction does, but many 'normal' actions don't). However, both parts have always both be handled, and moving them into a single abstraction makes it harder to accidentally miss one part. We'll subsequently need to update all the action implementations to use the new abstraction, and also update the Skylark API (or bypass it and always apply the action environment for all actions, except we don't know which configuration to use). PiperOrigin-RevId: 160386181
* Adds the new versions of the template substitutions into ios_test.Gravatar Sergio Campama2017-02-27
| | | | | | -- PiperOrigin-RevId: 148464084 MOS_MIGRATED_REVID=148464084
* Expose ios_device attributes to Skylark.Gravatar Googler2016-12-23
| | | | | | -- PiperOrigin-RevId: 142784138 MOS_MIGRATED_REVID=142784138
* Migrates TestEnvironmentProvider to using the new Skylark declared providers ↵Gravatar Sergio Campama2016-12-12
| | | | | | | | API. This enables creating a TestEnvironmentProvider from Skylark. -- PiperOrigin-RevId: 141775285 MOS_MIGRATED_REVID=141775285
* Add a specialized TransitiveInfoProviderMap to map TransitiveInfoProviders ↵Gravatar Googler2016-09-19
| | | | | | | | | | | | by class. TransitiveInfoProviderMap enforces that the provider implements the interface it's keyed by and provides accessors the reduce the amount of casting. This in general reduces boilerplate throughout wherever TransitiveInfoProviders are mapped by their class. Also add shorthand for adding a provider where it only implements TransitiveInfoProvider once, reducing the redundant specification of the TransitiveInfoProvider class. Infer the class as the exclusive direct implementor of TransitiveInfoProvider to account for special cases like AutoValue and LicenseProvider. -- MOS_MIGRATED_REVID=133386336
* Remove the useless flag "iossim" for the ↵Gravatar Googler2016-07-20
| | | | | | | | | //tools/objc/ios_test.sh.bazel_template. Also remove the iossim substitutions and runfiles in ios_test script register. []: -- MOS_MIGRATED_REVID=127911427
* Refactor how coverage support files get to test actions.Gravatar Lukacs Berki2016-06-29
| | | | | | | | | Previously we used labels in each configuration fragment that then got added to every test action. Instead, we now have a filegroup under //tools/test for coverage files that truly need to be on the inputs of every test action and collect language-specific support files in InstrumentedFilesProvider. This makes configuration creation simpler and makes it possible to turn --crosstool_top into something else other than a filegroup (previously, it was that filegroup that got added to every test action) -- MOS_MIGRATED_REVID=126170241
* By default, don't create the .runfiles/workspace/external/repo dirsGravatar Kristina Chodorow2016-05-27
| | | | | | | | | | | | RELNOTES[INC]: External runfiles will now be accessible only via their .runfiles/repo/path/to/target path, not .runfiles/workspace-name/external/repo/path/to/target. If code still needs to use the legacy path, it can set --legacy_external_runfiles temporarily, but should transition to using the default location as it is more portable (see https://groups.google.com/d/msg/bazel-discuss/_Xo14sf7fHw/g7wdatTGBgAJ for details). The --legacy_external_runfiles option will be removed for the next release. -- MOS_MIGRATED_REVID=123217489
* Review a number of action subclasses and update them according to the spec.Gravatar Ulf Adams2016-04-19
| | | | | | | | Consists of adding @Immutable annotations, adding final modifiers, and changing the types of fields to immutable types. -- MOS_MIGRATED_REVID=120221067
* ios_device attribute "xcode", which takes an "xcode_version" target to ↵Gravatar Chris Parsons2016-04-08
| | | | | | | | | select a specific xcode. RELNOTES: ios_device attribute "xcode", for declaring a specific xcode to use when selecting iOS simulators. -- MOS_MIGRATED_REVID=119317344
* Refactor spawnXcrunActionBuilder to take an explicit apple platform.Gravatar Chris Parsons2016-03-24
| | | | | | | | | This both starts to clean up the code (making it clearer which platform each action is targeted to, caller by caller), as well as allows callers to issue certain actions for platforms which are not implicitly ios. We'll still need to migrate callers onto the new method signature. -- MOS_MIGRATED_REVID=117982741
* Adds mcov tool label to IosTest.Gravatar Dmitry Shevchenko2016-03-21
| | | | | | | Adds source files to IosTest runfiles so that mcov/clang has access to them during coverage run. -- MOS_MIGRATED_REVID=117572134
* Add APPLE_COVERAGE env variable to coverage tools.Gravatar Dmitry Shevchenko2016-03-15
| | | | | | | | | This makes it possible to isolate coverage runs for Apple platforms and perform a different set of operations. RELNOTES: -- MOS_MIGRATED_REVID=117269972
* Get rid of duplicated strings for IosTest attributes because I'm always ↵Gravatar Dave MacLachlan2016-02-22
| | | | | | | | | paranoid of missing one when changing them, and it makes things so much easier when coding. R_FUTURE=schmitt,cparsons -- MOS_MIGRATED_REVID=115101461
* Make xctest extension for test bundles that have xctest=true defined. (It ↵Gravatar Dave MacLachlan2016-02-03
| | | | | | | used to be .app) -- MOS_MIGRATED_REVID=113775781
* Redesign xcode_config rule to be evaluated at the level of configuration ↵Gravatar Chris Parsons2016-02-01
| | | | | | | instead of target depss -- MOS_MIGRATED_REVID=113398355
* Use xcode_config build target for actions which need to resolve an xcode ↵Gravatar Chris Parsons2016-01-13
| | | | | | | version. -- MOS_MIGRATED_REVID=111978539
* Use Bazel Preconditions variant which avoids varargs array creationGravatar Mark Schaller2015-12-10
| | | | | | | Reduces garbage. -- MOS_MIGRATED_REVID=109914243
* Create AppleConfiguration and AppleCommandLineOptions, and move a few items ↵Gravatar Chris Parsons2015-11-10
| | | | | | | | | | | of configuration over to the apple package. This moves a small number of configuration items over. Future changes will mostly likely follow to move yet more items. The split here is necessary as it is not only objc-related rules which require information about apple platforms and configuration -- cc rules will need this information as well to pass appropriate args to clang. -- MOS_MIGRATED_REVID=107396114
* Propagate environment variables set with --test_env command line flag to the ↵Gravatar Googler2015-11-05
| | | | | | | | | test runner for ExperimentalIosTest. This is the first of two CLs. This CL allows templating and reading of the %(test_env)s variable. After this CL is released, another CL will introduce a the variable into ios_test.sh.bazel_template. -- MOS_MIGRATED_REVID=107141559
* Pass apple sdk information to ios_test test actionsGravatar Chris Parsons2015-10-27
| | | | | -- MOS_MIGRATED_REVID=106418732
* Include memleaks plugin support for experimental_ios_testGravatar Chris Parsons2015-10-21
| | | | | -- MOS_MIGRATED_REVID=105876178
* Rationalize copyright headersGravatar Damien Martin-Guillerez2015-09-25
| | | | | | | | | | | The headers were modified with `find . -type f -exec 'sed' '-Ei' 's|Copyright 201([45]) Google|Copyright 201\1 The Bazel Authors|' '{}' ';'` And manual edit for not Google owned copyright. Because of the nature of ijar, I did not modified the header of file owned by Alan Donovan. The list of authors were extracted from the git log. It is missing older Google contributors that can be added on-demand. -- MOS_MIGRATED_REVID=103938715
* Switch objc rules to standard coverage propagation using ↵Gravatar Peter Schmitt2015-09-22
| | | | | | | InstrumentedFilesCollector. -- MOS_MIGRATED_REVID=103642172
* Separate build-specific types and types inherent to Skylark.Gravatar Lukacs Berki2015-09-21
| | | | | -- MOS_MIGRATED_REVID=103374106
* Prevented catching/wrapping of InterruptedExceptions, especially in ↵Gravatar Florian Weikert2015-09-14
| | | | | | | BaseFunction. -- MOS_MIGRATED_REVID=102988766
* Make StdRedirect.dylib as a dependency of all ios_test and ↵Gravatar Googler2015-09-14
| | | | | | | | | experimental_ios_test, and pass in its path instead of using the one wrapped in the _deploy.jar file. Now we're still using iossim to launch the app when we invoke "blaze run", will change it in another CL. -- MOS_MIGRATED_REVID=102886514
* Change ios_test to reflect experimental_ios_test functionality on mac.Gravatar Chris Parsons2015-09-02
| | | | | -- MOS_MIGRATED_REVID=102046532
* Support coverage in experimental_ios_test.Gravatar Peter Schmitt2015-07-29
| | | | | | | | | | | Coverage depends on quite a few moving parts, several of which were changed for this test: - BuildConfiguration.getCoverageLabels() used to include gcov support, this is now replaced by the dedicated getGcovLabels() and a separate implicit attribute on TestBaseRule. This new attribute is then overridden in ExperimentalIosTest to use an xcode-compatible gcov. - Objc's TestSupport now correctly registers instrumented files and sets the necessary runfiles for collecting coverage. - ios_test's template exports gcda files for coverage computation after the test's execution. -- MOS_MIGRATED_REVID=99374435
* Add ios_lab_device support in experimental_ios_test.Gravatar Googler2015-07-21
| | | | | -- MOS_MIGRATED_REVID=98750733
* experimental_ios_test: Support non-xctestsGravatar Daniel Wagner-Hall2015-06-18
| | | | | -- MOS_MIGRATED_REVID=96245678
* Add plugin support to experimental_ios_testGravatar Daniel Wagner-Hall2015-05-08
| | | | | -- MOS_MIGRATED_REVID=93051778
* Add ios_test.sh.bazel_templateGravatar Daniel Wagner-Hall2015-05-04
| | | | | -- MOS_MIGRATED_REVID=92725547
* Pull out class for substitutionsGravatar Daniel Wagner-Hall2015-05-01
| | | | | -- MOS_MIGRATED_REVID=92474815
* ios_test: Export device-specific information on a providerGravatar Daniel Wagner-Hall2015-04-29
| | | | | -- MOS_MIGRATED_REVID=92366919
* Very basic XcTest support in BazelGravatar Daniel Wagner-Hall2015-04-28
-- MOS_MIGRATED_REVID=92267704