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.
The native name use `PDF` but this was not provided to the generator.
This also explains why `init` returned `nil` - it was not the common
unavailability of the selector, but the incorrect type name used.
references:
!unknown-type! UIGraphicsPdfRenderer bound
!unknown-type! UIGraphicsPdfRendererContext bound
!unknown-type! UIGraphicsPdfRendererFormat bound
If no sdk version (-sdk_version) is passed to the native
linker, it tries to infer the SDK version from the
path to the -syslibroot argument.
In our case we use a versioned path to Xcode, but a general
symlink without the SDK version:
/Applications/Xcode73.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk
which means ld picked up the Xcode version as the SDK version,
since that's the first number part of the path [1], so we'd
end up with libraries whose SDK version was 73.
So instead use an SDK path with the SDK version, so that ld
finds the SDK version instead of the Xcode version.
[1] 266f4401b9/src/ld/Options.cpp (L4005-L4020)https://bugzilla.xamarin.com/show_bug.cgi?id=41597
- On some machines/mono versions it appears that printing System.Windows.DependencyObject requires System.Xaml for some reason.
- Since the test is testing our resolution from the GAC and we don't care about the specifics, I'm just adding that reference. Which we also get from the GAC.
* Adjust ever changing AddressFormatingTest for iOS 10, which does
not output the country;
* Adjust Contact's ICNKeyDescriptor internal check;
* CLBeaconRegion.ProximityUuid does not return the original instance
anymore, but a different one with the same uuid;
* Add a small delta for Vector3 comparison in ModelIO tests;
* Adjust MapKit tests for pin color change and MapRect corner case;
* SecKeyTest with corner cases now pass (they failed before);
* SecPolicyIdentifier.AppleIDValidation does not report the OID it's
created from (migration?)
Note: some might be bugs that Apple will fix in later seeds
* Added Speech Framework bindings
* Ensured introspection test pass
* Ensured we link against Speech framework
* FIXME: SFSpeechRecordingRecognitionRequest is not in the public api
filled radar://26799291 https://trello.com/c/s6s6YKua
The types are not _publicly_ conforming to the protocols (i.e. the header
files don't mention them). However they do conform at runtime, which is
what the test check (so we must ignore them)
That was committed, commented, in f2105210, likely a mistake for testing
something :| and it's not working when called in iOS 10
reference:
[FAIL] GameplayKit.GKQuadTreeNode : Handle
and not a [Model] as it's not required and also cause failures,
which we need to investigate (and report an error or fix).
* UIRefreshControlHosting
* UITableViewDataSourcePrefetching
reference:
[FAIL] iOSApiProtocolTest.ApiProtocolTest.GeneralCase : 2 types do not really conform to the protocol interfaces
* Added CallKit Bindings
* Ensure CallKit.framework is linked
* Ensure CallKit passes introspection tests
* FIXME: https://trello.com/c/afWXDZ3A
Headers says CallKit is available on macOS 10.12
but uses AVAudioSession and it is iOS only
Opened Radar awaiting response.
The types are not _publicly_ conforming to the protocols (i.e. the header
files don't mention them). However they do conform at runtime, which is
what the test check (so we must ignore them)
Fix a false positive when a .ctor is exposed with paramaters using a
subclass of what the designated initializer is exposing.
reference:
[FAIL] UIKit.UIGraphicsPdfRenderer should re-expose UIGraphicsRenderer::.ctor(CGRect, UIGraphicsRendererFormat)
New filters are:
* CIClamp;
* CIHueSaturationValueGradient;
* CINinePartStretched;
* CINinePartTiled;
* CIThermal; and
* CIXRay
note: Definitions are not part of Apple's API diff, nor headers diff,
but semi-correct bindings can be generated from iOSCoreImageFiltersTest
commented code.
references:
[FAIL] iOSCoreImageFiltersTest.ApiCoreImageFiltersTest.CheckManagedFilters : Managed filters not found for CIClamp, CIHueSaturationValueGradient, CINinePartStretched, CINinePartTiled, CIThermal, CIXRay
[FAIL] iOSCoreImageFiltersTest.ApiCoreImageFiltersTest.CheckNativeFilters : 6 native filters missing: CIClamp, CIHueSaturationValueGradient, CINinePartStretched, CINinePartTiled, CIThermal, CIXRay
* [Security] Apple removed SSLSetSessionStrengthPolicy, which means we can't have the P/Invoke anymore either.
Since it causes native linker failures when not using dlsym
(which we've enabled by default now).
* [Security] Don't throw in SslContext.SetSessionStrengthPolicy.
Instead just write a debug message. This way it won't break
any existing code using this API.
Of note: NSLayoutConstraints.cs provides the generic methods, as the
generator currently does not know how to either annotate generic
return types (necesary to build), nor does it have "where" support.
UITraitCollection - re-indented to follow the tab convention.