aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2020-10-14 19:02:48 +0200
committerKim Alvefur <zash@zash.se>2020-10-14 19:02:48 +0200
commit2f28ade873f29404b323a8e9c09e144e5f5457ae (patch)
tree4d3d576bcea2a2582e5cf6946fe8e55d1aa51903
parent3aa0f12f41b37d30556a7a0e55bde4ffde54d029 (diff)
downloadprosody-2f28ade873f29404b323a8e9c09e144e5f5457ae.tar.gz
prosody-2f28ade873f29404b323a8e9c09e144e5f5457ae.zip
net.websocket.frames: Add small test covering xor-masking
This is basically a recording of current behavior, to detect changes.
-rw-r--r--spec/net_websocket_frames_spec.lua13
1 files changed, 13 insertions, 0 deletions
diff --git a/spec/net_websocket_frames_spec.lua b/spec/net_websocket_frames_spec.lua
index d4df3a54..9499cee7 100644
--- a/spec/net_websocket_frames_spec.lua
+++ b/spec/net_websocket_frames_spec.lua
@@ -32,6 +32,17 @@ describe("net.websocket.frames", function ()
["RSV2"] = false;
["RSV3"] = false;
};
+ with_mask = {
+ ["opcode"] = 0;
+ ["length"] = 5;
+ ["data"] = "hello";
+ ["key"] = { 32, 0, 32, 0, };
+ ["FIN"] = true;
+ ["MASK"] = true;
+ ["RSV1"] = false;
+ ["RSV2"] = false;
+ ["RSV3"] = false;
+ };
}
describe("build", function ()
@@ -40,6 +51,7 @@ describe("net.websocket.frames", function ()
assert.equal("\0\0", build(test_frames.simple_empty));
assert.equal("\0\5hello", build(test_frames.simple_data));
assert.equal("\128\0", build(test_frames.simple_fin));
+ assert.equal("\128\133 \0 \0HeLlO", build(test_frames.with_mask))
end);
end);
@@ -49,6 +61,7 @@ describe("net.websocket.frames", function ()
assert.same(test_frames.simple_empty, parse("\0\0"));
assert.same(test_frames.simple_data, parse("\0\5hello"));
assert.same(test_frames.simple_fin, parse("\128\0"));
+ assert.same(test_frames.with_mask, parse("\128\133 \0 \0HeLlO"));
end);
end);