-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Test password query
- Loading branch information
Showing
3 changed files
with
109 additions
and
15 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,23 +1,34 @@ | ||
# Basic configuration | ||
beerchat.colorize_channels = * | ||
beerchat.moderator_channel_name = mod | ||
|
||
# Plugin configuration | ||
|
||
beerchat.enable_alias = true | ||
beerchat.moderator_channel_name = mod | ||
|
||
beerchat.enable_announce = true | ||
# Enable plugins | ||
|
||
beerchat.enable_mute = true | ||
beerchat.enable_me = true | ||
beerchat.enable_hash = true | ||
beerchat.enable_acl = true | ||
beerchat.enable_pm = true | ||
beerchat.enable_whisper = true | ||
beerchat.enable_jail = true | ||
beerchat.enable_ban = true | ||
|
||
beerchat.enable_remote_mute = true | ||
beerchat.enable_cleaner = true | ||
beerchat.enable_override = true | ||
beerchat.enable_colorize = true | ||
beerchat.enable_announce = true | ||
beerchat.enable_force2channel = true | ||
beerchat.enable_password = true | ||
beerchat.enable_event-logging = true | ||
beerchat.enable_alias = true | ||
|
||
beerchat.enable_jail = true | ||
beerchat.jail.channel_name = jailchannel | ||
# Plugin configuration | ||
|
||
beerchat.enable_remote_mute = true | ||
beerchat.jail.channel_name = jailchannel | ||
beerchat.colorize_channels = * | ||
|
||
# Web relay | ||
|
||
secure.http_mods = beerchat | ||
beerchat.matterbridge_url = http://matterbridge:4242 | ||
beerchat.matterbridge_token = mytoken |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
require("mineunit") | ||
|
||
mineunit("core") | ||
mineunit("player") | ||
mineunit("server") | ||
|
||
sourcefile("init") | ||
|
||
describe("ACL", function() | ||
|
||
local M = function(s) return require("luassert.match").matches(s) end | ||
local ANY = require("luassert.match")._ | ||
assert:register("matcher", "has_channel", function(_, args) | ||
return function(msg) | ||
return type(msg) == "table" and msg.channel == args[1] | ||
end | ||
end) | ||
local CHANNEL = require("luassert.match").has_channel | ||
|
||
local SX = Player("SX", { shout = 1 }) | ||
local Sam = Player("Sam", { shout = 1 }) | ||
|
||
setup(function() | ||
mineunit:execute_on_joinplayer(SX) | ||
mineunit:execute_on_joinplayer(Sam) | ||
-- Test channels | ||
beerchat.channels["acl-password"] = { owner = "SX", color = beerchat.default_channel_color } | ||
beerchat.channels["acl-default-role"] = { owner = "SX", color = beerchat.default_channel_color } | ||
beerchat.channels["acl-owner-role"] = { owner = "SX", color = beerchat.default_channel_color } | ||
beerchat.channels["acl-manager-role"] = { owner = "SX", color = beerchat.default_channel_color } | ||
beerchat.channels["acl-write-role"] = { owner = "SX", color = beerchat.default_channel_color } | ||
beerchat.channels["acl-read-role"] = { owner = "SX", color = beerchat.default_channel_color } | ||
end) | ||
|
||
before_each(function() | ||
beerchat.set_player_channel("SX", "main") | ||
beerchat.set_player_channel("Sam", "main") | ||
end) | ||
|
||
teardown(function() | ||
mineunit:execute_on_leaveplayer(Sam) | ||
mineunit:execute_on_leaveplayer(SX) | ||
end) | ||
|
||
it("checks password", function() | ||
SX:send_chat_message("/cc #acl-password,qwerty") | ||
spy.on(minetest, "chat_send_player") | ||
-- Initiate password protected join, it should ask for password and should not join channel | ||
Sam:send_chat_message("/jc #acl-password") | ||
assert.spy(minetest.chat_send_player).called_with("Sam", M(".+assword.+lease.+assword")) | ||
assert.spy(minetest.chat_send_player).not_called_with("SX", ANY) | ||
assert.is_nil(beerchat.playersChannels["Sam"]["acl-password"]) | ||
-- Password is not visible to other players | ||
Sam:send_chat_message("qwerty") | ||
assert.spy(minetest.chat_send_player).not_called_with("SX", ANY) | ||
assert.not_nil(beerchat.playersChannels["Sam"]["acl-password"]) | ||
-- Next messages will be visible to other players | ||
Sam:send_chat_message("qwerty") | ||
assert.spy(minetest.chat_send_player).called_with("SX", ANY) | ||
end) | ||
|
||
it("invite default role", function() | ||
SX:send_chat_message("/invite_channel #acl-default-role Sam") | ||
end) | ||
|
||
it("invite owner role", function() | ||
SX:send_chat_message("/invite_channel #acl-owner-role Sam owner") | ||
end) | ||
|
||
it("invite manager role", function() | ||
SX:send_chat_message("/invite_channel #acl-manager-role Sam manager") | ||
end) | ||
|
||
it("invite write role", function() | ||
SX:send_chat_message("/invite_channel #acl-write-role Sam write") | ||
end) | ||
|
||
it("invite read role", function() | ||
SX:send_chat_message("/invite_channel #acl-read-role Sam read") | ||
end) | ||
|
||
end) |