Пример #1
0
        public void AllSelected()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.Maps, true);
            var capability = cf.Capabilities.Capability(SystemCapability.Maps) as MapsCapability;

            capability.Airplane    = true;
            capability.Bike        = true;
            capability.Bus         = true;
            capability.Car         = true;
            capability.Ferry       = true;
            capability.Other       = true;
            capability.Pedestrian  = true;
            capability.RideSharing = true;
            capability.Streetcar   = true;
            capability.Subway      = true;
            capability.Taxi        = true;
            capability.Train       = true;
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("Maps.pbxproj", TestPBXFilePath);
            CompareInfoPlistFiles("MapsAll.plist", TestInfoPlistFilePath);
        }
        public void InAppPurchase()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.InAppPurchase, true);
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("InAppPurchase.pbxproj", TestPBXFilePath);
        }
        public void NoneSelected()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.NetworkExtensions, true);
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("NetworkExtensions.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("NetworkExtensionsNone.entitlements", TestEntitlementsFilePath);
        }
Пример #4
0
        public void HotspotConfiguration()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.HotspotConfiguration, true);
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("HotspotConfiguration.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("HotspotConfiguration.entitlements", TestEntitlementsFilePath);
        }
Пример #5
0
        public void Empty()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.KeychainSharing, true);
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("KeychainSharing.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("KeychainSharingEmpty.entitlements", TestEntitlementsFilePath);
        }
Пример #6
0
        public void GameCenter()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.GameCenter, true);
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("GameCenter.pbxproj", TestPBXFilePath);
            CompareInfoPlistFiles("GameCenter.plist", TestInfoPlistFilePath);
        }
Пример #7
0
        public void NoneTVOS()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Platform = BuildPlatform.tvOS;
            cf.Capabilities.EnableCapability(SystemCapability.GameControllers, true);
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("GameControllersTVOS.pbxproj", TestPBXFilePath);
            CompareInfoPlistFiles("GameControllersNoneTVOS.plist", TestInfoPlistFilePath);
        }
        public void HealthKit()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.HealthKit, true);
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("HealthKit.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("HealthKit.entitlements", TestEntitlementsFilePath);
            CompareInfoPlistFiles("HealthKit.plist", TestInfoPlistFilePath);
        }
Пример #9
0
        public void DataProtectionTVOS()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Platform = BuildPlatform.tvOS;
            cf.Capabilities.EnableCapability(SystemCapability.DataProtection, true);
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("DataProtection.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("DataProtection.entitlements", TestEntitlementsFilePath);
        }
Пример #10
0
        public void Entry()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.ApplePay, true);
            var capability = cf.Capabilities.Capability(SystemCapability.ApplePay) as ApplePayCapability;

            capability.MerchantIds.Add("merchant.uk.co.egomotion.egoxproject.merch1");
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("ApplePay.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("ApplePayEntry.entitlements", TestEntitlementsFilePath);
        }
Пример #11
0
        public void Bus()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.Maps, true);
            var capability = cf.Capabilities.Capability(SystemCapability.Maps) as MapsCapability;

            capability.Bus = true;
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("Maps.pbxproj", TestPBXFilePath);
            CompareInfoPlistFiles("MapsBus.plist", TestInfoPlistFilePath);
        }
        public void Entry()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.AssociatedDomains, true);
            var capability = cf.Capabilities.Capability(SystemCapability.AssociatedDomains) as AssociatedDomainsCapability;

            capability.AssociatedDomains.Add("webcredentials:egomotion.co.uk");
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("AssociatedDomains.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("AssociatedDomainsEntry.entitlements", TestEntitlementsFilePath);
        }
Пример #13
0
        public void CloudKit()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.iCloud, true);
            var capability = cf.Capabilities.Capability(SystemCapability.iCloud) as ICloudCapability;

            capability.CloudKit = true;
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("iCloudCloudKit.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("iCloudCloudKit.entitlements", TestEntitlementsFilePath);
        }
        public void LocationUpdates()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.BackgroundModes, true);
            var capability = cf.Capabilities.Capability(SystemCapability.BackgroundModes) as BackgroundModesCapability;

            capability.LocationUpdates = true;
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("BackgroundModes.pbxproj", TestPBXFilePath);
            CompareInfoPlistFiles("BackgroundModesLocationUpdates.plist", TestInfoPlistFilePath);
        }
