tests: Run all existing protover tests in both languages.

There's now no difference in these tests w.r.t. the C or Rust: both
fail miserably (well, Rust fails with nice descriptive errors, and C
gives you a traceback, because, well, C).
This commit is contained in:
Isis Lovecruft 2018-03-27 21:36:10 +00:00
parent f769edd148
commit 6739a69c59
No known key found for this signature in database
GPG Key ID: B8938BC5E86C046F

View File

@ -283,23 +283,22 @@ test_protover_all_supported(void *arg)
tt_str_op(msg, OP_EQ, "Sleen=0-4294967294"); tt_str_op(msg, OP_EQ, "Sleen=0-4294967294");
tor_free(msg); tor_free(msg);
/* If we get an unparseable list, we say "yes, that's supported." */ /* If we get a (barely) valid (but unsupported list, we say "yes, that's
#ifndef HAVE_RUST * supported." */
// XXXX let's make this section unconditional: rust should behave the tt_assert(protover_all_supported("Fribble=", &msg));
// XXXX same as C here! tt_ptr_op(msg, OP_EQ, NULL);
/* If we get a completely unparseable list, protover_all_supported should
* hit a fatal assertion for BUG(entries == NULL). */
tor_capture_bugs_(1); tor_capture_bugs_(1);
tt_assert(protover_all_supported("Fribble", &msg)); tt_assert(protover_all_supported("Fribble", &msg));
tt_ptr_op(msg, OP_EQ, NULL);
tor_end_capture_bugs_(); tor_end_capture_bugs_();
/* This case is forbidden. Since it came from a protover_all_supported, /* If we get a completely unparseable list, protover_all_supported should
* it can trigger a bug message. */ * hit a fatal assertion for BUG(entries == NULL). */
tor_capture_bugs_(1); tor_capture_bugs_(1);
tt_assert(protover_all_supported("Sleen=0-4294967295", &msg)); tt_assert(protover_all_supported("Sleen=0-4294967295", &msg));
tt_ptr_op(msg, OP_EQ, NULL);
tor_free(msg);
tor_end_capture_bugs_(); tor_end_capture_bugs_();
#endif
done: done:
tor_end_capture_bugs_(); tor_end_capture_bugs_();