Commit Graph
44 Commits
Author SHA1 Message Date
Ryan Wilson 19159a4b25 Fix tvOS storage issues. (#6658)
* Fix tvOS storage issues.

On tvOS devices, the ApplicationSupport directory cannot be used.
Unfortunately this doesn't come up in simulator testing, only on device.
This hasn't been fully tested on device but given that any writes to the
ApplicationSupport directory fail on tvOS, this change can't break much.

Fixes #6612

@defagos can you please give this a test?

* Fixed changed dir name for RC

* Fixed test naming, too.

* Fix the documentation comment for GoogleUtilities.

* Updated changelog.

* Review feedback
2020-10-08 11:28:41 -04:00
Maksym Malyhin a3a59c1bfc FIS: require projectID and valid API Key format (#6678)
* FIRInstallations validation: remove GCMSenderID fallback for missing projectID

* FIRInstallationsIDController: remove GCMSenderID fallback for  missing projectID

* Add API Key validation

* Changelog

* changelog

* Constant for API key lenght

* array] -> alloc] init]

* typo

* message

* ./scripts/style.sh

* Fix dummy API key in integration tests

* Update dummy API Keys to match the expected format

* debug test quickstart with no xcpretty

* fix debug

* Use debug QS repo branch

* print debug

* Add missing allowed characters `-`, `_`

* Nicer dummy API Keys

* Comment

* Revert "Use debug QS repo branch"

This reverts commit 69739dd6ae.

* Revert "fix debug"

This reverts commit 84fcbc7543.

* Revert "debug test quickstart with no xcpretty"

