return function()local l=require(script.Parent.equalsDeep)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \116\114\117\101 \105\102 \116\104\101 \100\105\099\116\105\111\110\097\114\105\101\115 \097\114\101 \101\113\117\097\108",function()local I={hello="\119\111\114\108\100",goodbye="\119\111\114\108\100"}local b={hello="\119\111\114\108\100";goodbye="\119\111\114\108\100"};(expect(l(I,b))).to.equal(true)end)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \102\097\108\115\101 \105\102 \116\104\101 \100\105\099\116\105\111\110\097\114\105\101\115 \097\114\101 \110\111\116 \101\113\117\097\108",function()local I={hello="\119\111\114\108\100",goodbye="\119\111\114\108\100"}local b={hello="\119\111\114\108\100";goodbye="\119\111\114\108\100\050"};(expect(l(I,b))).to.equal(false)end)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \116\114\117\101 \102\111\114 \110\101\115\116\101\100 \100\105\099\116\105\111\110\097\114\105\101\115",function()local I={hello="\119\111\114\108\100";goodbye={world="\104\101\108\108\111"}}local b={hello="\119\111\114\108\100",goodbye={world="\104\101\108\108\111"}}local g={hello="\119\111\114\108\100";goodbye={world="\119\111\114\108\100"}};(expect(l(I,b))).to.equal(true);(expect(l(I,g))).to.equal(false)end)end
return function()
	local EqualsDeep = require(script.Parent.equalsDeep)

	it("should return true if the dictionaries are equal", function()
		local dictionary1 = { hello = "world", goodbye = "world" }
		local dictionary2 = { hello = "world", goodbye = "world" }

		expect(EqualsDeep(dictionary1, dictionary2)).to.equal(true)
	end)

	it("should return false if the dictionaries are not equal", function()
		local dictionary1 = { hello = "world", goodbye = "world" }
		local dictionary2 = { hello = "world", goodbye = "world2" }

		expect(EqualsDeep(dictionary1, dictionary2)).to.equal(false)
	end)

	it("should return true for nested dictionaries", function()
		local dictionary1 = { hello = "world", goodbye = { world = "hello" } }
		local dictionary2 = { hello = "world", goodbye = { world = "hello" } }
		local dictionary3 = { hello = "world", goodbye = { world = "world" } }

		expect(EqualsDeep(dictionary1, dictionary2)).to.equal(true)
		expect(EqualsDeep(dictionary1, dictionary3)).to.equal(false)
	end)
end
