ably 1.1.4 → 1.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -0
- data/SPEC.md +289 -221
- data/ably.gemspec +2 -2
- data/lib/ably/modules/ably.rb +11 -1
- data/lib/ably/realtime/client.rb +1 -0
- data/lib/ably/rest/client.rb +13 -6
- data/lib/ably/rest/middleware/fail_if_unsupported_mime_type.rb +4 -1
- data/lib/ably/version.rb +1 -1
- data/spec/acceptance/realtime/connection_failures_spec.rb +26 -11
- data/spec/acceptance/realtime/connection_spec.rb +8 -5
- data/spec/acceptance/rest/base_spec.rb +8 -4
- data/spec/acceptance/rest/client_spec.rb +49 -14
- data/spec/shared/client_initializer_behaviour.rb +131 -0
- metadata +9 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 57c815b3e4e0dc7d47193fc7778dafa3d3dac69712b996c09e87e8021c0d739d
|
4
|
+
data.tar.gz: de4aecba3dd4d87986d11fdbbde09377b8d543b94ff165d2a89bb4526208fa07
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55548f44c758f2ea9aaa2c5f9ecdfb8a06c812513dd32417980fee828b8da193ea4418b574a312e12c2dfabc68dbb8116c906071549545a65772e2a2c4ad6fc4
|
7
|
+
data.tar.gz: 3595470c751c1972c27f9914a7da1313c0479d93bb4e1bfcd8157821db0411e6f5c8729fb18eddbf7e4007b59a10e95c6cbd18c00d5b9ef7bc08f3f5f5de6d4b
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,14 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## [v1.1.5](https://github.com/ably/ably-ruby/tree/v1.1.5)
|
4
|
+
|
5
|
+
[Full Changelog](https://github.com/ably/ably-ruby/compare/v1.1.4...v.1.1.5)
|
6
|
+
|
7
|
+
**Implemented enhancements:**
|
8
|
+
|
9
|
+
- Upgrade to support HTTP/2 [\#192](https://github.com/ably/ably-ruby/issues/192), fixed in [\#197](https://github.com/ably/ably-ruby/pull/197) ([mattheworiordan](https://github.com/mattheworiordan))
|
10
|
+
- Default fallback hosts for custom environments [\#232](https://github.com/ably/ably-ruby/issues/232), fixed in [\#196](https://github.com/ably/ably-ruby/pull/196) ([mattheworiordan](https://github.com/mattheworiordan), [owenpearson](https://github.com/owenpearson), [lmars](https://github.com/lmars))
|
11
|
+
|
3
12
|
## [v1.1.4](https://github.com/ably/ably-ruby/tree/v1.1.4)
|
4
13
|
|
5
14
|
[Full Changelog](https://github.com/ably/ably-ruby/compare/v1.1.3...v1.1.4)
|
data/SPEC.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Ably Realtime & REST Client Library 1.1.
|
1
|
+
# Ably Realtime & REST Client Library 1.1.5 Specification
|
2
2
|
|
3
3
|
### Ably::Realtime::Auth
|
4
4
|
_(see [spec/acceptance/realtime/auth_spec.rb](./spec/acceptance/realtime/auth_spec.rb))_
|
@@ -600,123 +600,124 @@ _(see [spec/acceptance/realtime/connection_failures_spec.rb](./spec/acceptance/r
|
|
600
600
|
* request fails due to slow response and subsequent timeout
|
601
601
|
* [the connection moves to the disconnected state and tries again, returning again to the disconnected state (#RSA4c, #RSA4c1, #RSA4c2)](./spec/acceptance/realtime/connection_failures_spec.rb#L127)
|
602
602
|
* request fails once due to slow response but succeeds the second time
|
603
|
-
* [the connection moves to the disconnected state and tries again, returning again to the disconnected state (#RSA4c, #RSA4c1, #RSA4c2)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
603
|
+
* [the connection moves to the disconnected state and tries again, returning again to the disconnected state (#RSA4c, #RSA4c1, #RSA4c2)](./spec/acceptance/realtime/connection_failures_spec.rb#L175)
|
604
604
|
* existing CONNECTED connection
|
605
605
|
* authorize request failure leaves connection in existing condition
|
606
|
-
* [the connection remains in the CONNECTED state and authorize fails (#RSA4c, #RSA4c1, #RSA4c3)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
606
|
+
* [the connection remains in the CONNECTED state and authorize fails (#RSA4c, #RSA4c1, #RSA4c3)](./spec/acceptance/realtime/connection_failures_spec.rb#L196)
|
607
607
|
* with auth_callback
|
608
608
|
* opening a new connection
|
609
609
|
* when callback fails due to an exception
|
610
|
-
* [the connection moves to the disconnected state and tries again, returning again to the disconnected state (#RSA4c, #RSA4c1, #RSA4c2)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
610
|
+
* [the connection moves to the disconnected state and tries again, returning again to the disconnected state (#RSA4c, #RSA4c1, #RSA4c2)](./spec/acceptance/realtime/connection_failures_spec.rb#L224)
|
611
611
|
* existing CONNECTED connection
|
612
612
|
* when callback fails due to the request taking longer than realtime_request_timeout
|
613
|
-
* [the authorization request fails as configured in the realtime_request_timeout (#RSA4c, #RSA4c1, #RSA4c3)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
613
|
+
* [the authorization request fails as configured in the realtime_request_timeout (#RSA4c, #RSA4c1, #RSA4c3)](./spec/acceptance/realtime/connection_failures_spec.rb#L255)
|
614
614
|
* automatic connection retry
|
615
615
|
* with invalid WebSocket host
|
616
616
|
* when disconnected
|
617
|
-
* [enters the suspended state after multiple attempts to connect](./spec/acceptance/realtime/connection_failures_spec.rb#
|
617
|
+
* [enters the suspended state after multiple attempts to connect](./spec/acceptance/realtime/connection_failures_spec.rb#L320)
|
618
618
|
* for the first time
|
619
|
-
* [reattempts connection immediately and then waits disconnected_retry_timeout for a subsequent attempt](./spec/acceptance/realtime/connection_failures_spec.rb#
|
619
|
+
* [reattempts connection immediately and then waits disconnected_retry_timeout for a subsequent attempt](./spec/acceptance/realtime/connection_failures_spec.rb#L341)
|
620
620
|
* #close
|
621
|
-
* [transitions connection state to :closed](./spec/acceptance/realtime/connection_failures_spec.rb#
|
621
|
+
* [transitions connection state to :closed](./spec/acceptance/realtime/connection_failures_spec.rb#L358)
|
622
622
|
* when connection state is :suspended
|
623
|
-
* [stays in the suspended state after any number of reconnection attempts](./spec/acceptance/realtime/connection_failures_spec.rb#
|
623
|
+
* [stays in the suspended state after any number of reconnection attempts](./spec/acceptance/realtime/connection_failures_spec.rb#L377)
|
624
624
|
* for the first time
|
625
|
-
* [waits suspended_retry_timeout before attempting to reconnect](./spec/acceptance/realtime/connection_failures_spec.rb#
|
625
|
+
* [waits suspended_retry_timeout before attempting to reconnect](./spec/acceptance/realtime/connection_failures_spec.rb#L400)
|
626
626
|
* #close
|
627
|
-
* [transitions connection state to :closed](./spec/acceptance/realtime/connection_failures_spec.rb#
|
627
|
+
* [transitions connection state to :closed](./spec/acceptance/realtime/connection_failures_spec.rb#L422)
|
628
628
|
* when connection state is :failed
|
629
629
|
* #close
|
630
|
-
* [will not transition state to :close and fails with an InvalidStateChange exception](./spec/acceptance/realtime/connection_failures_spec.rb#
|
630
|
+
* [will not transition state to :close and fails with an InvalidStateChange exception](./spec/acceptance/realtime/connection_failures_spec.rb#L441)
|
631
631
|
* #error_reason
|
632
|
-
* [contains the error when state is disconnected](./spec/acceptance/realtime/connection_failures_spec.rb#
|
633
|
-
* [contains the error when state is suspended](./spec/acceptance/realtime/connection_failures_spec.rb#
|
634
|
-
* [contains the error when state is failed](./spec/acceptance/realtime/connection_failures_spec.rb#
|
635
|
-
* [is reset to nil when :connected](./spec/acceptance/realtime/connection_failures_spec.rb#
|
636
|
-
* [is reset to nil when :closed](./spec/acceptance/realtime/connection_failures_spec.rb#
|
632
|
+
* [contains the error when state is disconnected](./spec/acceptance/realtime/connection_failures_spec.rb#L462)
|
633
|
+
* [contains the error when state is suspended](./spec/acceptance/realtime/connection_failures_spec.rb#L462)
|
634
|
+
* [contains the error when state is failed](./spec/acceptance/realtime/connection_failures_spec.rb#L462)
|
635
|
+
* [is reset to nil when :connected](./spec/acceptance/realtime/connection_failures_spec.rb#L476)
|
636
|
+
* [is reset to nil when :closed](./spec/acceptance/realtime/connection_failures_spec.rb#L487)
|
637
637
|
* #connect
|
638
638
|
* connection opening times out
|
639
|
-
* [attempts to reconnect](./spec/acceptance/realtime/connection_failures_spec.rb#
|
639
|
+
* [attempts to reconnect](./spec/acceptance/realtime/connection_failures_spec.rb#L518)
|
640
640
|
* when retry intervals are stubbed to attempt reconnection quickly
|
641
|
-
* [never calls the provided success block](./spec/acceptance/realtime/connection_failures_spec.rb#
|
641
|
+
* [never calls the provided success block](./spec/acceptance/realtime/connection_failures_spec.rb#L542)
|
642
642
|
* connection resume
|
643
643
|
* when DISCONNECTED ProtocolMessage received from the server
|
644
|
-
* [reconnects automatically and immediately](./spec/acceptance/realtime/connection_failures_spec.rb#
|
644
|
+
* [reconnects automatically and immediately](./spec/acceptance/realtime/connection_failures_spec.rb#L573)
|
645
645
|
* connection state freshness is monitored
|
646
|
-
* [resumes connections when disconnected within the connection_state_ttl period (#RTN15g)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
646
|
+
* [resumes connections when disconnected within the connection_state_ttl period (#RTN15g)](./spec/acceptance/realtime/connection_failures_spec.rb#L594)
|
647
647
|
* when connection_state_ttl period has passed since being disconnected
|
648
|
-
* [clears the local connection state and uses a new connection when the connection_state_ttl period has passed (#RTN15g)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
648
|
+
* [clears the local connection state and uses a new connection when the connection_state_ttl period has passed (#RTN15g)](./spec/acceptance/realtime/connection_failures_spec.rb#L634)
|
649
649
|
* when connection_state_ttl period has passed since last activity on the connection
|
650
|
-
* [does not clear the local connection state when the connection_state_ttl period has passed since last activity, but the idle timeout has not passed (#RTN15g1, #RTN15g2)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
651
|
-
* [clears the local connection state and uses a new connection when the connection_state_ttl + max_idle_interval period has passed since last activity (#RTN15g1, #RTN15g2)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
652
|
-
* [still reattaches the channels automatically following a new connection being established (#RTN15g2)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
650
|
+
* [does not clear the local connection state when the connection_state_ttl period has passed since last activity, but the idle timeout has not passed (#RTN15g1, #RTN15g2)](./spec/acceptance/realtime/connection_failures_spec.rb#L687)
|
651
|
+
* [clears the local connection state and uses a new connection when the connection_state_ttl + max_idle_interval period has passed since last activity (#RTN15g1, #RTN15g2)](./spec/acceptance/realtime/connection_failures_spec.rb#L721)
|
652
|
+
* [still reattaches the channels automatically following a new connection being established (#RTN15g2)](./spec/acceptance/realtime/connection_failures_spec.rb#L756)
|
653
653
|
* and subsequently fails to reconnect
|
654
|
-
* [retries every 15 seconds](./spec/acceptance/realtime/connection_failures_spec.rb#
|
654
|
+
* [retries every 15 seconds](./spec/acceptance/realtime/connection_failures_spec.rb#L815)
|
655
655
|
* when websocket transport is abruptly disconnected
|
656
|
-
* [reconnects automatically](./spec/acceptance/realtime/connection_failures_spec.rb#
|
656
|
+
* [reconnects automatically](./spec/acceptance/realtime/connection_failures_spec.rb#L858)
|
657
657
|
* hosts used
|
658
|
-
* [reconnects with the default host](./spec/acceptance/realtime/connection_failures_spec.rb#
|
658
|
+
* [reconnects with the default host](./spec/acceptance/realtime/connection_failures_spec.rb#L874)
|
659
659
|
* after successfully reconnecting and resuming
|
660
|
-
* [retains connection_id and updates the connection_key (#RTN15e, #RTN16d)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
661
|
-
* [includes the error received in the connection state change from Ably but leaves the channels attached](./spec/acceptance/realtime/connection_failures_spec.rb#
|
662
|
-
* [retains channel subscription state](./spec/acceptance/realtime/connection_failures_spec.rb#
|
663
|
-
* [retains the client_msg_serial (#RTN15c2, #RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
660
|
+
* [retains connection_id and updates the connection_key (#RTN15e, #RTN16d)](./spec/acceptance/realtime/connection_failures_spec.rb#L898)
|
661
|
+
* [includes the error received in the connection state change from Ably but leaves the channels attached](./spec/acceptance/realtime/connection_failures_spec.rb#L913)
|
662
|
+
* [retains channel subscription state](./spec/acceptance/realtime/connection_failures_spec.rb#L939)
|
663
|
+
* [retains the client_msg_serial (#RTN15c2, #RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#L1000)
|
664
664
|
* when messages were published whilst the client was disconnected
|
665
|
-
* [receives the messages published whilst offline](./spec/acceptance/realtime/connection_failures_spec.rb#
|
665
|
+
* [receives the messages published whilst offline](./spec/acceptance/realtime/connection_failures_spec.rb#L967)
|
666
666
|
* when failing to resume
|
667
667
|
* because the connection_key is not or no longer valid
|
668
|
-
* [updates the connection_id and connection_key](./spec/acceptance/realtime/connection_failures_spec.rb#
|
669
|
-
* [issue a reattach for all attached channels and fail all message awaiting an ACK (#RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
670
|
-
* [issue a reattach for all attaching channels and fail all queued messages (#RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
671
|
-
* [issue a attach for all suspended channels (#RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
672
|
-
* [sets the error reason on each channel](./spec/acceptance/realtime/connection_failures_spec.rb#
|
673
|
-
* [continues to use the client_msg_serial (#RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
668
|
+
* [updates the connection_id and connection_key](./spec/acceptance/realtime/connection_failures_spec.rb#L1040)
|
669
|
+
* [issue a reattach for all attached channels and fail all message awaiting an ACK (#RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#L1055)
|
670
|
+
* [issue a reattach for all attaching channels and fail all queued messages (#RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#L1093)
|
671
|
+
* [issue a attach for all suspended channels (#RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#L1129)
|
672
|
+
* [sets the error reason on each channel](./spec/acceptance/realtime/connection_failures_spec.rb#L1167)
|
673
|
+
* [continues to use the client_msg_serial (#RTN15c3)](./spec/acceptance/realtime/connection_failures_spec.rb#L1182)
|
674
674
|
* as the DISCONNECTED window to resume has passed
|
675
|
-
* [starts a new connection automatically and does not try and resume](./spec/acceptance/realtime/connection_failures_spec.rb#
|
675
|
+
* [starts a new connection automatically and does not try and resume](./spec/acceptance/realtime/connection_failures_spec.rb#L1219)
|
676
676
|
* when an ERROR protocol message is received
|
677
677
|
* whilst connecting
|
678
678
|
* with a token error code in the range 40140 <= code < 40150 (#RTN14b)
|
679
|
-
* [triggers a re-authentication](./spec/acceptance/realtime/connection_failures_spec.rb#
|
679
|
+
* [triggers a re-authentication](./spec/acceptance/realtime/connection_failures_spec.rb#L1250)
|
680
680
|
* with an error code indicating an error other than a token failure (#RTN14g, #RTN15i)
|
681
|
-
* [causes the connection to fail](./spec/acceptance/realtime/connection_failures_spec.rb#
|
681
|
+
* [causes the connection to fail](./spec/acceptance/realtime/connection_failures_spec.rb#L1266)
|
682
682
|
* with no error code indicating an error other than a token failure (#RTN14g, #RTN15i)
|
683
|
-
* [causes the connection to fail](./spec/acceptance/realtime/connection_failures_spec.rb#
|
683
|
+
* [causes the connection to fail](./spec/acceptance/realtime/connection_failures_spec.rb#L1279)
|
684
684
|
* whilst connected
|
685
685
|
* with a token error code in the range 40140 <= code < 40150 (#RTN14b)
|
686
|
-
* [triggers a re-authentication](./spec/acceptance/realtime/connection_failures_spec.rb#
|
686
|
+
* [triggers a re-authentication](./spec/acceptance/realtime/connection_failures_spec.rb#L1250)
|
687
687
|
* with an error code indicating an error other than a token failure (#RTN14g, #RTN15i)
|
688
|
-
* [causes the connection to fail](./spec/acceptance/realtime/connection_failures_spec.rb#
|
688
|
+
* [causes the connection to fail](./spec/acceptance/realtime/connection_failures_spec.rb#L1266)
|
689
689
|
* with no error code indicating an error other than a token failure (#RTN14g, #RTN15i)
|
690
|
-
* [causes the connection to fail](./spec/acceptance/realtime/connection_failures_spec.rb#
|
690
|
+
* [causes the connection to fail](./spec/acceptance/realtime/connection_failures_spec.rb#L1279)
|
691
691
|
* whilst resuming
|
692
692
|
* with a token error code in the region 40140 <= code < 40150 (RTN15c5)
|
693
|
-
* [triggers a re-authentication and then resumes the connection](./spec/acceptance/realtime/connection_failures_spec.rb#
|
693
|
+
* [triggers a re-authentication and then resumes the connection](./spec/acceptance/realtime/connection_failures_spec.rb#L1323)
|
694
694
|
* with any other error (#RTN15c4)
|
695
|
-
* [moves the connection to the failed state](./spec/acceptance/realtime/connection_failures_spec.rb#
|
695
|
+
* [moves the connection to the failed state](./spec/acceptance/realtime/connection_failures_spec.rb#L1355)
|
696
696
|
* fallback host feature
|
697
697
|
* with custom realtime websocket host option
|
698
|
-
* [never uses a fallback host](./spec/acceptance/realtime/connection_failures_spec.rb#
|
698
|
+
* [never uses a fallback host](./spec/acceptance/realtime/connection_failures_spec.rb#L1399)
|
699
699
|
* with custom realtime websocket port option
|
700
|
-
* [never uses a fallback host](./spec/acceptance/realtime/connection_failures_spec.rb#
|
700
|
+
* [never uses a fallback host](./spec/acceptance/realtime/connection_failures_spec.rb#L1417)
|
701
701
|
* with non-production environment
|
702
|
-
*
|
702
|
+
* :fallback_hosts_use_default is unset
|
703
|
+
* [uses fallback hosts by default](./spec/acceptance/realtime/connection_failures_spec.rb#L1441)
|
703
704
|
* :fallback_hosts_use_default is true
|
704
|
-
* [uses a fallback host on every subsequent disconnected attempt until suspended (#RTN17b, #TO3k7)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
705
|
-
* [does not use a fallback host if the connection connects on the default host and then later becomes disconnected](./spec/acceptance/realtime/connection_failures_spec.rb#
|
705
|
+
* [uses a fallback host on every subsequent disconnected attempt until suspended (#RTN17b, #TO3k7)](./spec/acceptance/realtime/connection_failures_spec.rb#L1459)
|
706
|
+
* [does not use a fallback host if the connection connects on the default host and then later becomes disconnected](./spec/acceptance/realtime/connection_failures_spec.rb#L1477)
|
706
707
|
* :fallback_hosts array is provided
|
707
|
-
* [uses a fallback host on every subsequent disconnected attempt until suspended (#RTN17b, #TO3k6)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
708
|
+
* [uses a fallback host on every subsequent disconnected attempt until suspended (#RTN17b, #TO3k6)](./spec/acceptance/realtime/connection_failures_spec.rb#L1505)
|
708
709
|
* with production environment
|
709
710
|
* when the Internet is down
|
710
|
-
* [never uses a fallback host](./spec/acceptance/realtime/connection_failures_spec.rb#
|
711
|
+
* [never uses a fallback host](./spec/acceptance/realtime/connection_failures_spec.rb#L1541)
|
711
712
|
* when the Internet is up
|
712
713
|
* and default options
|
713
|
-
* [uses a fallback host + the original host once on every subsequent disconnected attempt until suspended](./spec/acceptance/realtime/connection_failures_spec.rb#
|
714
|
-
* [uses the primary host when suspended, and then every fallback host and the primary host again on every subsequent suspended attempt](./spec/acceptance/realtime/connection_failures_spec.rb#
|
715
|
-
* [uses the correct host name for the WebSocket requests to the fallback hosts](./spec/acceptance/realtime/connection_failures_spec.rb#
|
714
|
+
* [uses a fallback host + the original host once on every subsequent disconnected attempt until suspended](./spec/acceptance/realtime/connection_failures_spec.rb#L1564)
|
715
|
+
* [uses the primary host when suspended, and then every fallback host and the primary host again on every subsequent suspended attempt](./spec/acceptance/realtime/connection_failures_spec.rb#L1583)
|
716
|
+
* [uses the correct host name for the WebSocket requests to the fallback hosts](./spec/acceptance/realtime/connection_failures_spec.rb#L1606)
|
716
717
|
* :fallback_hosts array is provided by an empty array
|
717
|
-
* [uses a fallback host on every subsequent disconnected attempt until suspended (#RTN17b, #TO3k6)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
718
|
+
* [uses a fallback host on every subsequent disconnected attempt until suspended (#RTN17b, #TO3k6)](./spec/acceptance/realtime/connection_failures_spec.rb#L1636)
|
718
719
|
* :fallback_hosts array is provided
|
719
|
-
* [uses a fallback host on every subsequent disconnected attempt until suspended (#RTN17b, #TO3k6)](./spec/acceptance/realtime/connection_failures_spec.rb#
|
720
|
+
* [uses a fallback host on every subsequent disconnected attempt until suspended (#RTN17b, #TO3k6)](./spec/acceptance/realtime/connection_failures_spec.rb#L1656)
|
720
721
|
|
721
722
|
### Ably::Realtime::Connection
|
722
723
|
_(see [spec/acceptance/realtime/connection_spec.rb](./spec/acceptance/realtime/connection_spec.rb))_
|
@@ -737,7 +738,7 @@ _(see [spec/acceptance/realtime/connection_spec.rb](./spec/acceptance/realtime/c
|
|
737
738
|
* opening a new connection
|
738
739
|
* with almost expired tokens
|
739
740
|
* [renews token every time after it expires](./spec/acceptance/realtime/connection_spec.rb#L106)
|
740
|
-
* with immediately expired token
|
741
|
+
* with immediately expired token and no fallback hosts
|
741
742
|
* [renews the token on connect, and makes one immediate subsequent attempt to obtain a new token (#RSA4b)](./spec/acceptance/realtime/connection_spec.rb#L136)
|
742
743
|
* when disconnected_retry_timeout is 0.5 seconds
|
743
744
|
* [renews the token on connect, and continues to attempt renew based on the retry schedule](./spec/acceptance/realtime/connection_spec.rb#L151)
|
@@ -769,176 +770,176 @@ _(see [spec/acceptance/realtime/connection_spec.rb](./spec/acceptance/realtime/c
|
|
769
770
|
* [are emitted in order](./spec/acceptance/realtime/connection_spec.rb#L431)
|
770
771
|
* with explicit #connect
|
771
772
|
* [are emitted in order](./spec/acceptance/realtime/connection_spec.rb#L437)
|
772
|
-
* #connect
|
773
|
-
* [returns a SafeDeferrable that catches exceptions in callbacks and logs them](./spec/acceptance/realtime/connection_spec.rb#
|
774
|
-
* [calls the Deferrable callback on success](./spec/acceptance/realtime/connection_spec.rb#
|
775
|
-
* [calls the provided block on success even if state changes to disconnected first](./spec/acceptance/realtime/connection_spec.rb#
|
773
|
+
* #connect with no fallbacks
|
774
|
+
* [returns a SafeDeferrable that catches exceptions in callbacks and logs them](./spec/acceptance/realtime/connection_spec.rb#L447)
|
775
|
+
* [calls the Deferrable callback on success](./spec/acceptance/realtime/connection_spec.rb#L452)
|
776
|
+
* [calls the provided block on success even if state changes to disconnected first](./spec/acceptance/realtime/connection_spec.rb#L459)
|
776
777
|
* with invalid auth details
|
777
|
-
* [calls the Deferrable errback only once on connection failure](./spec/acceptance/realtime/connection_spec.rb#
|
778
|
+
* [calls the Deferrable errback only once on connection failure](./spec/acceptance/realtime/connection_spec.rb#L488)
|
778
779
|
* when already connected
|
779
|
-
* [does nothing and no further state changes are emitted](./spec/acceptance/realtime/connection_spec.rb#
|
780
|
+
* [does nothing and no further state changes are emitted](./spec/acceptance/realtime/connection_spec.rb#L504)
|
780
781
|
* connection#id
|
781
|
-
* [is null before connecting](./spec/acceptance/realtime/connection_spec.rb#
|
782
|
+
* [is null before connecting](./spec/acceptance/realtime/connection_spec.rb#L518)
|
782
783
|
* connection#key
|
783
|
-
* [is null before connecting](./spec/acceptance/realtime/connection_spec.rb#
|
784
|
+
* [is null before connecting](./spec/acceptance/realtime/connection_spec.rb#L525)
|
784
785
|
* once connected
|
785
786
|
* connection#id
|
786
|
-
* [is a string](./spec/acceptance/realtime/connection_spec.rb#
|
787
|
-
* [is unique from the connection#key](./spec/acceptance/realtime/connection_spec.rb#
|
788
|
-
* [is unique for every connection](./spec/acceptance/realtime/connection_spec.rb#
|
787
|
+
* [is a string](./spec/acceptance/realtime/connection_spec.rb#L536)
|
788
|
+
* [is unique from the connection#key](./spec/acceptance/realtime/connection_spec.rb#L543)
|
789
|
+
* [is unique for every connection](./spec/acceptance/realtime/connection_spec.rb#L550)
|
789
790
|
* connection#key
|
790
|
-
* [is a string](./spec/acceptance/realtime/connection_spec.rb#
|
791
|
-
* [is unique from the connection#id](./spec/acceptance/realtime/connection_spec.rb#
|
792
|
-
* [is unique for every connection](./spec/acceptance/realtime/connection_spec.rb#
|
791
|
+
* [is a string](./spec/acceptance/realtime/connection_spec.rb#L559)
|
792
|
+
* [is unique from the connection#id](./spec/acceptance/realtime/connection_spec.rb#L566)
|
793
|
+
* [is unique for every connection](./spec/acceptance/realtime/connection_spec.rb#L573)
|
793
794
|
* following a previous connection being opened and closed
|
794
|
-
* [reconnects and is provided with a new connection ID and connection key from the server](./spec/acceptance/realtime/connection_spec.rb#
|
795
|
+
* [reconnects and is provided with a new connection ID and connection key from the server](./spec/acceptance/realtime/connection_spec.rb#L583)
|
795
796
|
* when closing
|
796
|
-
* [fails the deferrable before the connection is closed](./spec/acceptance/realtime/connection_spec.rb#
|
797
|
+
* [fails the deferrable before the connection is closed](./spec/acceptance/realtime/connection_spec.rb#L600)
|
797
798
|
* #serial connection serial
|
798
|
-
* [is set to -1 when a new connection is opened](./spec/acceptance/realtime/connection_spec.rb#
|
799
|
-
* [is set to 0 when a message is received back](./spec/acceptance/realtime/connection_spec.rb#
|
800
|
-
* [is set to 1 when the second message is received](./spec/acceptance/realtime/connection_spec.rb#
|
799
|
+
* [is set to -1 when a new connection is opened](./spec/acceptance/realtime/connection_spec.rb#L617)
|
800
|
+
* FAILED: ~~[is set to 0 when a message is received back](./spec/acceptance/realtime/connection_spec.rb#L640)~~
|
801
|
+
* [is set to 1 when the second message is received](./spec/acceptance/realtime/connection_spec.rb#L648)
|
801
802
|
* when a message is sent but the ACK has not yet been received
|
802
|
-
* [the sent message msgSerial is 0 but the connection serial remains at -1](./spec/acceptance/realtime/connection_spec.rb#
|
803
|
+
* [the sent message msgSerial is 0 but the connection serial remains at -1](./spec/acceptance/realtime/connection_spec.rb#L625)
|
803
804
|
* #msgSerial
|
804
805
|
* when messages are queued for publish before a connection is established
|
805
|
-
* [the msgSerial is always incrementing (and not reset when the new connection is established) ensuring messages are never de-duped by the realtime service](./spec/acceptance/realtime/connection_spec.rb#
|
806
|
+
* [the msgSerial is always incrementing (and not reset when the new connection is established) ensuring messages are never de-duped by the realtime service](./spec/acceptance/realtime/connection_spec.rb#L676)
|
806
807
|
* #close
|
807
|
-
* [returns a SafeDeferrable that catches exceptions in callbacks and logs them](./spec/acceptance/realtime/connection_spec.rb#
|
808
|
-
* [calls the Deferrable callback on success](./spec/acceptance/realtime/connection_spec.rb#
|
808
|
+
* [returns a SafeDeferrable that catches exceptions in callbacks and logs them](./spec/acceptance/realtime/connection_spec.rb#L696)
|
809
|
+
* [calls the Deferrable callback on success](./spec/acceptance/realtime/connection_spec.rb#L703)
|
809
810
|
* when already closed
|
810
|
-
* [does nothing and no further state changes are emitted](./spec/acceptance/realtime/connection_spec.rb#
|
811
|
+
* [does nothing and no further state changes are emitted](./spec/acceptance/realtime/connection_spec.rb#L714)
|
811
812
|
* when connection state is
|
812
813
|
* :initialized
|
813
|
-
* [changes the connection state to :closing and then immediately :closed without sending a ProtocolMessage CLOSE](./spec/acceptance/realtime/connection_spec.rb#
|
814
|
+
* [changes the connection state to :closing and then immediately :closed without sending a ProtocolMessage CLOSE](./spec/acceptance/realtime/connection_spec.rb#L741)
|
814
815
|
* :connected
|
815
|
-
* [changes the connection state to :closing and waits for the server to confirm connection is :closed with a ProtocolMessage](./spec/acceptance/realtime/connection_spec.rb#
|
816
|
+
* [changes the connection state to :closing and waits for the server to confirm connection is :closed with a ProtocolMessage](./spec/acceptance/realtime/connection_spec.rb#L758)
|
816
817
|
* with an unresponsive connection
|
817
|
-
* [force closes the connection when a :closed ProtocolMessage response is not received](./spec/acceptance/realtime/connection_spec.rb#
|
818
|
+
* [force closes the connection when a :closed ProtocolMessage response is not received](./spec/acceptance/realtime/connection_spec.rb#L785)
|
818
819
|
* #ping
|
819
|
-
* [echoes a heart beat (#RTN13a)](./spec/acceptance/realtime/connection_spec.rb#
|
820
|
-
* [sends a unique ID in each protocol message (#RTN13e)](./spec/acceptance/realtime/connection_spec.rb#
|
821
|
-
* [waits until the connection becomes CONNECTED when in the CONNETING state](./spec/acceptance/realtime/connection_spec.rb#
|
820
|
+
* [echoes a heart beat (#RTN13a)](./spec/acceptance/realtime/connection_spec.rb#L807)
|
821
|
+
* [sends a unique ID in each protocol message (#RTN13e)](./spec/acceptance/realtime/connection_spec.rb#L817)
|
822
|
+
* [waits until the connection becomes CONNECTED when in the CONNETING state](./spec/acceptance/realtime/connection_spec.rb#L841)
|
822
823
|
* with incompatible states
|
823
824
|
* when not connected
|
824
|
-
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#
|
825
|
+
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#L854)
|
825
826
|
* when suspended
|
826
|
-
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#
|
827
|
+
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#L863)
|
827
828
|
* when failed
|
828
|
-
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#
|
829
|
+
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#L875)
|
829
830
|
* when closed
|
830
|
-
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#
|
831
|
+
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#L887)
|
831
832
|
* when it becomes closed
|
832
|
-
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#
|
833
|
+
* [fails the deferrable (#RTN13b)](./spec/acceptance/realtime/connection_spec.rb#L901)
|
833
834
|
* with a success block that raises an exception
|
834
|
-
* [catches the exception and logs the error](./spec/acceptance/realtime/connection_spec.rb#
|
835
|
+
* [catches the exception and logs the error](./spec/acceptance/realtime/connection_spec.rb#L914)
|
835
836
|
* when ping times out
|
836
|
-
* [fails the deferrable logs a warning (#RTN13a, #RTN13c)](./spec/acceptance/realtime/connection_spec.rb#
|
837
|
-
* [yields to the block with a nil value](./spec/acceptance/realtime/connection_spec.rb#
|
837
|
+
* [fails the deferrable logs a warning (#RTN13a, #RTN13c)](./spec/acceptance/realtime/connection_spec.rb#L928)
|
838
|
+
* [yields to the block with a nil value](./spec/acceptance/realtime/connection_spec.rb#L947)
|
838
839
|
* Heartbeats (#RTN23)
|
839
840
|
* heartbeat interval
|
840
841
|
* when reduced artificially
|
841
|
-
* [is the sum of the max_idle_interval and realtime_request_timeout (#RTN23a)](./spec/acceptance/realtime/connection_spec.rb#
|
842
|
-
* [disconnects the transport if no heartbeat received since connected (#RTN23a)](./spec/acceptance/realtime/connection_spec.rb#
|
843
|
-
* [disconnects the transport if no heartbeat received since last event received (#RTN23a)](./spec/acceptance/realtime/connection_spec.rb#
|
842
|
+
* [is the sum of the max_idle_interval and realtime_request_timeout (#RTN23a)](./spec/acceptance/realtime/connection_spec.rb#L974)
|
843
|
+
* [disconnects the transport if no heartbeat received since connected (#RTN23a)](./spec/acceptance/realtime/connection_spec.rb#L984)
|
844
|
+
* [disconnects the transport if no heartbeat received since last event received (#RTN23a)](./spec/acceptance/realtime/connection_spec.rb#L995)
|
844
845
|
* transport-level heartbeats are supported in the websocket transport
|
845
|
-
* [provides the heartbeats argument in the websocket connection params (#RTN23b)](./spec/acceptance/realtime/connection_spec.rb#
|
846
|
-
* [receives websocket heartbeat messages (#RTN23b) [slow test as need to wait for heartbeat]](./spec/acceptance/realtime/connection_spec.rb#
|
846
|
+
* [provides the heartbeats argument in the websocket connection params (#RTN23b)](./spec/acceptance/realtime/connection_spec.rb#L1010)
|
847
|
+
* [receives websocket heartbeat messages (#RTN23b) [slow test as need to wait for heartbeat]](./spec/acceptance/realtime/connection_spec.rb#L1019)
|
847
848
|
* with websocket heartbeats disabled (undocumented)
|
848
|
-
* [does not provide the heartbeats argument in the websocket connection params (#RTN23b)](./spec/acceptance/realtime/connection_spec.rb#
|
849
|
-
* [receives websocket protocol messages (#RTN23b) [slow test as need to wait for heartbeat]](./spec/acceptance/realtime/connection_spec.rb#
|
849
|
+
* [does not provide the heartbeats argument in the websocket connection params (#RTN23b)](./spec/acceptance/realtime/connection_spec.rb#L1035)
|
850
|
+
* [receives websocket protocol messages (#RTN23b) [slow test as need to wait for heartbeat]](./spec/acceptance/realtime/connection_spec.rb#L1044)
|
850
851
|
* #details
|
851
|
-
* [is nil before connected](./spec/acceptance/realtime/connection_spec.rb#
|
852
|
-
* [contains the ConnectionDetails object once connected (#RTN21)](./spec/acceptance/realtime/connection_spec.rb#
|
853
|
-
* [contains the new ConnectionDetails object once a subsequent connection is created (#RTN21)](./spec/acceptance/realtime/connection_spec.rb#
|
852
|
+
* [is nil before connected](./spec/acceptance/realtime/connection_spec.rb#L1062)
|
853
|
+
* [contains the ConnectionDetails object once connected (#RTN21)](./spec/acceptance/realtime/connection_spec.rb#L1069)
|
854
|
+
* [contains the new ConnectionDetails object once a subsequent connection is created (#RTN21)](./spec/acceptance/realtime/connection_spec.rb#L1078)
|
854
855
|
* with a different default connection_state_ttl
|
855
|
-
* [updates the private Connection#connection_state_ttl when received from Ably in ConnectionDetails](./spec/acceptance/realtime/connection_spec.rb#
|
856
|
+
* [updates the private Connection#connection_state_ttl when received from Ably in ConnectionDetails](./spec/acceptance/realtime/connection_spec.rb#L1099)
|
856
857
|
* recovery
|
857
858
|
* #recovery_key
|
858
|
-
* [is composed of connection key and serial that is kept up to date with each message ACK received](./spec/acceptance/realtime/connection_spec.rb#
|
859
|
-
* [is available when connection is in one of the states: connecting, connected, disconnected](./spec/acceptance/realtime/connection_spec.rb#
|
860
|
-
* [is nil when connection is explicitly CLOSED](./spec/acceptance/realtime/connection_spec.rb#
|
859
|
+
* [is composed of connection key and serial that is kept up to date with each message ACK received](./spec/acceptance/realtime/connection_spec.rb#L1136)
|
860
|
+
* [is available when connection is in one of the states: connecting, connected, disconnected](./spec/acceptance/realtime/connection_spec.rb#L1164)
|
861
|
+
* [is nil when connection is explicitly CLOSED](./spec/acceptance/realtime/connection_spec.rb#L1194)
|
861
862
|
* opening a new connection using a recently disconnected connection's #recovery_key
|
862
863
|
* connection#id after recovery
|
863
|
-
* [remains the same](./spec/acceptance/realtime/connection_spec.rb#
|
864
|
+
* [remains the same](./spec/acceptance/realtime/connection_spec.rb#L1206)
|
864
865
|
* when messages have been sent whilst the old connection is disconnected
|
865
866
|
* the new connection
|
866
|
-
* [recovers server-side queued messages](./spec/acceptance/realtime/connection_spec.rb#
|
867
|
+
* [recovers server-side queued messages](./spec/acceptance/realtime/connection_spec.rb#L1242)
|
867
868
|
* when messages have been published
|
868
869
|
* the new connection
|
869
|
-
* [uses the correct msgSerial from the old connection](./spec/acceptance/realtime/connection_spec.rb#
|
870
|
+
* [uses the correct msgSerial from the old connection](./spec/acceptance/realtime/connection_spec.rb#L1271)
|
870
871
|
* when messages are published before the new connection is recovered
|
871
872
|
* the new connection
|
872
|
-
* [uses the correct msgSerial from the old connection for the queued messages](./spec/acceptance/realtime/connection_spec.rb#
|
873
|
+
* [uses the correct msgSerial from the old connection for the queued messages](./spec/acceptance/realtime/connection_spec.rb#L1301)
|
873
874
|
* with :recover option
|
874
875
|
* with invalid syntax
|
875
|
-
* [raises an exception](./spec/acceptance/realtime/connection_spec.rb#
|
876
|
+
* [raises an exception](./spec/acceptance/realtime/connection_spec.rb#L1348)
|
876
877
|
* with invalid formatted value sent to server
|
877
|
-
* [sets the #error_reason and moves the connection to FAILED](./spec/acceptance/realtime/connection_spec.rb#
|
878
|
+
* [sets the #error_reason and moves the connection to FAILED](./spec/acceptance/realtime/connection_spec.rb#L1357)
|
878
879
|
* with expired (missing) value sent to server
|
879
|
-
* [connects but sets the error reason and includes the reason in the state change](./spec/acceptance/realtime/connection_spec.rb#
|
880
|
+
* [connects but sets the error reason and includes the reason in the state change](./spec/acceptance/realtime/connection_spec.rb#L1372)
|
880
881
|
* with many connections simultaneously
|
881
|
-
* [opens each with a unique connection#id and connection#key](./spec/acceptance/realtime/connection_spec.rb#
|
882
|
+
* [opens each with a unique connection#id and connection#key](./spec/acceptance/realtime/connection_spec.rb#L1391)
|
882
883
|
* when a state transition is unsupported
|
883
|
-
* [logs the invalid state change as fatal](./spec/acceptance/realtime/connection_spec.rb#
|
884
|
+
* [logs the invalid state change as fatal](./spec/acceptance/realtime/connection_spec.rb#L1411)
|
884
885
|
* protocol failure
|
885
886
|
* receiving an invalid ProtocolMessage
|
886
|
-
* [emits an error on the connection and logs a fatal error message](./spec/acceptance/realtime/connection_spec.rb#
|
887
|
+
* [emits an error on the connection and logs a fatal error message](./spec/acceptance/realtime/connection_spec.rb#L1427)
|
887
888
|
* undocumented method
|
888
889
|
* #internet_up?
|
889
|
-
* [returns a Deferrable](./spec/acceptance/realtime/connection_spec.rb#
|
890
|
+
* [returns a Deferrable](./spec/acceptance/realtime/connection_spec.rb#L1445)
|
890
891
|
* internet up URL protocol
|
891
892
|
* when using TLS for the connection
|
892
|
-
* [uses TLS for the Internet check to https://internet-up.ably-realtime.com/is-the-internet-up.txt](./spec/acceptance/realtime/connection_spec.rb#
|
893
|
+
* [uses TLS for the Internet check to https://internet-up.ably-realtime.com/is-the-internet-up.txt](./spec/acceptance/realtime/connection_spec.rb#L1456)
|
893
894
|
* when using a non-secured connection
|
894
|
-
* [uses TLS for the Internet check to http://internet-up.ably-realtime.com/is-the-internet-up.txt](./spec/acceptance/realtime/connection_spec.rb#
|
895
|
+
* [uses TLS for the Internet check to http://internet-up.ably-realtime.com/is-the-internet-up.txt](./spec/acceptance/realtime/connection_spec.rb#L1466)
|
895
896
|
* when the Internet is up
|
896
|
-
* [calls the block with true](./spec/acceptance/realtime/connection_spec.rb#
|
897
|
-
* [calls the success callback of the Deferrable](./spec/acceptance/realtime/connection_spec.rb#
|
897
|
+
* [calls the block with true](./spec/acceptance/realtime/connection_spec.rb#L1497)
|
898
|
+
* [calls the success callback of the Deferrable](./spec/acceptance/realtime/connection_spec.rb#L1504)
|
898
899
|
* with a TLS connection
|
899
|
-
* [checks the Internet up URL over TLS](./spec/acceptance/realtime/connection_spec.rb#
|
900
|
+
* [checks the Internet up URL over TLS](./spec/acceptance/realtime/connection_spec.rb#L1480)
|
900
901
|
* with a non-TLS connection
|
901
|
-
* [checks the Internet up URL over TLS](./spec/acceptance/realtime/connection_spec.rb#
|
902
|
+
* [checks the Internet up URL over TLS](./spec/acceptance/realtime/connection_spec.rb#L1490)
|
902
903
|
* when the Internet is down
|
903
|
-
* [calls the block with false](./spec/acceptance/realtime/connection_spec.rb#
|
904
|
-
* [calls the failure callback of the Deferrable](./spec/acceptance/realtime/connection_spec.rb#
|
904
|
+
* [calls the block with false](./spec/acceptance/realtime/connection_spec.rb#L1519)
|
905
|
+
* [calls the failure callback of the Deferrable](./spec/acceptance/realtime/connection_spec.rb#L1526)
|
905
906
|
* state change side effects
|
906
907
|
* when connection enters the :disconnected state
|
907
|
-
* [queues messages to be sent and all channels remain attached](./spec/acceptance/realtime/connection_spec.rb#
|
908
|
+
* [queues messages to be sent and all channels remain attached](./spec/acceptance/realtime/connection_spec.rb#L1540)
|
908
909
|
* when connection enters the :suspended state
|
909
|
-
* [moves the channels into the suspended state and prevents publishing of messages on those channels](./spec/acceptance/realtime/connection_spec.rb#
|
910
|
+
* [moves the channels into the suspended state and prevents publishing of messages on those channels](./spec/acceptance/realtime/connection_spec.rb#L1573)
|
910
911
|
* when connection enters the :failed state
|
911
|
-
* [sets all channels to failed and prevents publishing of messages on those channels](./spec/acceptance/realtime/connection_spec.rb#
|
912
|
+
* [sets all channels to failed and prevents publishing of messages on those channels](./spec/acceptance/realtime/connection_spec.rb#L1604)
|
912
913
|
* connection state change
|
913
|
-
* [emits event to all and single subscribers](./spec/acceptance/realtime/connection_spec.rb#
|
914
|
-
* [emits a ConnectionStateChange object](./spec/acceptance/realtime/connection_spec.rb#
|
914
|
+
* [emits event to all and single subscribers](./spec/acceptance/realtime/connection_spec.rb#L1618)
|
915
|
+
* [emits a ConnectionStateChange object](./spec/acceptance/realtime/connection_spec.rb#L1633)
|
915
916
|
* ConnectionStateChange object
|
916
|
-
* [has current state](./spec/acceptance/realtime/connection_spec.rb#
|
917
|
-
* [has a previous state](./spec/acceptance/realtime/connection_spec.rb#
|
918
|
-
* [has the event that generated the state change (#TH5)](./spec/acceptance/realtime/connection_spec.rb#
|
919
|
-
* [has an empty reason when there is no error](./spec/acceptance/realtime/connection_spec.rb#
|
917
|
+
* [has current state](./spec/acceptance/realtime/connection_spec.rb#L1641)
|
918
|
+
* [has a previous state](./spec/acceptance/realtime/connection_spec.rb#L1649)
|
919
|
+
* [has the event that generated the state change (#TH5)](./spec/acceptance/realtime/connection_spec.rb#L1657)
|
920
|
+
* [has an empty reason when there is no error](./spec/acceptance/realtime/connection_spec.rb#L1673)
|
920
921
|
* on failure
|
921
|
-
* [has a reason Error object when there is an error on the connection](./spec/acceptance/realtime/connection_spec.rb#
|
922
|
+
* [has a reason Error object when there is an error on the connection](./spec/acceptance/realtime/connection_spec.rb#L1686)
|
922
923
|
* retry_in
|
923
|
-
* [is nil when a retry is not required](./spec/acceptance/realtime/connection_spec.rb#
|
924
|
-
* [is 0 when first attempt to connect fails](./spec/acceptance/realtime/connection_spec.rb#
|
925
|
-
* [is 0 when an immediate reconnect will occur](./spec/acceptance/realtime/connection_spec.rb#
|
926
|
-
* [contains the next retry period when an immediate reconnect will not occur](./spec/acceptance/realtime/connection_spec.rb#
|
924
|
+
* [is nil when a retry is not required](./spec/acceptance/realtime/connection_spec.rb#L1701)
|
925
|
+
* [is 0 when first attempt to connect fails](./spec/acceptance/realtime/connection_spec.rb#L1708)
|
926
|
+
* [is 0 when an immediate reconnect will occur](./spec/acceptance/realtime/connection_spec.rb#L1718)
|
927
|
+
* [contains the next retry period when an immediate reconnect will not occur](./spec/acceptance/realtime/connection_spec.rb#L1728)
|
927
928
|
* whilst CONNECTED
|
928
929
|
* when a CONNECTED message is received (#RTN24)
|
929
|
-
* [emits an UPDATE event](./spec/acceptance/realtime/connection_spec.rb#
|
930
|
-
* [updates the ConnectionDetail and Connection attributes (#RTC8a1)](./spec/acceptance/realtime/connection_spec.rb#
|
930
|
+
* [emits an UPDATE event](./spec/acceptance/realtime/connection_spec.rb#L1763)
|
931
|
+
* [updates the ConnectionDetail and Connection attributes (#RTC8a1)](./spec/acceptance/realtime/connection_spec.rb#L1778)
|
931
932
|
* when a CONNECTED message with an error is received
|
932
|
-
* [emits an UPDATE event](./spec/acceptance/realtime/connection_spec.rb#
|
933
|
+
* [emits an UPDATE event](./spec/acceptance/realtime/connection_spec.rb#L1813)
|
933
934
|
* version params
|
934
|
-
* [sends the protocol version param v (#G4, #RTN2f)](./spec/acceptance/realtime/connection_spec.rb#
|
935
|
-
* [sends the lib version param lib (#RTN2g)](./spec/acceptance/realtime/connection_spec.rb#
|
935
|
+
* [sends the protocol version param v (#G4, #RTN2f)](./spec/acceptance/realtime/connection_spec.rb#L1834)
|
936
|
+
* [sends the lib version param lib (#RTN2g)](./spec/acceptance/realtime/connection_spec.rb#L1843)
|
936
937
|
* with variant
|
937
|
-
* [sends the lib version param lib with the variant (#RTN2g + #RSC7b)](./spec/acceptance/realtime/connection_spec.rb#
|
938
|
+
* [sends the lib version param lib with the variant (#RTN2g + #RSC7b)](./spec/acceptance/realtime/connection_spec.rb#L1863)
|
938
939
|
* transport_params (#RTC1f)
|
939
|
-
* [pases transport_params to query](./spec/acceptance/realtime/connection_spec.rb#
|
940
|
+
* [pases transport_params to query](./spec/acceptance/realtime/connection_spec.rb#L1877)
|
940
941
|
* when changing default param
|
941
|
-
* [overrides default param (#RTC1f1)](./spec/acceptance/realtime/connection_spec.rb#
|
942
|
+
* [overrides default param (#RTC1f1)](./spec/acceptance/realtime/connection_spec.rb#L1890)
|
942
943
|
|
943
944
|
### Ably::Realtime::Channel Message
|
944
945
|
_(see [spec/acceptance/realtime/message_spec.rb](./spec/acceptance/realtime/message_spec.rb))_
|
@@ -1579,7 +1580,7 @@ _(see [spec/acceptance/realtime/presence_spec.rb](./spec/acceptance/realtime/pre
|
|
1579
1580
|
* local PresenceMap for presence members entered by this client
|
1580
1581
|
* [maintains a copy of the member map for any member that shares this connection's connection ID (#RTP17)](./spec/acceptance/realtime/presence_spec.rb#L2427)
|
1581
1582
|
* #RTP17b
|
1582
|
-
*
|
1583
|
+
* [updates presence members on leave](./spec/acceptance/realtime/presence_spec.rb#L2455)
|
1583
1584
|
* [does no update presence members on fabricated leave](./spec/acceptance/realtime/presence_spec.rb#L2480)
|
1584
1585
|
* when a channel becomes attached again
|
1585
1586
|
* and the resume flag is true
|
@@ -1909,14 +1910,14 @@ _(see [spec/acceptance/rest/base_spec.rb](./spec/acceptance/rest/base_spec.rb))_
|
|
1909
1910
|
* due to invalid Auth
|
1910
1911
|
* [should raise an InvalidRequest exception with a valid error message and code](./spec/acceptance/rest/base_spec.rb#L75)
|
1911
1912
|
* server error with JSON error response body
|
1912
|
-
* [should raise a ServerError exception](./spec/acceptance/rest/base_spec.rb#
|
1913
|
+
* [should raise a ServerError exception](./spec/acceptance/rest/base_spec.rb#L96)
|
1913
1914
|
* 500 server error without a valid JSON response body
|
1914
|
-
* [should raise a ServerError exception](./spec/acceptance/rest/base_spec.rb#
|
1915
|
+
* [should raise a ServerError exception](./spec/acceptance/rest/base_spec.rb#L109)
|
1915
1916
|
* token authentication failures
|
1916
1917
|
* when auth#token_renewable?
|
1917
|
-
* [should automatically reissue a token](./spec/acceptance/rest/base_spec.rb#
|
1918
|
+
* [should automatically reissue a token](./spec/acceptance/rest/base_spec.rb#L147)
|
1918
1919
|
* when NOT auth#token_renewable?
|
1919
|
-
* [should raise an TokenExpired exception](./spec/acceptance/rest/base_spec.rb#
|
1920
|
+
* [should raise an TokenExpired exception](./spec/acceptance/rest/base_spec.rb#L162)
|
1920
1921
|
|
1921
1922
|
### Ably::Rest::Channel
|
1922
1923
|
_(see [spec/acceptance/rest/channel_spec.rb](./spec/acceptance/rest/channel_spec.rb))_
|
@@ -2099,121 +2100,126 @@ _(see [spec/acceptance/rest/client_spec.rb](./spec/acceptance/rest/client_spec.r
|
|
2099
2100
|
* [is configured to timeout connection requests in 10 seconds](./spec/acceptance/rest/client_spec.rb#L290)
|
2100
2101
|
* fallback hosts
|
2101
2102
|
* configured
|
2102
|
-
* [should make connection attempts to
|
2103
|
+
* [should make connection attempts to a.ably-realtime.com, b.ably-realtime.com, c.ably-realtime.com, d.ably-realtime.com, e.ably-realtime.com (#RSC15a)](./spec/acceptance/rest/client_spec.rb#L304)
|
2103
2104
|
* when environment is NOT production (#RSC15b)
|
2104
|
-
*
|
2105
|
+
* and custom fallback hosts are empty
|
2106
|
+
* [does not retry failed requests with fallback hosts when there is a connection error](./spec/acceptance/rest/client_spec.rb#L322)
|
2107
|
+
* and no custom fallback hosts are provided
|
2108
|
+
* [should make connection attempts to sandbox-a-fallback.ably-realtime.com, sandbox-b-fallback.ably-realtime.com, sandbox-c-fallback.ably-realtime.com, sandbox-d-fallback.ably-realtime.com, sandbox-e-fallback.ably-realtime.com (#RSC15a)](./spec/acceptance/rest/client_spec.rb#L330)
|
2105
2109
|
* when environment is production
|
2106
2110
|
* and connection times out
|
2107
|
-
* [tries fallback hosts 3 times (#RSC15b, #RSC15b)](./spec/acceptance/rest/client_spec.rb#
|
2111
|
+
* [tries fallback hosts 3 times (#RSC15b, #RSC15b)](./spec/acceptance/rest/client_spec.rb#L374)
|
2108
2112
|
* and the total request time exeeds 15 seconds
|
2109
|
-
* [makes no further attempts to any fallback hosts](./spec/acceptance/rest/client_spec.rb#
|
2113
|
+
* [makes no further attempts to any fallback hosts](./spec/acceptance/rest/client_spec.rb#L389)
|
2110
2114
|
* and connection fails
|
2111
|
-
* [tries fallback hosts 3 times](./spec/acceptance/rest/client_spec.rb#
|
2115
|
+
* [tries fallback hosts 3 times](./spec/acceptance/rest/client_spec.rb#L405)
|
2112
2116
|
* and first request to primary endpoint fails
|
2113
|
-
* [tries a fallback host, and for the next request tries the primary endpoint again (#RSC15e)](./spec/acceptance/rest/client_spec.rb#
|
2117
|
+
* [tries a fallback host, and for the next request tries the primary endpoint again (#RSC15e)](./spec/acceptance/rest/client_spec.rb#L439)
|
2114
2118
|
* and basic authentication fails
|
2115
|
-
* [does not attempt the fallback hosts as this is an authentication failure](./spec/acceptance/rest/client_spec.rb#
|
2119
|
+
* [does not attempt the fallback hosts as this is an authentication failure](./spec/acceptance/rest/client_spec.rb#L466)
|
2116
2120
|
* and server returns a 50x error
|
2117
|
-
* [attempts the fallback hosts as this is an authentication failure (#RSC15d)](./spec/acceptance/rest/client_spec.rb#
|
2121
|
+
* [attempts the fallback hosts as this is an authentication failure (#RSC15d)](./spec/acceptance/rest/client_spec.rb#L488)
|
2118
2122
|
* when environment is production and server returns a 50x error
|
2119
2123
|
* with custom fallback hosts provided
|
2120
|
-
* [attempts the fallback hosts as this is an authentication failure (#RSC15b, #RSC15a, #TO3k6)](./spec/acceptance/rest/client_spec.rb#
|
2124
|
+
* [attempts the fallback hosts as this is an authentication failure (#RSC15b, #RSC15a, #TO3k6)](./spec/acceptance/rest/client_spec.rb#L537)
|
2121
2125
|
* with an empty array of fallback hosts provided (#RSC15b, #RSC15a, #TO3k6)
|
2122
|
-
* [does not attempt the fallback hosts as this is an authentication failure](./spec/acceptance/rest/client_spec.rb#
|
2126
|
+
* [does not attempt the fallback hosts as this is an authentication failure](./spec/acceptance/rest/client_spec.rb#L550)
|
2123
2127
|
* using a local web-server
|
2124
2128
|
* and timing out the primary host
|
2125
2129
|
* POST with request timeout less than max_retry_duration
|
2126
|
-
* [tries the primary host, then both fallback hosts (#RSC15d)](./spec/acceptance/rest/client_spec.rb#
|
2130
|
+
* [tries the primary host, then both fallback hosts (#RSC15d)](./spec/acceptance/rest/client_spec.rb#L614)
|
2127
2131
|
* GET with request timeout less than max_retry_duration
|
2128
|
-
* [tries the primary host, then both fallback hosts (#RSC15d)](./spec/acceptance/rest/client_spec.rb#
|
2132
|
+
* [tries the primary host, then both fallback hosts (#RSC15d)](./spec/acceptance/rest/client_spec.rb#L637)
|
2129
2133
|
* POST with request timeout more than max_retry_duration
|
2130
|
-
* [does not try any fallback hosts (#RSC15d)](./spec/acceptance/rest/client_spec.rb#
|
2134
|
+
* [does not try any fallback hosts (#RSC15d)](./spec/acceptance/rest/client_spec.rb#L660)
|
2131
2135
|
* GET with request timeout more than max_retry_duration
|
2132
|
-
* [does not try any fallback hosts (#RSC15d)](./spec/acceptance/rest/client_spec.rb#
|
2136
|
+
* [does not try any fallback hosts (#RSC15d)](./spec/acceptance/rest/client_spec.rb#L682)
|
2133
2137
|
* and failing the primary host
|
2134
|
-
* [tries one of the fallback hosts](./spec/acceptance/rest/client_spec.rb#
|
2138
|
+
* [tries one of the fallback hosts](./spec/acceptance/rest/client_spec.rb#L727)
|
2135
2139
|
* to fail the primary host, allow a fallback to succeed, then later trigger a fallback to the primary host (#RSC15f)
|
2136
|
-
* [succeeds and remembers fallback host preferences across requests](./spec/acceptance/rest/client_spec.rb#
|
2140
|
+
* [succeeds and remembers fallback host preferences across requests](./spec/acceptance/rest/client_spec.rb#L783)
|
2137
2141
|
* with custom :fallback_retry_timeout
|
2138
|
-
* [stops using the preferred fallback after this time](./spec/acceptance/rest/client_spec.rb#
|
2142
|
+
* [stops using the preferred fallback after this time](./spec/acceptance/rest/client_spec.rb#L820)
|
2139
2143
|
* when environment is not production and server returns a 50x error
|
2144
|
+
* with no fallback hosts provided (#TBC, see https://github.com/ably/wiki/issues/361)
|
2145
|
+
* [uses the default fallback hosts for that environment as this is not an authentication failure](./spec/acceptance/rest/client_spec.rb#L874)
|
2140
2146
|
* with custom fallback hosts provided (#RSC15b, #TO3k6)
|
2141
|
-
* [attempts the fallback hosts as this is not an authentication failure](./spec/acceptance/rest/client_spec.rb#
|
2147
|
+
* [attempts the fallback hosts as this is not an authentication failure](./spec/acceptance/rest/client_spec.rb#L902)
|
2142
2148
|
* with an empty array of fallback hosts provided (#RSC15b, #TO3k6)
|
2143
|
-
* [does not attempt the fallback hosts as this is an authentication failure](./spec/acceptance/rest/client_spec.rb#
|
2149
|
+
* [does not attempt the fallback hosts as this is an authentication failure](./spec/acceptance/rest/client_spec.rb#L915)
|
2144
2150
|
* with fallback_hosts_use_default: true (#RSC15b, #TO3k7)
|
2145
|
-
* [attempts the default fallback hosts as this is an authentication failure](./spec/acceptance/rest/client_spec.rb#
|
2151
|
+
* [attempts the default fallback hosts as this is an authentication failure](./spec/acceptance/rest/client_spec.rb#L940)
|
2146
2152
|
* with a custom host
|
2147
2153
|
* that does not exist
|
2148
|
-
* [fails immediately and raises a Faraday Error](./spec/acceptance/rest/client_spec.rb#
|
2154
|
+
* [fails immediately and raises a Faraday Error](./spec/acceptance/rest/client_spec.rb#L956)
|
2149
2155
|
* fallback hosts
|
2150
|
-
* [are never used](./spec/acceptance/rest/client_spec.rb#
|
2156
|
+
* [are never used](./spec/acceptance/rest/client_spec.rb#L977)
|
2151
2157
|
* that times out
|
2152
|
-
* [fails immediately and raises a Faraday Error](./spec/acceptance/rest/client_spec.rb#
|
2158
|
+
* [fails immediately and raises a Faraday Error](./spec/acceptance/rest/client_spec.rb#L992)
|
2153
2159
|
* fallback hosts
|
2154
|
-
* [are never used](./spec/acceptance/rest/client_spec.rb#
|
2160
|
+
* [are never used](./spec/acceptance/rest/client_spec.rb#L1005)
|
2155
2161
|
* HTTP configuration options
|
2156
|
-
* [is frozen](./spec/acceptance/rest/client_spec.rb#
|
2162
|
+
* [is frozen](./spec/acceptance/rest/client_spec.rb#L1062)
|
2157
2163
|
* defaults
|
2158
|
-
* [#http_open_timeout is 4s](./spec/acceptance/rest/client_spec.rb#
|
2159
|
-
* [#http_request_timeout is 10s](./spec/acceptance/rest/client_spec.rb#
|
2160
|
-
* [#http_max_retry_count is 3](./spec/acceptance/rest/client_spec.rb#
|
2161
|
-
* [#http_max_retry_duration is 15s](./spec/acceptance/rest/client_spec.rb#
|
2164
|
+
* [#http_open_timeout is 4s](./spec/acceptance/rest/client_spec.rb#L1017)
|
2165
|
+
* [#http_request_timeout is 10s](./spec/acceptance/rest/client_spec.rb#L1021)
|
2166
|
+
* [#http_max_retry_count is 3](./spec/acceptance/rest/client_spec.rb#L1025)
|
2167
|
+
* [#http_max_retry_duration is 15s](./spec/acceptance/rest/client_spec.rb#L1029)
|
2162
2168
|
* configured
|
2163
|
-
* [#http_open_timeout uses provided value](./spec/acceptance/rest/client_spec.rb#
|
2164
|
-
* [#http_request_timeout uses provided value](./spec/acceptance/rest/client_spec.rb#
|
2165
|
-
* [#http_max_retry_count uses provided value](./spec/acceptance/rest/client_spec.rb#
|
2166
|
-
* [#http_max_retry_duration uses provided value](./spec/acceptance/rest/client_spec.rb#
|
2169
|
+
* [#http_open_timeout uses provided value](./spec/acceptance/rest/client_spec.rb#L1045)
|
2170
|
+
* [#http_request_timeout uses provided value](./spec/acceptance/rest/client_spec.rb#L1049)
|
2171
|
+
* [#http_max_retry_count uses provided value](./spec/acceptance/rest/client_spec.rb#L1053)
|
2172
|
+
* [#http_max_retry_duration uses provided value](./spec/acceptance/rest/client_spec.rb#L1057)
|
2167
2173
|
* #auth
|
2168
|
-
* [is provides access to the Auth object](./spec/acceptance/rest/client_spec.rb#
|
2169
|
-
* [configures the Auth object with all ClientOptions passed to client in the initializer](./spec/acceptance/rest/client_spec.rb#
|
2174
|
+
* [is provides access to the Auth object](./spec/acceptance/rest/client_spec.rb#L1073)
|
2175
|
+
* [configures the Auth object with all ClientOptions passed to client in the initializer](./spec/acceptance/rest/client_spec.rb#L1077)
|
2170
2176
|
* version headers
|
2171
2177
|
* with variant none
|
2172
|
-
* [sends a protocol version and lib version header (#G4, #RSC7a, #RSC7b)](./spec/acceptance/rest/client_spec.rb#
|
2178
|
+
* [sends a protocol version and lib version header (#G4, #RSC7a, #RSC7b)](./spec/acceptance/rest/client_spec.rb#L1111)
|
2173
2179
|
* with variant foo
|
2174
|
-
* [sends a protocol version and lib version header (#G4, #RSC7a, #RSC7b)](./spec/acceptance/rest/client_spec.rb#
|
2180
|
+
* [sends a protocol version and lib version header (#G4, #RSC7a, #RSC7b)](./spec/acceptance/rest/client_spec.rb#L1111)
|
2175
2181
|
* #request (#RSC19*)
|
2176
2182
|
* get
|
2177
|
-
* [returns an HttpPaginatedResponse object](./spec/acceptance/rest/client_spec.rb#
|
2183
|
+
* [returns an HttpPaginatedResponse object](./spec/acceptance/rest/client_spec.rb#L1126)
|
2178
2184
|
* 404 request to invalid URL
|
2179
|
-
* [returns an object with 404 status code and error message](./spec/acceptance/rest/client_spec.rb#
|
2185
|
+
* [returns an object with 404 status code and error message](./spec/acceptance/rest/client_spec.rb#L1133)
|
2180
2186
|
* paged results
|
2181
|
-
* [provides paging](./spec/acceptance/rest/client_spec.rb#
|
2187
|
+
* [provides paging](./spec/acceptance/rest/client_spec.rb#L1145)
|
2182
2188
|
* post
|
2183
|
-
* [supports post](./spec/acceptance/rest/client_spec.rb#
|
2189
|
+
* [supports post](./spec/acceptance/rest/client_spec.rb#L1170)
|
2184
2190
|
* delete
|
2185
|
-
* [supports delete](./spec/acceptance/rest/client_spec.rb#
|
2191
|
+
* [supports delete](./spec/acceptance/rest/client_spec.rb#L1183)
|
2186
2192
|
* patch
|
2187
|
-
* [supports patch](./spec/acceptance/rest/client_spec.rb#
|
2193
|
+
* [supports patch](./spec/acceptance/rest/client_spec.rb#L1199)
|
2188
2194
|
* put
|
2189
|
-
* [supports put](./spec/acceptance/rest/client_spec.rb#
|
2195
|
+
* [supports put](./spec/acceptance/rest/client_spec.rb#L1222)
|
2190
2196
|
* request_id generation
|
2191
2197
|
* Timeout error
|
2192
|
-
* with option add_request_ids: true
|
2193
|
-
* [has an error with the same request_id of the request](./spec/acceptance/rest/client_spec.rb#
|
2198
|
+
* with option add_request_ids: true and no fallback hosts
|
2199
|
+
* [has an error with the same request_id of the request](./spec/acceptance/rest/client_spec.rb#L1245)
|
2194
2200
|
* with option add_request_ids: true and REST operations with a message body
|
2195
2201
|
* with mocks to inspect the params
|
2196
2202
|
* with a single publish
|
2197
|
-
* [succeeds and sends the request_id as a param](./spec/acceptance/rest/client_spec.rb#
|
2203
|
+
* [succeeds and sends the request_id as a param](./spec/acceptance/rest/client_spec.rb#L1267)
|
2198
2204
|
* with an array publish
|
2199
|
-
* [succeeds and sends the request_id as a param](./spec/acceptance/rest/client_spec.rb#
|
2205
|
+
* [succeeds and sends the request_id as a param](./spec/acceptance/rest/client_spec.rb#L1274)
|
2200
2206
|
* without mocks to ensure the requests are accepted
|
2201
2207
|
* with a single publish
|
2202
|
-
* [succeeds and sends the request_id as a param](./spec/acceptance/rest/client_spec.rb#
|
2208
|
+
* [succeeds and sends the request_id as a param](./spec/acceptance/rest/client_spec.rb#L1283)
|
2203
2209
|
* with an array publish
|
2204
|
-
* [succeeds and sends the request_id as a param](./spec/acceptance/rest/client_spec.rb#
|
2210
|
+
* [succeeds and sends the request_id as a param](./spec/acceptance/rest/client_spec.rb#L1290)
|
2205
2211
|
* option add_request_ids: true and specified fallback hosts
|
2206
|
-
* [request_id is the same across retries](./spec/acceptance/rest/client_spec.rb#
|
2207
|
-
* without request_id
|
2208
|
-
* [does not include request_id in ConnectionTimeout error](./spec/acceptance/rest/client_spec.rb#
|
2212
|
+
* [request_id is the same across retries](./spec/acceptance/rest/client_spec.rb#L1315)
|
2213
|
+
* without request_id and no fallback hosts
|
2214
|
+
* [does not include request_id in ConnectionTimeout error](./spec/acceptance/rest/client_spec.rb#L1327)
|
2209
2215
|
* UnauthorizedRequest nonce error
|
2210
|
-
* [includes request_id in UnauthorizedRequest error due to replayed nonce](./spec/acceptance/rest/client_spec.rb#
|
2216
|
+
* [includes request_id in UnauthorizedRequest error due to replayed nonce](./spec/acceptance/rest/client_spec.rb#L1340)
|
2211
2217
|
* failed request logging
|
2212
|
-
* [is absent when requests do not fail](./spec/acceptance/rest/client_spec.rb#
|
2218
|
+
* [is absent when requests do not fail](./spec/acceptance/rest/client_spec.rb#L1357)
|
2213
2219
|
* with the first request failing
|
2214
|
-
* [is present with success message when requests do not actually fail](./spec/acceptance/rest/client_spec.rb#
|
2220
|
+
* [is present with success message when requests do not actually fail](./spec/acceptance/rest/client_spec.rb#L1372)
|
2215
2221
|
* with all requests failing
|
2216
|
-
* [is present when all requests fail](./spec/acceptance/rest/client_spec.rb#
|
2222
|
+
* [is present when all requests fail](./spec/acceptance/rest/client_spec.rb#L1389)
|
2217
2223
|
|
2218
2224
|
### Ably::Models::MessageEncoders
|
2219
2225
|
_(see [spec/acceptance/rest/encoders_spec.rb](./spec/acceptance/rest/encoders_spec.rb))_
|
@@ -3847,9 +3853,40 @@ _(see [spec/unit/realtime/client_spec.rb](./spec/unit/realtime/client_spec.rb))_
|
|
3847
3853
|
* with custom logger and log_level
|
3848
3854
|
* [uses the custom logger](./spec/shared/client_initializer_behaviour.rb#L259)
|
3849
3855
|
* [sets the custom log level](./spec/shared/client_initializer_behaviour.rb#L263)
|
3856
|
+
* environment
|
3857
|
+
* when set without custom fallback hosts configured
|
3858
|
+
* [sets the environment attribute](./spec/shared/client_initializer_behaviour.rb#L275)
|
3859
|
+
* [uses the default fallback hosts (#TBC, see https://github.com/ably/wiki/issues/361)](./spec/shared/client_initializer_behaviour.rb#L279)
|
3860
|
+
* when set with custom fallback hosts configured
|
3861
|
+
* [sets the environment attribute](./spec/shared/client_initializer_behaviour.rb#L289)
|
3862
|
+
* [uses the custom provided fallback hosts (#RSC15a)](./spec/shared/client_initializer_behaviour.rb#L293)
|
3863
|
+
* when set with fallback_hosts_use_default
|
3864
|
+
* [sets the environment attribute](./spec/shared/client_initializer_behaviour.rb#L304)
|
3865
|
+
* [uses the production default fallback hosts (#RTN17b)](./spec/shared/client_initializer_behaviour.rb#L308)
|
3866
|
+
* rest_host
|
3867
|
+
* when set without custom fallback hosts configured
|
3868
|
+
* [sets the custom_host attribute](./spec/shared/client_initializer_behaviour.rb#L319)
|
3869
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L323)
|
3870
|
+
* when set with environment and without custom fallback hosts configured
|
3871
|
+
* [sets the environment attribute](./spec/shared/client_initializer_behaviour.rb#L333)
|
3872
|
+
* [sets the custom_host attribute](./spec/shared/client_initializer_behaviour.rb#L337)
|
3873
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L341)
|
3874
|
+
* when set with custom fallback hosts configured
|
3875
|
+
* [sets the custom_host attribute](./spec/shared/client_initializer_behaviour.rb#L351)
|
3876
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L355)
|
3877
|
+
* realtime_host
|
3878
|
+
* when set without custom fallback hosts configured
|
3879
|
+
* [sets the realtime_host option](./spec/shared/client_initializer_behaviour.rb#L368)
|
3880
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L372)
|
3881
|
+
* custom port
|
3882
|
+
* when set without custom fallback hosts configured
|
3883
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L383)
|
3884
|
+
* custom TLS port
|
3885
|
+
* when set without custom fallback hosts configured
|
3886
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L394)
|
3850
3887
|
* delegators
|
3851
|
-
* [delegates :client_id to .auth](./spec/shared/client_initializer_behaviour.rb#
|
3852
|
-
* [delegates :auth_options to .auth](./spec/shared/client_initializer_behaviour.rb#
|
3888
|
+
* [delegates :client_id to .auth](./spec/shared/client_initializer_behaviour.rb#L408)
|
3889
|
+
* [delegates :auth_options to .auth](./spec/shared/client_initializer_behaviour.rb#L413)
|
3853
3890
|
* delegation to the REST Client
|
3854
3891
|
* [passes on the options to the initializer](./spec/unit/realtime/client_spec.rb#L15)
|
3855
3892
|
* for attribute
|
@@ -4055,9 +4092,40 @@ _(see [spec/unit/rest/client_spec.rb](./spec/unit/rest/client_spec.rb))_
|
|
4055
4092
|
* with custom logger and log_level
|
4056
4093
|
* [uses the custom logger](./spec/shared/client_initializer_behaviour.rb#L259)
|
4057
4094
|
* [sets the custom log level](./spec/shared/client_initializer_behaviour.rb#L263)
|
4095
|
+
* environment
|
4096
|
+
* when set without custom fallback hosts configured
|
4097
|
+
* [sets the environment attribute](./spec/shared/client_initializer_behaviour.rb#L275)
|
4098
|
+
* [uses the default fallback hosts (#TBC, see https://github.com/ably/wiki/issues/361)](./spec/shared/client_initializer_behaviour.rb#L279)
|
4099
|
+
* when set with custom fallback hosts configured
|
4100
|
+
* [sets the environment attribute](./spec/shared/client_initializer_behaviour.rb#L289)
|
4101
|
+
* [uses the custom provided fallback hosts (#RSC15a)](./spec/shared/client_initializer_behaviour.rb#L293)
|
4102
|
+
* when set with fallback_hosts_use_default
|
4103
|
+
* [sets the environment attribute](./spec/shared/client_initializer_behaviour.rb#L304)
|
4104
|
+
* [uses the production default fallback hosts (#RTN17b)](./spec/shared/client_initializer_behaviour.rb#L308)
|
4105
|
+
* rest_host
|
4106
|
+
* when set without custom fallback hosts configured
|
4107
|
+
* [sets the custom_host attribute](./spec/shared/client_initializer_behaviour.rb#L319)
|
4108
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L323)
|
4109
|
+
* when set with environment and without custom fallback hosts configured
|
4110
|
+
* [sets the environment attribute](./spec/shared/client_initializer_behaviour.rb#L333)
|
4111
|
+
* [sets the custom_host attribute](./spec/shared/client_initializer_behaviour.rb#L337)
|
4112
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L341)
|
4113
|
+
* when set with custom fallback hosts configured
|
4114
|
+
* [sets the custom_host attribute](./spec/shared/client_initializer_behaviour.rb#L351)
|
4115
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L355)
|
4116
|
+
* realtime_host
|
4117
|
+
* when set without custom fallback hosts configured
|
4118
|
+
* [sets the realtime_host option](./spec/shared/client_initializer_behaviour.rb#L368)
|
4119
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L372)
|
4120
|
+
* custom port
|
4121
|
+
* when set without custom fallback hosts configured
|
4122
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L383)
|
4123
|
+
* custom TLS port
|
4124
|
+
* when set without custom fallback hosts configured
|
4125
|
+
* [has no default fallback hosts](./spec/shared/client_initializer_behaviour.rb#L394)
|
4058
4126
|
* delegators
|
4059
|
-
* [delegates :client_id to .auth](./spec/shared/client_initializer_behaviour.rb#
|
4060
|
-
* [delegates :auth_options to .auth](./spec/shared/client_initializer_behaviour.rb#
|
4127
|
+
* [delegates :client_id to .auth](./spec/shared/client_initializer_behaviour.rb#L408)
|
4128
|
+
* [delegates :auth_options to .auth](./spec/shared/client_initializer_behaviour.rb#L413)
|
4061
4129
|
* initializer options
|
4062
4130
|
* TLS
|
4063
4131
|
* disabled
|
@@ -4145,6 +4213,6 @@ _(see [spec/unit/util/pub_sub_spec.rb](./spec/unit/util/pub_sub_spec.rb))_
|
|
4145
4213
|
|
4146
4214
|
## Test summary
|
4147
4215
|
|
4148
|
-
* Passing tests:
|
4216
|
+
* Passing tests: 2109
|
4149
4217
|
* Pending tests: 5
|
4150
4218
|
* Failing tests: 1
|