* Step 1: Duplicate ASL Logger
This copies over the ASL logging system to a standalone Objective-C class.
* Step 2: Replace Logger with ObjC Implementation
This also moved the `forcedDebug` information to a property.
* Step 3: Remove unnecessary test methods
It does not seem necessary to drain the queue. If this is an issue on a platform I didn't test, we should implement the tests differently, such that surfacing the queue is not necessary.
* Style Fixes
* Test cleanup
* Removed FIRLoggerTest as they mostly actually test `GULASLLogger` functionality now.
* Renamed `GULLoggerInitializeASL` to `GULLoggerInitialize`.
* Use dot-notation for the defaultLogger class property.
* Removed unused debug only test methods.
* Rename FIRLoggerInitializeASL
* Style fixes
* ASL Logger cleanup and leaking
* Move ivar synthesis to the top of the implementation.
* Add dealloc logic to avoid leaking asl_obj memory.
* Add forced logic at the message level.
* GULLogger Testing
* Moved over old tests to correct ASLLogger location.
* Added new GULLogger tests
* Changed version `char *` to `NSString *`
* Tidied up some documentation
* Re-introduce ASL in the functions names
* os_log GULLogger Implementation
* Moved common logic from `GULASLLogger` to `GULLogger+Internal` class methods.
* Added `os_log` implementation of `GULLoggerSystem`
* Added `os_log` level information to `GULLoggerLevel`
* Removed unused test variable
TODO: Tests
* Remove iOS version check from ASLLogger
* Style Fixes
* Refer to ivar directly in property setter
* Refer to ivar directly in property setter
* Being os_log tests
* Setup dependency injection for os_log tests
* Rename C functions according to style and correctly test macOS version compatibility
* Further refinement of os_log testing
* Add Some OSLogger tests and update some ASLLogger ones
* Re-add getter for logLevel
* Fix up some warnings
* Remove private headers from local testing podspec
* More OSLogger tests & bug fixes
* Style Fixes
* Fix Travis build
* Update GULOSLoggerTest.m
* Do nt override method argument
* Fix test on tvOS
* Test Fixes
* Copybara test fixes
* PR Feedback
* Better mocking for Core Unit Tests
This includes NSNotificationCenter and NSUserDefaults to prevent
flaky tests and unit tests interfering with each other.
* Share variable for intervals being set.
* Remove unused static variable.
This was previously used in an iOS 7 comparison that was removed in
Firebase version 5.0.0.
* Remove unused test variable.