This reverts commit 1fa21ed62a.
2020-10-07 17:25:03 -04:00
karenyz f56afe9ba1 Remove deprecated RC APIs (#6637)
* Remove deprecated method declarations and implementations
2020-10-01 16:11:16 -07:00
Paul Beusterien 6a2b9a9556 Merge remote-tracking branch 'origin/master' into pb-merge-firebase7 2020-09-30 16:49:31 -07:00
karenyz fa9c24ad29 Clean up usage of deprecated methods in unit tests (#6618)
* Clean up usage of deprecated methods in unit tests

* Add back second namespace tests

* Remove test for setDefaults:namespace:
2020-09-30 15:37:28 -07:00
christibbs 416fb43748 Remove deprecated method in ABT public header (#6602)
* Remove deprecated method, implementation

* Replace call to deprecated method in RC, fix tests

* Update changelogs
2020-09-29 15:29:43 -04:00
Paul Beusterien f2bcd5d82b Make all GoogleUtilities APIs public (#6588) 2020-09-29 07:26:10 -07:00
Paul Beusterien 3ca4e99c0e Stop requiring pods to be static frameworks (#6557) 2020-09-28 14:08:16 -07:00
Paul Beusterien 40b805bccd Fix RemoteConfig sample (#6113) 2020-07-23 10:01:02 -07:00
Paul Beusterien 97e9eb32bf Fix internal ABT imports (#6108) 2020-07-22 11:17:56 -07:00
Paul Beusterien 19b65ead65 RC: Repo-relative imports and SwiftPM (#6015) 2020-07-10 14:25:05 -07:00
Paul Beusterien 2660d49c7d ABTesting - Repo-relative imports and SwiftPM (#6013) 2020-07-09 15:48:47 -07:00
christibbsandPaul Beusterien 9b484519f2 Remove Protobuf from the ABT SDK (#5890)
* Remove Protobuf dependency, add struct-ish class that mimics ABTExperimentPayload

* Remove a lot of the compiler errors, but not all of them. We need to figure out how RC serializes the NSData objects passed to FIRExperimentController in updateExperimentsWithServiceOrigin:

* Add ABTExperimentPayload class that replaces generated proto, refactor classes that depend on it

* Add unit testing class for ABTExperimentPayload

* Updates to ABTExperimentPayload API, tests for ABTConditionalUserPropertyTest, add tests for ABTExperimentPayload

* Update podspec to pull in testing resources

* Add utility class for parsing test files. Use it in ABTExperimentPayloadTests

* Fix FIRExperimentController tests

* Better documentation

* Run scripts/styles.sh

* Fix whitespace

* Remove protobuf imports

* Bump pod spec version for ABT SDK, depend on new ABT SDK in RC. Fix up RemoteConfigExperiment to use new ABTExperimentPayload object

* scripts/style.sh

* Update In-app messaging to use new ABTExperimentPayload class, which involves extending the ABTExperimentPayload initializer to accept different values for overflowPolicy and experimentStartTime

* Delete test payload

* Revert scripts/check_imports.swift

* Better initialization tags for ABTExperimentLite

* Update CHANGELOGs

* Remove private headers in podspec, use integerValue to parse integers

* Refactor ABTExperimentPayload header into Private headers. Fix integer types for millisecond metadata

* scripts/styles.sh

* Fix integer parsing

* Fix copyrights

* Fix CHANGELOG typo:

* Add private_header_files to public_header_files

* Try just using NSInteger for experimentStartTimeMillis

* Bump FIAM dependency on ABTesting

* Use long long for milli parameters (32-bit apps)

* Use longlong in test timestamps

* Don't cast to nsnumber in tests

* Use in64_t

* Fix Test Overflow

* Bump major version on ABT SDK

* Bump ABTesting version in Firebase.podspec

Co-authored-by: Paul Beusterien <paulbeusterien@google.com>
2020-07-06 13:06:39 -04:00
Paul Beusterien c07c89ee75 Repo-relative imports for Installations (#5832) 2020-06-17 07:26:40 -07:00
Paul Beusterien 3f556ddb9e Update GoogleUtilities' clients with repo-relative imports (#5824) 2020-06-16 09:05:29 -07:00
Paul Beusterien e15724a436 Migrate from interop pods to source_files header access (#5760) 2020-06-09 06:09:27 -07:00
Paul Beusterien d4621a636f Use preserve_paths instead of CocoaPods private (#5758) 2020-06-09 05:21:28 -07:00
Paul Beusterien 17933c5ac5 Import updates in unported tests (#5685) 2020-05-27 06:25:33 -07:00
Paul Beusterien cc233d68d8 Fake Remote Config console for testing (#5633) 2020-05-26 16:14:24 -07:00
Paul Beusterien 349608b6df Remove unused source file (#5639) 2020-05-19 17:37:43 -07:00
dmandar 4d1d9cd7de Add support for sending CFBundleVersion along with the CFBundleShortV… (#5452)
* Add support for sending CFBundleVersion along with the CFBundleShortVersionString.

* Style fixes.
2020-04-28 09:26:13 -07:00
Maksym Malyhin 3576a305fe Revert "Revert "Migrate from using IID SDK for Remote Config to the new FIS SDK (#5096)" (#5156)" (#5367)
This reverts commit 230d56260f.
2020-04-15 17:05:21 -04:00
Maksym Malyhin 230d56260f Revert "Migrate from using IID SDK for Remote Config to the new FIS SDK (#5096)" (#5156)
This reverts commit 887ff82494.
2020-03-19 19:02:50 -04:00
887ff82494 Migrate from using IID SDK for Remote Config to the new FIS SDK (#5096)
* Update podspec to replace IID with installations SDK.

* Update sample app podfile to include installations sdk.

* Source code changes to support migration to FIS. The FIS SDK now supports multi-app FIS ids and tokens.

* Update RC test app to use FIS SDK.

* WIP: Unit tests for incorporating FIS with Remote Config.

* Remote Config: fix Installations tests (#5109)

* Fix Installations tests.

* Fix Firebase/Auth version (#5106)

* Remote Config: enable ARC for tests.

* run ./scripts/style.sh

* Fix warnings

* Remote Config: enable ARC for tests. (#5108)

* Remote Config: enable ARC for tests.

* run ./scripts/style.sh

* Fix warnings

Co-authored-by: Paul Beusterien <paulbeusterien@google.com>

* Add the installations token as an HTTP header.

* Add changelog for FIS changes.

Co-authored-by: Maksym Malyhin <mmaksym@google.com>
Co-authored-by: Paul Beusterien <paulbeusterien@google.com>
2020-03-16 18:16:12 -07:00
Maksym Malyhin 3d4971b67b Remote Config: enable ARC for tests. (#5108)
* Remote Config: enable ARC for tests.

* run ./scripts/style.sh

* Fix warnings
2020-03-14 16:49:16 -04:00
christibbs 8f29236b8c Ignore deprecation warnings for FIRExperimentController.updateExperiments(serviceOrigin:events:policy:lastStartTime:payloads:) (#4934) 2020-02-19 13:04:36 -05:00
Paul Beusterien 2a9008af5c Fix portability of new test (#4923) 2020-02-18 15:33:41 -08:00
dmandar 90235b5e0d Reset RC per-instance userdefaults if config database was not found. (#4896)
* Reset the RC per-instance user defaults if the config database was not found.

* Add unit test.

* Ignore the non-object arguments when stubbing the fetchWithExpirationDuration method.

* Update changelog.
2020-02-14 15:07:57 -08:00
dmandar c2164aef8a Workaround for Unit Tests until #4877 is figured out. (#4882)
* Disable multi-instance tests until partial mocking for OCMock is figured out.

* Remove extra OCMStub.

* Explicitely cast partial mocks to id to stopMocking.

* Fix typo.
2020-02-11 08:25:28 -08:00
dmandar cb9e083f92 Make sure we turn of fetchInProgress flag on any fetch completion for error scenarios. Also add UT and add UT file to podspec. (#4844) 2020-02-06 12:55:55 -08:00
dmandar 3754b7e809 Do not continue with fetch if we do not get a valid IID. (#4745)
* Do not continue with fetch if we do not get a valid IID.

* Address review changes to test file.

* Update test file based on review comments.

* Fix warnings.

* Fix build.

* Fix build.
2020-02-03 14:56:42 -08:00
Maksym Malyhin 1bc3255436 Firebase Installations: validation of FIROptions parameters (#4683)
* FIS: Throw exception on incomplete Firebase config.

* API docs updated.

* FirebaseInstallations bump minor version: 1.1.0

* Fix tests

* Text fixed

* Make exception message more informative

* Fix Remote Config tests.

* Tests updated to use GCMSenderID if projectID is not available.

* Use `GCMSenderID` when `projectID` is not available.

* ./scripts/style.sh

* Comments

* GCMSenderID and projectID validation updated.

* Comment

* FirebaseInstallations: version bump to 1.0.1.

* FIS changelog

* FirebaseInstallations: version bump to 1.1.0

* FIS and Core changelogs.

* Changelogs remove GCMSenderID

* Typo

* Typo

* fix link

* Revert Core changelog

* FIS changelog fix.
2020-01-16 16:13:49 -05:00
dmandar f47ce4bbf3 Throw an error if the fetch response returns an error (irrespective o… (#4438)
* Throw an error if the fetch response returns an error (irrespective of status code).

* Remove duplicate metadata set call.

* Add comment.
2019-12-04 17:07:43 -08:00
dmandar 785c704d35 Internal code cleanup. (#4403)
* Minor code cleanup. Rename internal method, fix logging in test app.

* Rename fetchConfigWithExpirationDuration method in tests.

* Fix style.
2019-12-04 07:44:31 -08:00
dmandar 3b9fd3ddf9 Do not activate if fetch returns NO_CHANGE (#4260)
* Do not activate if a new fetch call has not resulted in any data change.

* Add tests.

* Fix style.

* Persist lastETagUpdateTime in the database.
2019-11-08 11:14:57 -08:00
dmandar 865e289614 Fix an issue around deleting records from the database. (#3926)
* Assign weakself to self.

* Add unit test.

* Style fixes.

* Address review comments.

* Review comments.
2019-09-27 23:02:42 -07:00
dmandar 14109c4ea2 Add RC test app. (#3819)
* Add RC test app.

* Add private header files to podspec used by 2P.

* Rename FIRRemoteConfig_Internal.h to FIRRemoteConfig_Private.h.

* Fix style.

* Add copyright notice.

* Fix relative path to RCNConfigSettings for tests.

* Fix style.

* Rename to FIRRemoteConfig_Private.h for unit tests.

* Rename to coorect relative path.
2019-09-11 10:55:39 -07:00
Paul Beusterien 6f249cae07 Fix Remote Config travis flakes (#3738) 2019-09-03 12:37:17 -07:00
Maksym Malyhin 1e889cf43c Remote Config pod spec lint fixes (#3717)
* Fix ExperimentPayload.pbobjc.h imports

* RemoteConfig tests: add missing headers to spec.

* Revert ExperimentPayload.pbobjc.h import for ABTesting sources.
2019-08-28 17:32:13 -04:00
dmandar f964056353 Recreate an NSURLSession for updates to the fetch timeout. (#3683) 2019-08-28 07:25:34 -07:00
Paul Beusterien 4422243a2b Fix RC test flake from deallocated Expectations (#3681) 2019-08-26 16:57:58 -07:00
Paul Beusterien e47dc20de5 Header path standards for copybara (#3668) 2019-08-26 16:11:15 -07:00
Paul Beusterien 2f5e4fdd95 Start RemoteConfig CI and fix/ignore warnings (#3649) 2019-08-22 13:37:44 -07:00
Paul Beusterien 9335275306 Open Sourcing Remote Config (#3645) 2019-08-21 14:26:41 -07:00