mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-04-24 22:04:56 +00:00
config: packages,metadata,json (4 files)
This commit is contained in:
60
packages/arcade_lobby/seed/scripts/tests/arcade.test.lua
Normal file
60
packages/arcade_lobby/seed/scripts/tests/arcade.test.lua
Normal file
@@ -0,0 +1,60 @@
|
||||
-- Arcade Lobby functionality tests
|
||||
-- Uses lua_test framework with parameterized test cases
|
||||
|
||||
describe("Matchmaking", function()
|
||||
local cases = load_cases("arcade.cases.json")
|
||||
local matchmaking = require("matchmaking")
|
||||
|
||||
describe("assign_bucket", function()
|
||||
it_each(cases.matchmaking.assign_bucket, "$desc", function(tc)
|
||||
local party = { size = tc.party_size }
|
||||
local bucket = matchmaking.assign_bucket(party)
|
||||
expect(bucket).toBe(tc.expected)
|
||||
end)
|
||||
|
||||
it("returns solo for empty party table", function()
|
||||
local bucket = matchmaking.assign_bucket({})
|
||||
expect(bucket).toBe("solo")
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
|
||||
describe("Permissions", function()
|
||||
local cases = load_cases("arcade.cases.json")
|
||||
local permissions = require("permissions")
|
||||
|
||||
describe("can_create_tournament", function()
|
||||
it_each(cases.permissions.can_create_tournament, "$desc", function(tc)
|
||||
local user = { role = tc.role }
|
||||
local result = permissions.can_create_tournament(user)
|
||||
expect(result).toBe(tc.expected)
|
||||
end)
|
||||
|
||||
it("returns false for unknown role", function()
|
||||
local user = { role = "moderator" }
|
||||
local result = permissions.can_create_tournament(user)
|
||||
expect(result).toBe(false)
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
|
||||
describe("Queue Metrics", function()
|
||||
local cases = load_cases("arcade.cases.json")
|
||||
local queue_metrics = require("queue_metrics")
|
||||
|
||||
describe("summarize", function()
|
||||
it_each(cases.queue_metrics.summarize, "$desc", function(tc)
|
||||
local result = queue_metrics.summarize(tc.queues)
|
||||
expect(result.totalPlayers).toBe(tc.expected_players)
|
||||
expect(result.longestWaitSeconds).toBe(tc.expected_wait)
|
||||
end)
|
||||
|
||||
it("returns correct structure", function()
|
||||
local result = queue_metrics.summarize({
|
||||
{ players = 5, waitSeconds = 10 }
|
||||
})
|
||||
expect(result.totalPlayers).toBeTruthy()
|
||||
expect(result.longestWaitSeconds).toBeTruthy()
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
@@ -25,6 +25,14 @@
|
||||
"formatting"
|
||||
]
|
||||
},
|
||||
"tests": {
|
||||
"scripts": [
|
||||
"tests/metadata.test.lua",
|
||||
"tests/components.test.lua",
|
||||
"tests/stats.test.lua"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"minLevel": 3,
|
||||
"bindings": {
|
||||
"dbal": true,
|
||||
|
||||
@@ -23,5 +23,12 @@
|
||||
"ThemeEditor"
|
||||
]
|
||||
},
|
||||
"tests": {
|
||||
"scripts": [
|
||||
"tests/metadata.test.lua",
|
||||
"tests/components.test.lua"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"minLevel": 5
|
||||
}
|
||||
@@ -21,5 +21,19 @@
|
||||
"cli"
|
||||
]
|
||||
},
|
||||
"tests": {
|
||||
"scripts": [
|
||||
"tests/metadata.test.lua",
|
||||
"tests/component.test.lua",
|
||||
"tests/validate.test.lua",
|
||||
"tests/lua_validator.test.lua",
|
||||
"tests/structure_validator.test.lua",
|
||||
"tests/devdependencies.test.lua",
|
||||
"tests/parameterized.test.lua"
|
||||
],
|
||||
"cases": [
|
||||
"tests/cases.json"
|
||||
]
|
||||
},
|
||||
"minLevel": 5
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user