@@ -36,6 +36,8 @@ void test_compose_setup()
3636 std::string_view const expected = " *2\r\n $5\r\n HELLO\r\n $1\r\n 3\r\n " ;
3737 BOOST_TEST_EQ (cfg.setup .payload (), expected);
3838 BOOST_TEST (cfg.setup .has_hello_priority ());
39+ BOOST_TEST (cfg.setup .get_config ().cancel_if_unresponded );
40+ BOOST_TEST (cfg.setup .get_config ().cancel_on_connection_lost );
3941}
4042
4143void test_compose_setup_select ()
@@ -51,6 +53,8 @@ void test_compose_setup_select()
5153 " *2\r\n $6\r\n SELECT\r\n $2\r\n 10\r\n " ;
5254 BOOST_TEST_EQ (cfg.setup .payload (), expected);
5355 BOOST_TEST (cfg.setup .has_hello_priority ());
56+ BOOST_TEST (cfg.setup .get_config ().cancel_if_unresponded );
57+ BOOST_TEST (cfg.setup .get_config ().cancel_on_connection_lost );
5458}
5559
5660void test_compose_setup_clientname ()
@@ -63,6 +67,8 @@ void test_compose_setup_clientname()
6367 expected = " *4\r\n $5\r\n HELLO\r\n $1\r\n 3\r\n $7\r\n SETNAME\r\n $11\r\n Boost.Redis\r\n " ;
6468 BOOST_TEST_EQ (cfg.setup .payload (), expected);
6569 BOOST_TEST (cfg.setup .has_hello_priority ());
70+ BOOST_TEST (cfg.setup .get_config ().cancel_if_unresponded );
71+ BOOST_TEST (cfg.setup .get_config ().cancel_on_connection_lost );
6672}
6773
6874void test_compose_setup_auth ()
@@ -78,6 +84,8 @@ void test_compose_setup_auth()
7884 expected = " *5\r\n $5\r\n HELLO\r\n $1\r\n 3\r\n $4\r\n AUTH\r\n $3\r\n foo\r\n $3\r\n bar\r\n " ;
7985 BOOST_TEST_EQ (cfg.setup .payload (), expected);
8086 BOOST_TEST (cfg.setup .has_hello_priority ());
87+ BOOST_TEST (cfg.setup .get_config ().cancel_if_unresponded );
88+ BOOST_TEST (cfg.setup .get_config ().cancel_on_connection_lost );
8189}
8290
8391void test_compose_setup_auth_empty_password ()
@@ -92,6 +100,8 @@ void test_compose_setup_auth_empty_password()
92100 expected = " *5\r\n $5\r\n HELLO\r\n $1\r\n 3\r\n $4\r\n AUTH\r\n $3\r\n foo\r\n $0\r\n\r\n " ;
93101 BOOST_TEST_EQ (cfg.setup .payload (), expected);
94102 BOOST_TEST (cfg.setup .has_hello_priority ());
103+ BOOST_TEST (cfg.setup .get_config ().cancel_if_unresponded );
104+ BOOST_TEST (cfg.setup .get_config ().cancel_on_connection_lost );
95105}
96106
97107void test_compose_setup_auth_setname ()
@@ -108,6 +118,8 @@ void test_compose_setup_auth_setname()
108118 " 6\r\n mytest\r\n " ;
109119 BOOST_TEST_EQ (cfg.setup .payload (), expected);
110120 BOOST_TEST (cfg.setup .has_hello_priority ());
121+ BOOST_TEST (cfg.setup .get_config ().cancel_if_unresponded );
122+ BOOST_TEST (cfg.setup .get_config ().cancel_on_connection_lost );
111123}
112124
113125void test_compose_setup_use_setup ()
@@ -127,6 +139,8 @@ void test_compose_setup_use_setup()
127139 " *2\r\n $6\r\n SELECT\r\n $1\r\n 8\r\n " ;
128140 BOOST_TEST_EQ (cfg.setup .payload (), expected);
129141 BOOST_TEST (cfg.setup .has_hello_priority ());
142+ BOOST_TEST (cfg.setup .get_config ().cancel_if_unresponded );
143+ BOOST_TEST (cfg.setup .get_config ().cancel_on_connection_lost );
130144}
131145
132146// Regression check: we set the priority flag
@@ -142,6 +156,27 @@ void test_compose_setup_use_setup_no_hello()
142156 std::string_view const expected = " *2\r\n $6\r\n SELECT\r\n $1\r\n 8\r\n " ;
143157 BOOST_TEST_EQ (cfg.setup .payload (), expected);
144158 BOOST_TEST (cfg.setup .has_hello_priority ());
159+ BOOST_TEST (cfg.setup .get_config ().cancel_if_unresponded );
160+ BOOST_TEST (cfg.setup .get_config ().cancel_on_connection_lost );
161+ }
162+
163+ // Regression check: we set the relevant cancellation flags in the request
164+ void test_compose_setup_use_setup_flags ()
165+ {
166+ redis::config cfg;
167+ cfg.use_setup = true ;
168+ cfg.setup .clear ();
169+ cfg.setup .push (" SELECT" , 8 );
170+ cfg.setup .get_config ().cancel_if_unresponded = false ;
171+ cfg.setup .get_config ().cancel_on_connection_lost = false ;
172+
173+ compose_setup_request (cfg);
174+
175+ std::string_view const expected = " *2\r\n $6\r\n SELECT\r\n $1\r\n 8\r\n " ;
176+ BOOST_TEST_EQ (cfg.setup .payload (), expected);
177+ BOOST_TEST (cfg.setup .has_hello_priority ());
178+ BOOST_TEST (cfg.setup .get_config ().cancel_if_unresponded );
179+ BOOST_TEST (cfg.setup .get_config ().cancel_on_connection_lost );
145180}
146181
147182// clear response
@@ -185,6 +220,7 @@ int main()
185220 test_compose_setup_auth_setname ();
186221 test_compose_setup_use_setup ();
187222 test_compose_setup_use_setup_no_hello ();
223+ test_compose_setup_use_setup_flags ();
188224
189225 test_clear_response_empty ();
190226 test_clear_response_nonempty ();
0 commit comments