spec/util_bitcompat_spec.lua
author Kim Alvefur <zash@zash.se>
Wed, 27 Mar 2024 19:33:11 +0100
changeset 13471 c2a476f4712a
parent 13453 9912baa541c0
permissions -rw-r--r--
util.startup: Fix exiting on pidfile trouble prosody.shutdown() relies on prosody.main_thread, which has not been set yet at this point. Doing a clean shutdown might actually be harmful in case it tears down things set up by the conflicting Prosody, such as the very pidfile we were looking at. Thanks again SigmaTel71 for noticing
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12370
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);
13453
9912baa541c0 util.bit53: Add bnot() method
Matthew Wild <mwild1@gmail.com>
parents: 12370
diff changeset
    27
9912baa541c0 util.bit53: Add bnot() method
Matthew Wild <mwild1@gmail.com>
parents: 12370
diff changeset
    28
	it("bnot works", function ()
9912baa541c0 util.bit53: Add bnot() method
Matthew Wild <mwild1@gmail.com>
parents: 12370
diff changeset
    29
		assert.equal(0x0000FF00, bit.band(0xFFFFFFFF, bit.bnot(0xFFFF00FF)));
9912baa541c0 util.bit53: Add bnot() method
Matthew Wild <mwild1@gmail.com>
parents: 12370
diff changeset
    30
	end);
12370
c640717e01ca util.bitcompat: Add some simple tests
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    31
end);