Software /
code /
prosody
Annotate
spec/util_encodings_spec.lua @ 10946:84441c19750e
mod_register_ibr: Add event for successful password reset
This is in addition to the existing event for password changes. This
one includes additional details about the actor, and only triggers
when the change is due to the account owner (presumably) resetting.
As example use case is to invalidate one-time password reset tokens.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Mon, 22 Jun 2020 11:35:24 +0100 |
parent | 8373:af7b41a0ec9e |
rev | line source |
---|---|
8236
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
1 |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
2 local encodings = require "util.encodings"; |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
3 local utf8 = assert(encodings.utf8, "no encodings.utf8 module"); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
4 |
8367
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
5 describe("util.encodings", function () |
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
6 describe("#encode()", function() |
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
7 it("should work", function () |
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
8 assert.is.equal(encodings.base64.encode(""), ""); |
8371
09a1ce618ad0
spec/util.encodings: Fix syntax
Kim Alvefur <zash@zash.se>
parents:
8370
diff
changeset
|
9 assert.is.equal(encodings.base64.encode('coucou'), "Y291Y291"); |
8367
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
10 assert.is.equal(encodings.base64.encode("\0\0\0"), "AAAA"); |
8372
872efae6e222
spec/util.encodings: Test an UTF-8 sequence
Kim Alvefur <zash@zash.se>
parents:
8371
diff
changeset
|
11 assert.is.equal(encodings.base64.encode("\255\255\255"), "////"); |
8367
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
12 end); |
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
13 end); |
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
14 describe("#decode()", function() |
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
15 it("should work", function () |
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
16 assert.is.equal(encodings.base64.decode(""), ""); |
8373
af7b41a0ec9e
spec/util.encodings: Test a lonly padding (can appear like this in SASL)
Kim Alvefur <zash@zash.se>
parents:
8372
diff
changeset
|
17 assert.is.equal(encodings.base64.decode("="), ""); |
8371
09a1ce618ad0
spec/util.encodings: Fix syntax
Kim Alvefur <zash@zash.se>
parents:
8370
diff
changeset
|
18 assert.is.equal(encodings.base64.decode('Y291Y291'), "coucou"); |
8367
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
19 assert.is.equal(encodings.base64.decode("AAAA"), "\0\0\0"); |
8372
872efae6e222
spec/util.encodings: Test an UTF-8 sequence
Kim Alvefur <zash@zash.se>
parents:
8371
diff
changeset
|
20 assert.is.equal(encodings.base64.decode("////"), "\255\255\255"); |
8367
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
21 end); |
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
22 end); |
60eb22fd21b8
spec/util.encodings: Add some base64 tests (Thanks Link Mavue)
Kim Alvefur <zash@zash.se>
parents:
8236
diff
changeset
|
23 end); |
8236
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
24 describe("util.encodings.utf8", function() |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
25 describe("#valid()", function() |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
26 it("should work", function() |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
27 |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
28 for line in io.lines("spec/utf8_sequences.txt") do |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
29 local data = line:match(":%s*([^#]+)"):gsub("%s+", ""):gsub("..", function (c) return string.char(tonumber(c, 16)); end) |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
30 local expect = line:match("(%S+):"); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
31 |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
32 assert(expect == "pass" or expect == "fail", "unknown expectation: "..line:match("^[^:]+")); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
33 |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
34 local valid = utf8.valid(data); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
35 assert.is.equal(valid, utf8.valid(data.." ")); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
36 assert.is.equal(valid, expect == "pass", line); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
37 end |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
38 |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
39 end); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
40 end); |
4878e4159e12
Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
41 end); |