return function()local v=game:GetService("\082\101\112\108\105\099\097\116\101\100\083\116\111\114\097\103\101")local h=v.Packages local B=require(h.Llama)local k=B.Dictionary local c=k.some it("\115\104\111\117\108\100 \118\097\108\105\100\097\116\101 \116\121\112\101\115",function()local v={{0};{{};0},{0,function() end}}for h=1,#v,1 do local B,k=pcall(function()c(unpack(v[h]))end);(expect(string.find(k,"\101\120\112\101\099\116\101\100\044 \103\111\116"))).to.be.ok()end end)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \097 \098\111\111\108\101\097\110",function()local function v(v)return function()return v end end;(expect(c({},v(true)))).to.be.a("\098\111\111\108\101\097\110");(expect(c({},v(false)))).to.be.a("\098\111\111\108\101\097\110")end)it("\115\104\111\117\108\100 \112\097\115\115 \116\104\101 \118\097\108\117\101 \097\110\100 \107\101\121 \116\111 \116\104\101 \112\114\101\100\105\099\097\116\101",function()local v={foo=1}local function h(h,B)(expect(h)).to.equal(v.foo);(expect(B)).to.equal("\102\111\111")end c(v,h)end)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \116\114\117\101 \105\102 \097\116 \108\101\097\115\116 \111\110\101 \101\110\116\114\121 \112\097\115\115\101\115 \116\104\101 \112\114\101\100\105\099\097\116\101",function()local v={foo=1,bar=2;baz=3}local function h(v)return v==1 end;(expect(c(v,h))).to.equal(true)end)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \102\097\108\115\101 \105\102 \110\111 \101\110\116\114\105\101\115 \112\097\115\115 \116\104\101 \112\114\101\100\105\099\097\116\101",function()local v={foo=1;bar=2,baz=3}local function h(v)return v==4 end;(expect(c(v,h))).to.equal(false)end)end
return function()
	local ReplicatedStorage = game:GetService("ReplicatedStorage")

	local Packages = ReplicatedStorage.Packages
	local Llama = require(Packages.Llama)

	local Dictionary = Llama.Dictionary
	local some = Dictionary.some

	it("should validate types", function()
		local args = {
			{ 0 },
			{ {}, 0 },
			{ 0, function() end }
		}

		for i = 1, #args do
			local _, err = pcall(function()
				some(unpack(args[i]))
			end)

			expect(string.find(err, "expected, got")).to.be.ok()
		end
	end)

	it("should return a boolean", function()
		local function always(bool)
			return function()
				return bool
			end
		end

		expect(some({}, always(true))).to.be.a("boolean")
		expect(some({}, always(false))).to.be.a("boolean")
	end)

	it("should pass the value and key to the predicate", function()
		local a = {
			foo = 1,
		}

		local function predicate(v, k)
			expect(v).to.equal(a.foo)
			expect(k).to.equal("foo")
		end

		some(a, predicate)
	end)

	it("should return true if at least one entry passes the predicate", function()
		local a = {
			foo = 1,
			bar = 2,
			baz = 3,
		}

		local function only1s(v)
			return v == 1
		end

		expect(some(a, only1s)).to.equal(true)
	end)

	it("should return false if no entries pass the predicate", function()
		local a = {
			foo = 1,
			bar = 2,
			baz = 3,
		}

		local function only4s(v)
			return v == 4
		end

		expect(some(a, only4s)).to.equal(false)
	end)
end