Пример #15
0
        public void AllTVOS()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Platform = BuildPlatform.tvOS;
            cf.Capabilities.EnableCapability(SystemCapability.GameControllers, true);
            var capability = cf.Capabilities.Capability(SystemCapability.GameControllers) as GameControllersCapability;

            capability.GameControllers = new GameControllersCapability.GameControllerType[] { GameControllersCapability.GameControllerType.ExtendedGamepad, GameControllersCapability.GameControllerType.MicroGamepad };
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("GameControllersTVOS.pbxproj", TestPBXFilePath);
            CompareInfoPlistFiles("GameControllersAllTVOS.plist", TestInfoPlistFilePath);
        }
Пример #16
0
        public void Entry()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.KeychainSharing, true);
            var capability = cf.Capabilities.Capability(SystemCapability.KeychainSharing) as KeychainSharingCapability;

            capability.KeychainGroups.Add("uk.co.egomotion.egoxproject.sampleapp");
            capability.KeychainGroups.Add("uk.co.egomotion.otherapp");
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("KeychainSharing.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("KeychainSharingEntry.entitlements", TestEntitlementsFilePath);
        }
Пример #17
0
        public void KeyValueTVOS()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Platform = BuildPlatform.tvOS;
            cf.Capabilities.EnableCapability(SystemCapability.iCloud, true);
            var capability = cf.Capabilities.Capability(SystemCapability.iCloud) as ICloudCapability;

            capability.KeyValueStorage = true;
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("iCloud.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("iCloudKeyValue.entitlements", TestEntitlementsFilePath);
        }
        public void ExternalAccCommsTVOS()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Platform = BuildPlatform.tvOS;
            cf.Capabilities.EnableCapability(SystemCapability.BackgroundModes, true);
            var capability = cf.Capabilities.Capability(SystemCapability.BackgroundModes) as BackgroundModesCapability;

            capability.ExternalAccComms = true;
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("BackgroundModesTVOS.pbxproj", TestPBXFilePath);
            CompareInfoPlistFiles("BackgroundModesExternalAccComms.plist", TestInfoPlistFilePath);
        }
Пример #19
0
        public void EntryTVOS()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Platform = BuildPlatform.tvOS;
            cf.Capabilities.EnableCapability(SystemCapability.AppGroups, true);
            var capability = cf.Capabilities.Capability(SystemCapability.AppGroups) as AppGroupsCapability;

            capability.AppGroups.Add("group.uk.co.egomotion.egoxproject.grp1");
            capability.AppGroups.Add("group.uk.co.egomotion.egoxproject.grp2");
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("AppGroups.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("AppGroupsEntry.entitlements", TestEntitlementsFilePath);
        }
Пример #20
0
        public void DocumentsCustomContainers()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.iCloud, true);
            var capability = cf.Capabilities.Capability(SystemCapability.iCloud) as ICloudCapability;

            capability.iCloudDocuments     = true;
            capability.UseCustomContainers = true;
            capability.CustomContainers.Add("iCloud.$(CFBundleIdentifier)");
            capability.CustomContainers.Add("iCloud.my.sample.egoxproject.container");
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("iCloud.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("iCloudDocumentsContainers.entitlements", TestEntitlementsFilePath);
        }
        public void AllSelected()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.NetworkExtensions, true);
            var capability = cf.Capabilities.Capability(SystemCapability.NetworkExtensions) as NetworkExtensionsCapability;

            capability.AppProxy      = true;
            capability.ContentFilter = true;
            capability.PacketTunnel  = true;
            capability.DNSProxy      = true;
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("NetworkExtensions.pbxproj", TestPBXFilePath);
            CompareEntitlementFiles("NetworkExtensionsAll.entitlements", TestEntitlementsFilePath);
        }
        public void All()
        {
            CreateOriginalCopies();
            var xpm = new XcodeProjectManipulator();

            Assert.True(xpm.Load(XcodeProjectPath));
            var cf = new XcodeChangeFile();

            cf.Capabilities.EnableCapability(SystemCapability.BackgroundModes, true);
            var capability = cf.Capabilities.Capability(SystemCapability.BackgroundModes) as BackgroundModesCapability;

            capability.ActsAsBTLEAcc       = true;
            capability.AudioAirplayPIP     = true;
            capability.BackgroundFetch     = true;
            capability.ExternalAccComms    = true;
            capability.LocationUpdates     = true;
            capability.NewsstandDownloads  = true;
            capability.RemoteNotifications = true;
            capability.UsesBTLEAcc         = true;
            capability.VOIP = true;
            Assert.True(xpm.ApplyChanges(cf));
            CompareProjectFiles("BackgroundModes.pbxproj", TestPBXFilePath);
            CompareInfoPlistFiles("BackgroundModesAll.plist", TestInfoPlistFilePath);
        }