return function()local w=require(script.Parent.GetContrastRatio)it("\116\104\114\111\119\115 \105\102 \097\114\103\117\109\101\110\116\115 \097\114\101 \110\111\116 \067\111\108\111\114\051\115",function()(expect(pcall(w,Color3.new(),true))).to.equal(false);(expect(pcall(w,true,Color3.new()))).to.equal(false);(expect(pcall(w,100,true))).to.equal(false)end)it("\114\101\116\117\114\110\115 \097 \110\117\109\098\101\114 \098\101\116\119\101\101\110 \048-\050\049",function()local u=w(Color3.new(),Color3.new(1,1,1));(expect(u>=0 and u<=21)).to.be.equal(true)end)it("\114\101\116\117\114\110\115 \097 \114\097\116\105\111 \102\111\114 \098\108\097\099\107\058\119\104\105\116\101",function()local u=w(Color3.new(),Color3.new(1,1,1));(expect(u)).to.be.equal(21)end)it("\114\101\116\117\114\110\115 \097 \114\097\116\105\111 \102\111\114 \098\108\097\099\107\058\098\108\097\099\107",function()local u=w(Color3.new(),Color3.new());(expect(u)).to.be.equal(1)end)it("\114\101\116\117\114\110\115 \097 \114\097\116\105\111 \102\111\114 \119\104\105\116\101\058\119\104\105\116\101",function()local u=w(Color3.new(1,1,1),Color3.new(1,1,1));(expect(u)).to.be.equal(1)end)it("\114\101\116\117\114\110\115 \097 \114\097\116\105\111 \102\111\114 \100\097\114\107 \103\114\101\121\058\108\105\103\104\116 \103\114\101\121",function()local u=w(Color3.fromRGB(112,112,112),Color3.fromRGB(230,230,230));(expect(u)).to.be.near(3.96,.01)end)it("\114\101\116\117\114\110\115 \097 \114\097\116\105\111 \102\111\114 \098\108\097\099\107\058\108\105\103\104\116 \103\114\101\121",function()local u=w(Color3.new(),Color3.fromRGB(136,136,136));(expect(u)).to.be.near(5.92,.01)end)end
return function()
	local GetContrastRatio = require(script.Parent.GetContrastRatio)

	it("throws if arguments are not Color3s", function()
		expect(pcall(GetContrastRatio, Color3.new(), true)).to.equal(false)
		expect(pcall(GetContrastRatio, true, Color3.new())).to.equal(false)
		expect(pcall(GetContrastRatio, 100, true)).to.equal(false)
	end)

	it("returns a number between 0-21", function()
		local result = GetContrastRatio(Color3.new(), Color3.new(1, 1, 1))
		expect(result >= 0 and result <= 21).to.be.equal(true)
	end)

	it("returns a ratio for black:white", function()
		local result = GetContrastRatio(Color3.new(), Color3.new(1, 1, 1))
		expect(result).to.be.equal(21)
	end)

	it("returns a ratio for black:black", function()
		local result = GetContrastRatio(Color3.new(), Color3.new())
		expect(result).to.be.equal(1)
	end)

	it("returns a ratio for white:white", function()
		local result = GetContrastRatio(Color3.new(1, 1, 1), Color3.new(1, 1, 1))
		expect(result).to.be.equal(1)
	end)

	it("returns a ratio for dark grey:light grey", function()
		local result = GetContrastRatio(Color3.fromRGB(112, 112, 112), Color3.fromRGB(230, 230, 230))
		expect(result).to.be.near(3.96, 0.01)
	end)

	it("returns a ratio for black:light grey", function()
		local result = GetContrastRatio(Color3.new(), Color3.fromRGB(136, 136, 136))
		expect(result).to.be.near(5.92, 0.01)
	end)
end
