spec/util_strbitop.lua
author Kim Alvefur <zash@zash.se>
Mon, 17 Oct 2022 15:20:06 +0200
changeset 12779 1dd468c63a3d
parent 11172 cde600e2fdf9
permissions -rw-r--r--
mod_blocklist: Add option 'migrate_legacy_blocking' to disable migration from mod_privacy Tiny performance improvement for new users by skipping this check. Most servers should have gone trough the migration for all active users long ago. As a suitable first step of phasing out this code, we make it possible to disable it first. Later it can be disabled by default, before finally the code is deleted.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11172
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     1
local strbitop = require "util.strbitop";
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     2
describe("util.strbitop", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     3
	describe("sand()", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     4
		it("works", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     5
			assert.equal(string.rep("Aa", 100), strbitop.sand(string.rep("a", 200), "Aa"));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     6
		end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     7
		it("returns empty string if first argument is empty", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     8
			assert.equal("", strbitop.sand("", ""));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     9
			assert.equal("", strbitop.sand("", "key"));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    10
		end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    11
		it("returns initial string if key is empty", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    12
			assert.equal("hello", strbitop.sand("hello", ""));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    13
		end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    14
	end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    15
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    16
	describe("sor()", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    17
		it("works", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    18
			assert.equal(string.rep("a", 200), strbitop.sor(string.rep("Aa", 100), "a"));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    19
		end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    20
		it("returns empty string if first argument is empty", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    21
			assert.equal("", strbitop.sor("", ""));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    22
			assert.equal("", strbitop.sor("", "key"));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    23
		end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    24
		it("returns initial string if key is empty", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    25
			assert.equal("hello", strbitop.sor("hello", ""));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    26
		end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    27
	end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    28
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    29
	describe("sxor()", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    30
		it("works", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    31
			assert.equal(string.rep("Aa", 100), strbitop.sxor(string.rep("a", 200), " \0"));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    32
		end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    33
		it("returns empty string if first argument is empty", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    34
			assert.equal("", strbitop.sxor("", ""));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    35
			assert.equal("", strbitop.sxor("", "key"));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    36
		end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    37
		it("returns initial string if key is empty", function ()
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    38
			assert.equal("hello", strbitop.sxor("hello", ""));
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    39
		end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    40
	end);
cde600e2fdf9 util.strbitop: Add tests covering basics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    41
end);