local w=require(script.Parent.Parent.Util.BasicallyIdentical)return function()local u=require(script.Parent.Tailwind)local T=Color3.fromHex("\035\048\048\097\050\102\102")local S={[50]=Color3.fromHex("\035\100\099\102\049\102\102");[100]=Color3.fromHex("\035\097\053\100\100\102\102"),[200]=Color3.fromHex("\035\055\052\099\099\102\102"),[300]=Color3.fromHex("\035\052\052\098\097\102\102");[400]=Color3.fromHex("\035\049\056\097\097\102\102");[500]=Color3.fromHex("\035\048\048\057\049\101\053"),[600]=Color3.fromHex("\035\048\048\055\049\098\050"),[700]=Color3.fromHex("\035\048\048\053\048\055\102"),[800]=Color3.fromHex("\035\048\048\051\048\052\099");[900]=Color3.fromHex("\035\048\048\049\102\051\050");[950]=Color3.fromHex("\035\048\048\048\102\049\057")}it("\103\101\110\101\114\097\116\101\115 \097 \116\097\105\108\119\105\110\100-\108\105\107\101 \112\097\108\101\116\116\101",function()local Z=u(T)for u,T in pairs(S)do(expect(w(T,Z[u]))).to.equal(true)end end)it("\116\104\114\111\119\115 \105\102 \097\114\103\117\109\101\110\116 \105\115 \110\111\116 \097 \067\111\108\111\114\051",function()(expect(function()u(nil)end)).to.throw();(expect(function()u(true)end)).to.throw()end)end
local BasicallyIdentical = require(script.Parent.Parent.Util.BasicallyIdentical)

return function()
	local Tailwind = require(script.Parent.Tailwind)

	local BASE = Color3.fromHex("#00a2ff")
	local RESULT = {
		[050] = Color3.fromHex("#dcf1ff"),
		[100] = Color3.fromHex("#a5ddff"),
		[200] = Color3.fromHex("#74ccff"),
		[300] = Color3.fromHex("#44baff"),
		[400] = Color3.fromHex("#18aaff"),
		[500] = Color3.fromHex("#0091e5"),
		[600] = Color3.fromHex("#0071b2"),
		[700] = Color3.fromHex("#00507f"),
		[800] = Color3.fromHex("#00304c"),
		[900] = Color3.fromHex("#001f32"),
		[950] = Color3.fromHex("#000f19"),
	}

	it("generates a tailwind-like palette", function()
		local palette = Tailwind(BASE)

		for key, color in pairs(RESULT) do
			expect(BasicallyIdentical(color, palette[key])).to.equal(true)
		end
	end)

	it("throws if argument is not a Color3", function()
		expect(function()
			Tailwind(nil)
		end).to.throw()

		expect(function()
			Tailwind(true)
		end).to.throw()
	end)
end
