add gs
This commit is contained in:
@@ -0,0 +1,86 @@
|
||||
return function()
|
||||
local Config = require(script.Parent.Config)
|
||||
|
||||
it("should accept valid configuration", function()
|
||||
local config = Config.new()
|
||||
|
||||
expect(config.getValue("elementTracing")).to.equal(false)
|
||||
|
||||
config.set({
|
||||
elementTracing = true,
|
||||
})
|
||||
|
||||
expect(config.getValue("elementTracing")).to.equal(true)
|
||||
end)
|
||||
|
||||
it("should reject invalid configuration keys", function()
|
||||
local config = Config.new()
|
||||
|
||||
local badKey = "garblegoop"
|
||||
|
||||
local ok, err = pcall(function()
|
||||
config.set({
|
||||
[badKey] = true,
|
||||
})
|
||||
end)
|
||||
|
||||
expect(ok).to.equal(false)
|
||||
|
||||
-- The error should mention our bad key somewhere.
|
||||
expect(err:find(badKey)).to.be.ok()
|
||||
end)
|
||||
|
||||
it("should reject invalid configuration values", function()
|
||||
local config = Config.new()
|
||||
|
||||
local goodKey = "elementTracing"
|
||||
local badValue = "Hello there!"
|
||||
|
||||
local ok, err = pcall(function()
|
||||
config.set({
|
||||
[goodKey] = badValue,
|
||||
})
|
||||
end)
|
||||
|
||||
expect(ok).to.equal(false)
|
||||
|
||||
-- The error should mention both our key and value
|
||||
expect(err:find(goodKey)).to.be.ok()
|
||||
expect(err:find(badValue)).to.be.ok()
|
||||
end)
|
||||
|
||||
it("should prevent setting configuration more than once", function()
|
||||
local config = Config.new()
|
||||
|
||||
-- We're going to use the name of this function to see if the traceback
|
||||
-- was correct.
|
||||
local function setEmptyConfig()
|
||||
config.set({})
|
||||
end
|
||||
|
||||
setEmptyConfig()
|
||||
|
||||
local ok, err = pcall(setEmptyConfig)
|
||||
|
||||
expect(ok).to.equal(false)
|
||||
|
||||
-- The error should mention the stack trace with the original set call.
|
||||
expect(err:find("setEmptyConfig")).to.be.ok()
|
||||
end)
|
||||
|
||||
it("should reset to default values after invoking reset()", function()
|
||||
local config = Config.new()
|
||||
|
||||
expect(config.getValue("elementTracing")).to.equal(false)
|
||||
|
||||
config.set({
|
||||
elementTracing = true,
|
||||
})
|
||||
|
||||
expect(config.getValue("elementTracing")).to.equal(true)
|
||||
|
||||
config.reset()
|
||||
|
||||
expect(config.getValue("elementTracing")).to.equal(false)
|
||||
end)
|
||||
end
|
||||
Reference in New Issue
Block a user