Files
nvim-cmp/lua/cmp/utils/misc_spec.lua
hrsh7th 1944b46336 Allow to take the full SourceConfig from source API (#561)
* - SourceConfig.opts -> SourceConfig.option
- Add SourceConfig.trigger_characters
- Allow accessing full SourceConfig from source

* fmt&lint
2021-11-23 21:17:03 +09:00

61 lines
1000 B
Lua

local spec = require('cmp.utils.spec')
local misc = require('cmp.utils.misc')
describe('misc', function()
before_each(spec.before)
it('merge', function()
local merged
merged = misc.merge({
a = {},
}, {
a = {
b = 1,
},
})
assert.are.equal(merged.a.b, 1)
merged = misc.merge({
a = false,
}, {
a = {
b = 1,
},
})
assert.are.equal(merged.a, false)
merged = misc.merge({
a = misc.none,
}, {
a = {
b = 1,
},
})
assert.are.equal(merged.a, nil)
merged = misc.merge({
a = misc.none,
}, {
a = nil,
})
assert.are.equal(merged.a, nil)
merged = misc.merge({
a = nil,
}, {
a = misc.none,
})
assert.are.equal(merged.a, nil)
end)
it('readonly', function()
local o = { a = 1, b = 2 }
local r = misc.readonly(o)
assert.are.equal(r.a, 1)
assert.has_error(function()
r.a = 5
end)
end)
end)