Software /
code /
prosody
Annotate
spec/util_bitcompat_spec.lua @ 13616:2f38f3275a74
mod_cloud_notify: Merge from prosody-modules@fc521fb5ffa0
Many thanks to Thilo Molitor and Kim Alvefur for their work on this module
while it was in the community repository. It has been stable for some time, is
widely used, and provides a feature that is important to most deployments.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 09 Jan 2025 16:49:27 +0000 |
parent | 13449:9912baa541c0 |
rev | line source |
---|---|
12366
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 describe("util.bitcompat", function () |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 -- bitcompat will pass through to an appropriate implementation. Our |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 -- goal here is to check that whatever implementation is in use passes |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 -- these basic sanity checks. |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
6 local bit = require "util.bitcompat"; |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
7 |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
8 it("bor works", function () |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
9 assert.equal(0xF0FF, bit.bor(0xF000, 0x00F0, 0x000F)); |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
10 end); |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
11 |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
12 it("band works", function () |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
13 assert.equal(0x0F, bit.band(0xFF, 0x1F, 0x0F)); |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
14 end); |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
15 |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
16 it("bxor works", function () |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
17 assert.equal(0x13, bit.bxor(0x10, 0x0F, 0x0C)); |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
18 end); |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
19 |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
20 it("rshift works", function () |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
21 assert.equal(0x0F, bit.rshift(0xFF, 4)); |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
22 end); |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
23 |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
24 it("lshift works", function () |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
25 assert.equal(0xFF00, bit.lshift(0xFF, 8)); |
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
26 end); |
13449
9912baa541c0
util.bit53: Add bnot() method
Matthew Wild <mwild1@gmail.com>
parents:
12366
diff
changeset
|
27 |
9912baa541c0
util.bit53: Add bnot() method
Matthew Wild <mwild1@gmail.com>
parents:
12366
diff
changeset
|
28 it("bnot works", function () |
9912baa541c0
util.bit53: Add bnot() method
Matthew Wild <mwild1@gmail.com>
parents:
12366
diff
changeset
|
29 assert.equal(0x0000FF00, bit.band(0xFFFFFFFF, bit.bnot(0xFFFF00FF))); |
9912baa541c0
util.bit53: Add bnot() method
Matthew Wild <mwild1@gmail.com>
parents:
12366
diff
changeset
|
30 end); |
12366
c640717e01ca
util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
31 end); |