aboutsummaryrefslogtreecommitdiff
path: root/planetwars-matchrunner/tests/test_matchrunner.rs
diff options
context:
space:
mode:
Diffstat (limited to 'planetwars-matchrunner/tests/test_matchrunner.rs')
-rw-r--r--planetwars-matchrunner/tests/test_matchrunner.rs17
1 files changed, 17 insertions, 0 deletions
diff --git a/planetwars-matchrunner/tests/test_matchrunner.rs b/planetwars-matchrunner/tests/test_matchrunner.rs
index 43afd85..c2b324c 100644
--- a/planetwars-matchrunner/tests/test_matchrunner.rs
+++ b/planetwars-matchrunner/tests/test_matchrunner.rs
@@ -148,3 +148,20 @@ async fn docker_runner_crash() {
})
.await;
}
+
+#[tokio::test]
+async fn test_long_line() {
+ let bot_spec = simple_python_docker_bot_spec("./bots", "echo_bot.py");
+ let len = 10 * 2_usize.pow(20); // 10 megabytes - hopefully large enough to cause buffering
+ let buf = std::iter::repeat(b'a').take(len).collect::<Vec<u8>>();
+ with_bot_match_ctx(bot_spec, |ctx| {
+ async move {
+ let resp = ctx.request(1, buf, Duration::from_millis(200)).await;
+
+ let resp_bytes = resp.expect("unexpected error");
+ assert_eq!(resp_bytes.len(), len + 1);
+ }
+ .boxed()
+ })
+ .await;
+}