assert_log_predicate(mock_saved_log_has_message_containing(str), \
"expected log to contain " # str);
+#define expect_log_msg_containing_either(str1, str2) \
+ assert_log_predicate(mock_saved_log_has_message_containing(str1) || \
+ mock_saved_log_has_message_containing(str2), \
+ "expected log to contain " # str1 " or " # str2);
+
#define expect_single_log_msg_containing(str) \
do { \
assert_log_predicate(mock_saved_log_has_message_containing(str), \
(void)arg;
+ /* We might drop a log_err */
+ int prev_level = setup_full_capture_of_logs(LOG_ERR);
results = get_interface_address6_list(LOG_ERR, AF_INET6, 1);
+ tt_int_op(smartlist_len(mock_saved_logs()), OP_LE, 1);
+ if (smartlist_len(mock_saved_logs()) == 1) {
+ expect_log_msg_containing_either("connect() failed",
+ "unable to create socket");
+
+ }
+ teardown_capture_of_logs(prev_level);
tt_assert(results != NULL);
/* Work even on systems without IPv6 interfaces */
results = get_interface_address6_list(LOG_ERR, AF_INET6, 0);
tt_int_op(smartlist_len(mock_saved_logs()), OP_LE, 1);
if (smartlist_len(mock_saved_logs()) == 1) {
- expect_log_msg_containing("connect() failed");
+ expect_log_msg_containing_either("connect() failed",
+ "unable to create socket");
+
}
teardown_capture_of_logs(prev_level);