diff options
author | Kim Alvefur <zash@zash.se> | 2018-11-29 17:20:49 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2018-11-29 17:20:49 +0100 |
commit | 7f75a66d21f6a04c686d2cc5915c8381928a4705 (patch) | |
tree | 7962265e62afde1960387c690b44de31cd05f225 /spec/net_websocket_frames_spec.lua | |
parent | 9bc330f368d20d232cfafc3498d5f83252e3df82 (diff) | |
download | prosody-7f75a66d21f6a04c686d2cc5915c8381928a4705.tar.gz prosody-7f75a66d21f6a04c686d2cc5915c8381928a4705.zip |
net.websocket.frames: Add some brief tests
These are mostly just recordings of minimal input roundtripped back into tables.
Diffstat (limited to 'spec/net_websocket_frames_spec.lua')
-rw-r--r-- | spec/net_websocket_frames_spec.lua | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/spec/net_websocket_frames_spec.lua b/spec/net_websocket_frames_spec.lua new file mode 100644 index 00000000..d4df3a54 --- /dev/null +++ b/spec/net_websocket_frames_spec.lua @@ -0,0 +1,56 @@ +describe("net.websocket.frames", function () + local nwf = require "net.websocket.frames"; + + local test_frames = { + simple_empty = { + ["opcode"] = 0; + ["length"] = 0; + ["data"] = ""; + ["FIN"] = false; + ["MASK"] = false; + ["RSV1"] = false; + ["RSV2"] = false; + ["RSV3"] = false; + }; + simple_data = { + ["opcode"] = 0; + ["length"] = 5; + ["data"] = "hello"; + ["FIN"] = false; + ["MASK"] = false; + ["RSV1"] = false; + ["RSV2"] = false; + ["RSV3"] = false; + }; + simple_fin = { + ["opcode"] = 0; + ["length"] = 0; + ["data"] = ""; + ["FIN"] = true; + ["MASK"] = false; + ["RSV1"] = false; + ["RSV2"] = false; + ["RSV3"] = false; + }; + } + + describe("build", function () + local build = nwf.build; + it("works", 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)); + end); + end); + + describe("parse", function () + local parse = nwf.parse; + it("works", 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")); + end); + end); + +end); + |