Skip to content
  • Nathan Harris's avatar
    Refactor `RedisConnection` · ea7c755d
    Nathan Harris authored
    Motivation:
    
    During proposal review, and while working within the codebase, several issues were identified with how `RedisConnection` was architectured.
    
    Modifications:
    
    - Change implementation of `RedisConnection` in some areas for new logic of internal `ConnectionState`
    - Change behavior of logging in a few places
    - The initializer for `RedisConnection` is now **internal**
    - How users can override the default `ClientBootstrap` for a connection is by passing an instance to the `.connect` static method
    - Change unit tests to inherit from a common XCTestCase class that handles creation and cleanup of `RedisConnection` in tests
    - Remove Redis namespace enum
    
    Result:
    
    The API for `RedisConnection` should be much simpler, with the implementation being less buggy.
    
    This resolves issues #49, #54, and #57.
    ea7c755d