return function()local w=require(script.Parent.isLine)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \116\114\117\101 \102\111\114 \097\110\121 \050 \112\111\105\110\116\115",function()(expect(w({Vector2.new(0,0),Vector2.new(10,0)}))).to.equal(true);(expect(w({Vector2.new(10,0),Vector2.new(0,10)}))).to.equal(true);(expect(w({Vector2.new(-100,0);Vector2.new(0,100)}))).to.equal(true)end)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \116\114\117\101 \105\102 \051 \112\111\105\110\116\115 \097\114\101 \099\108\111\115\101 \101\110\111\117\103\104 \116\111 \097 \115\116\114\097\105\103\104\116 \108\105\110\101",function()local y={Vector2.new(0,0);Vector2.new(10,5);Vector2.new(20,0)};(expect(w(y))).to.equal(true)end)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \102\097\108\115\101 \105\102 \111\110\101 \112\111\105\110\116 \105\115 \116\111\111 \102\097\114 \097\119\097\121",function()local y={Vector2.new(0,0);Vector2.new(10,100);Vector2.new(20,0),Vector2.new(30,0)};(expect(w(y))).to.equal(false)end)it("\115\104\111\117\108\100 \114\101\116\117\114\110 \102\097\108\115\101 \105\102 \103\105\118\101\110 \108\101\115\115 \116\104\097\110 \050 \112\111\105\110\116\115",function()(expect(w({Vector2.new(0,0)}))).to.equal(false);(expect(w({}))).to.equal(false)end)end
return function()
	local isLine = require(script.Parent.isLine)

	it("should return true for any 2 points", function()
		expect(isLine({ Vector2.new(0, 0), Vector2.new(10, 0) })).to.equal(true)
		expect(isLine({ Vector2.new(10, 0), Vector2.new(0, 10) })).to.equal(true)
		expect(isLine({ Vector2.new(-100, 0), Vector2.new(0, 100) })).to.equal(true)
	end)

	it("should return true if 3 points are close enough to a straight line", function()
		local points = {
			Vector2.new(0, 0),
			Vector2.new(10, 5),
			Vector2.new(20, 0),
		}

		expect(isLine(points)).to.equal(true)
	end)

	it("should return false if one point is too far away", function()
		local points = {
			Vector2.new(0, 0),
			Vector2.new(10, 100),
			Vector2.new(20, 0),
			Vector2.new(30, 0),
		}

		expect(isLine(points)).to.equal(false)
	end)

	it("should return false if given less than 2 points", function()
		expect(isLine({ Vector2.new(0, 0) })).to.equal(false)
		expect(isLine({})).to.equal(false)
	end)
end
