Граф коммитов

67 Коммитов

Автор SHA1 Сообщение Дата
Timothy Risi 25468bf617 Merge Quote methods into a single class instead of multiple versions (#2153) 2017-06-06 12:32:25 -08:00
Rolf Bjarne Kvinge 4b4e14119d [xharness] Fix generated makefile to avoid generating duplicated targets. Fixes #56492. (#2129)
Rework how the two different xammac configurations are done, so that we don't
generate identical makefile targets for both variations (we'll generate a
single makefile target, and the configuration is selected using an environment
variable).

Fixes these makefile warnings:

Makefile-mac.inc:303: warning: overriding commands for target `build-mac-unified-xammac_tests'
Makefile-mac.inc:287: warning: ignoring old commands for target `build-mac-unified-xammac_tests'
Makefile-mac.inc:307: warning: overriding commands for target `clean-mac-unified-xammac_tests'
Makefile-mac.inc:291: warning: ignoring old commands for target `clean-mac-unified-xammac_tests'
Makefile-mac.inc:310: warning: overriding commands for target `exec-mac-unified-xammac_tests'
Makefile-mac.inc:294: warning: ignoring old commands for target `exec-mac-unified-xammac_tests'
Makefile-mac.inc:313: warning: overriding commands for target `run-mac-unified-xammac_tests'
Makefile-mac.inc:297: warning: ignoring old commands for target `run-mac-unified-xammac_tests'

https://bugzilla.xamarin.com/show_bug.cgi?id=56492
2017-05-25 07:11:36 +02:00
Rolf Bjarne Kvinge d395249480 [xharness] Set the test name correctly so that macOS and iOS variations of the same tests are grouped together in the html report. (#2082)
This affects introspection-ios/introspection-mac (which are now grouped in an
`introspection` test), and dontlink-mac (which now shows up in the `dont link`
tests).
2017-05-10 17:17:39 +02:00
Rolf Bjarne Kvinge 469133a8fd [ObjCRuntime] Remove XM limitation. Fixes #55857. (#2076)
* [ObjCRuntime] Remove XM limitation. Fixes #55857.

I can't remember why I added this limitation, and git history provides now
clues.

Everything compiles without the limitation, and the bug is fixed, so I can't
see a reason not to fix it.

https://bugzilla.xamarin.com/show_bug.cgi?id=55857

* [tests] Run xammac tests both in Debug and Release configurations.
2017-05-10 10:08:56 +02:00
Rolf Bjarne Kvinge 336dc74fa2 [tests] Convert mmp tests to a standard NUnit test library. (#2067)
* [tests] Convert mmp tests to a standard NUnit test library.

* [xharness] Add support for restoring nugets before building projects.

And restore nugets for tests-mac.sln before building mac test projects.
2017-05-08 13:20:01 +02:00
Rolf Bjarne Kvinge e19426e073 [tests] Don't create test packages by default. (#1941)
* [tests] Don't create test packages by default.

Don't create test packages by default, instead add a new target to create test
packages. This new target is called on wrench, which means the packages will
still be created when needed, but they won't be built locally in every build
(and if a packaged test fails to build, it won't fail the entire build).

* [tests] Use a project reference instead of assembly reference for GuiUnit.exe

Use a project reference instead of assembly reference for GuiUnit.exe, so that
the GuiUnit reference is automatically built if necessary.

This also makes it required to build a sln for Classic (since mdtool can't
find referenced projects from a csproj).
2017-03-30 18:01:15 +02:00
Rolf Bjarne Kvinge b41307bb7f Merge commit '2272efbb189d457dc6c599cefd875425baad92a5' into framework-sdk 2017-03-14 19:24:07 +01:00
Rolf Bjarne Kvinge ea1d8cc861 [tests] Fix mlaunch path, it's no longer shipped with Xamarin Studio. (#1842) 2017-03-08 20:01:10 +01:00
Rolf Bjarne Kvinge d212b97b1a Merge remote-tracking branch 'origin/master' into framework-sdk 2017-02-21 18:14:29 +01:00
Rolf Bjarne Kvinge 10890b020c Bump to a mlaunch that hopefully fixes #50419. (#1424)
https://bugzilla.xamarin.com/show_bug.cgi?id=50419
2017-02-17 16:03:40 +01:00
Rolf Bjarne Kvinge 9d672e86ce [xharness] Make the top-level test names identical between iOS and Mac.
Make the top-level test name for equivalent tests between iOS and Mac have the
same name, so that these tests are grouped together.

For instance: we used to have a System-Mac tests and System tests (the latter
being iOS tests), now there are just System tests, and nested inside are both
the Mac and iOS System tests.
2017-02-10 16:39:31 +01:00
Rolf Bjarne Kvinge 8a6d7cd0dd [tests] Add test for bug #43689. 2017-02-10 14:46:29 +01:00
Chris Hamons 2c835c5294 [XM] Add hybrid/standard AOT option and improve AOT code (#1650)
* [XM] Seperate parsing from compilation in AOT code

- Parsing command line options was too entangled with actually compiling
- Refactor test code to centralize Compile, reducing some complexity of tests
- Groundwork for hybrid vs non-hybrid AOT work

* Add hybrid/standard AOT support

* Add xammac_tests to makefile/jenkins

* Add flag to force AOT

* Disable MonoTouchFixtures.Contacts.ContactStoreTest.GetUnifiedContacts on XM due to prompts on Jenkins
2017-02-08 13:40:48 -06:00
Chris Hamons 1db1ce5a40 [XM] Add BCL tests (#1447) 2017-02-01 11:05:08 -05:00
Rolf Bjarne Kvinge c0c1136d70 [xharness] Get the INCLUDE_ make variables and disable tests accordingly. (#1578) 2017-01-27 10:52:49 +01:00
Rolf Bjarne Kvinge 9f02c44613 [xharness] Add support for using the system's Xamarin.iOS/Xamarin.Mac instead of a locally build one. (#1498)
* [tests] Use the target directory from the loaded configuration.

* [xharness] Find the root directory based on xharness.exe's location (unless specified).

* [tests] Add makefile target to generate test config using the system XI.
2017-01-16 07:24:14 +01:00
Rolf Bjarne Kvinge 3693700e17 [xharness] Update where we look for mlaunch. (#1479)
We're shipping mlaunch now, which means we have other file system locations
where it might be.

Also don't look in Xamarin Studio anymore, it will always be an old version,
instead check the system's Xamarin.iOS version.
2017-01-12 15:12:16 +01:00
Rolf Bjarne Kvinge 8391a3ca39 [xharness] Major rewrite (add server mode, add device support, add today extension support).
* Add a server mode, which launches a web server (and a web page) that can be
  used to interactively run tests and view their results.

* Add support for running test assemblies in a today extension (generating a
  new set of projects, similar to how we generate tvOS/watchOS projects based
  on the iOS project, we now generate a today extension project in addition to
  the tvOS and watchOS projects).

* Load all the different tests (and show them in the html report, although
  they show up as 'ignored'), even for disabled/ignored tests. This makes
  disabled/ignored tests more visible, and also makes it possible to actually
  run them using the embedded web server.

* Add support for running tests on device. Tests will be executed on multiple
  devices simulatenously (any connected devices will be used).
2017-01-05 13:08:48 +01:00
Rolf Bjarne Kvinge 321ac19918 [tests] Move a few template test files around. 2017-01-05 10:42:36 +01:00
Rolf Bjarne Kvinge c30614cd67 [xharness] Find config files based on the given root directory, and not the current directory. (#1441)
Xamarin Studio does funny things with the current directory sometimes when
launching executables, so this makes the behavior more consistent.
2017-01-04 17:05:04 -05:00
Rolf Bjarne Kvinge ab21da1b85 [xharness] Add support for uninstalling apps from device. (#1413)
The new error message / number is used in mlaunch.
2017-01-02 08:58:46 +01:00
Rolf Bjarne Kvinge 1f81e38a1f [jenkins] Try to show a backtrace for processes that time out. (#1358) 2016-12-16 12:24:08 +01:00
Rolf Bjarne Kvinge 33e778bd66 Bump maccore to get new mlaunch. (#1296)
* Bump maccore to get new mlaunch.

A new mlaunch that:

* Should have fewer random failures when launching watchOS apps.
* Supports launching extensions on device.
* Supports uninstalling apps from devices.
2016-12-03 01:53:36 +01:00
Chris Hamons 6fc5d5b527 [XM] Add 32-bit variants of apitest and introspection and fix bindings (#1234)
* [XM] Add 32-bit variants of apitest and introspection and fix bindings

- Previous to this we were only running 64-bit tests, which caused us
to make mistakes

* Fix cherry-pick to build

* Correctly skip jenkins XM45 when asked

* Fix logic

* Run 32-bit tests on Jenkins

* Fix Jenkins grouping by respecting -32 suffix

* More fixing of jenkins. This time make enum for 32-bit types
2016-11-30 16:38:32 +01:00
Rolf Bjarne Kvinge 43e6f82803 [xharness] Look for mlaunch next to mtouch. (#1243) 2016-11-25 12:37:02 +01:00
Rolf Bjarne Kvinge 7535eae204 [xharness] Fix mlaunch download if extraction dir already exists. (#1241) 2016-11-25 11:27:08 +01:00
Rolf Bjarne Kvinge 77d4769f54 [xharness] Make sure DownloadMlaunch isn't run multiple times simultaneously. (#1236) 2016-11-24 15:12:51 +01:00
Rolf Bjarne Kvinge 15b1204874 [xharness] Unify simulator selection code between Jenkins and Wrench and automatically create device pairs if none applicable is found. (#1202)
* [xharness] Don't crash if we can't find a simulator.

* [xharness] Create a device pair if none applicable is found.

* [xharness] Use an enum instead of string values for the target.

* [xharness] Unify the simulator selection code between Jenkins and Wrench.
2016-11-16 15:23:11 +01:00
Manuel de la Pena aa38ab68ac [Jenkins] Add nuint xml logs (#883)
* [Jenkins] Make test to write output as an xml file so that it can be parsed by the jenkins bot.

* Point to the correct Touvh.Unit repo.

* Use the available property to determine if we are being ran in Jenkins.

* Log where are test results stored.

* Add @MonkeyWrench: prefix.

* Ensure that we do set the build env in jenkins/run-tests.sh

* Do not mix Wrench with Jenkins. The reports in jenkins can be Xml, in Wrench we prefer the old style.

* Ensure that the main node of the unit tests does contain the target, that will improve the tests results reporting.

* Revert "Fix binding project LinkWithAttributes generation to prevent rebuilds" (#1018)

* Added xslt to be used to keep the old Test Reports until we move to only Jenkins reports.

* Add an extra log for the xslt transformation.

* Point to the correcto dir in jenkins.

* Deal with the xslt once we have finished rather than in a batch.

* Remove noise.

* Readd case removed in rebase.

* Fix indentation.

* Skip lock keychain.
2016-11-15 19:04:37 +01:00
Rolf Bjarne Kvinge 7bf290278c Bump maccore to get mlaunch changes. (#1143) 2016-11-09 16:14:59 +01:00
Sebastien Pouliot 8c93e7758d Merge branch 'xcode8.1' 2016-10-26 15:56:34 -04:00
Sebastien Pouliot ecf90178fa [tests] Update mlaunch executable to work with Xcode 8.1 GM 2016-10-24 18:28:18 -04:00
Rolf Bjarne Kvinge d940b592c8 [xharness] Fetch watch crash reports when running watch apps. (#973) 2016-10-11 19:30:11 +02:00
Sebastien Pouliot 0eff36c466 Bump Xcode 8.1 to beta 2 (#945)
* Bump Xcode 8.1 to beta 2
* Bump maccore to get simulator support fix
* [xharness] Get updated mlaunch binary. (#3)
2016-10-05 13:28:36 -04:00
Rolf Bjarne Kvinge 9000e48034 [tests] Remove Classic test projects, and make the Unified test projects the master projects. (#858) 2016-09-21 22:55:10 +02:00
Sebastien Pouliot 38148c718a Merge branch 'xcode8' 2016-09-09 15:29:37 -04:00
Sebastien Pouliot 9fe13aaa58 Bump for Xcode8 beta 6 (#610)
* Bump for Xcode8 beta 6

* Bump maccore (to bump maciostools) and update mlaunch download location to run tests on the simulator
2016-08-15 20:19:51 -04:00
Sebastien Pouliot ff77f85a4c Merge branch 'cycle8' into xcode8 2016-08-08 15:29:36 -04:00
Rolf Bjarne Kvinge 56fc26b26f [xharness] Split the mscorlib/System test run for watchOS into multiple executions. (#564)
* [tests] Implement filtering based on test name to make it possible to run a subset of tests manually.

* [xharness] Add support for passing environment variables to test apps.

* [xharness] Split the mscorlib/System test run for watchOS into multiple executions.

When running on a watch, the complete set of mscorlib and System tests use too
much memory, so they end up crashing the app.

So instead don't run all the tests in the same test run, but
instead split them up.

This splits the System tests in 5 different sets, based on the first
character of the test class name.

The mscorlib tests are split in 26 different sets, one for each
character (A-Z).
2016-08-05 22:28:13 +02:00
Rolf Bjarne Kvinge d22c7adcda [tests] Split mscorlib into two test assemblies. Fixes #41746. (#562)
On watchOS we can't include all the tests for device in a single
assembly, because the native object code becomes too big.

So instead split the tests into two assemblies. Luckily this
is fairly easy for test projects, since they have few dependencies
between source files (there are some however, so source files
are grouped per directory so that files in the same directory do
not end up in different test projects). There is also some hard-coded
logic.

https://bugzilla.xamarin.com/show_bug.cgi?id=41746
2016-08-05 21:04:46 +02:00
Rolf Bjarne Kvinge 4f3af5eefb [xharness] Simplify BCL project generation by merging iOS and tvOS logic. (#558) 2016-08-05 19:45:59 +02:00
Rolf Bjarne Kvinge 916838c7e3 [tests] Split mscorlib into two test assemblies. Fixes #41746. (#544)
On watchOS we can't include all the tests for device in a single
assembly, because the native object code becomes too big.

So instead split the tests into two assemblies. Luckily this
is fairly easy for test projects, since they have few dependencies
between source files (there are some however, so source files
are grouped per directory so that files in the same directory do
not end up in different test projects). There is also some hard-coded
logic.

https://bugzilla.xamarin.com/show_bug.cgi?id=41746
2016-08-04 15:47:05 +02:00
Rolf Bjarne Kvinge 2c892e2b02 [xharness] Get new mlaunch for beta 4. 2016-08-02 18:15:54 +02:00
Rolf Bjarne Kvinge d1d0e9a501 [xharness] Simplify BCL project generation by merging iOS and tvOS logic. (#480) 2016-07-25 15:01:14 -04:00
Sebastien Pouliot cf27c2e7a8 Merge branch 'cycle8' into xcode8 2016-07-13 16:43:00 -04:00
Sebastien Pouliot 8af1e47588 [tests] Change location to download mlaunch, old one is not available anymore (#352) 2016-07-06 19:40:27 -04:00
Sebastien Pouliot 88bccb268d [tests] Change location to download mlaunch, old one is not available anymore (#352) 2016-07-06 17:04:08 -04:00
Rolf Bjarne Kvinge 74312ec77c [xharness] Collect and report crash reports for Xamarin.Mac tests. (#316) 2016-06-29 09:21:03 -07:00
Rolf Bjarne Kvinge 455c741820 [xharness] Try to bump the launch timeout to 3 minutes. 2016-06-28 13:04:56 +02:00
Rolf Bjarne Kvinge c355cf91be [xharness] Refactor how we do simulator configuration.
Split out the code to prepare the simulator from the AppRunner class,
which is now just handling the logic required for each test run.

This way it's easier to handle simulator preparation for multiple
test runs with the same simulator.

Also revamp logging to avoid printing directly to the console, but
instead use the logging classes that permit redirecting logging
to a file. This makes the html report show better logging.
2016-06-28 13:04:47 +02:00