return function()local K=require(script.Parent.createElement)local e=require(script.Parent.oneChild)it("\115\104\111\117\108\100 \103\101\116 \122\101\114\111 \099\104\105\108\100\114\101\110 \102\114\111\109 \097 \116\097\098\108\101",function()local K={};(expect(e(K))).to.equal(nil)end)it("\115\104\111\117\108\100 \103\101\116 \101\120\097\099\116\108\121 \111\110\101 \099\104\105\108\100",function()local B=K("\070\114\097\109\101")local M={foo=B};(expect(e(M))).to.equal(B)end)it("\115\104\111\117\108\100 \101\114\114\111\114 \119\105\116\104 \109\111\114\101 \116\104\097\110 \111\110\101 \099\104\105\108\100",function()local B={a=K("\070\114\097\109\101"),b=K("\070\114\097\109\101")};(expect(function()e(B)end)).to.throw()end)it("\115\104\111\117\108\100 \104\097\110\100\108\101 \098\101\105\110\103 \112\097\115\115\101\100 \110\105\108",function()(expect(e(nil))).to.equal(nil)end)end
return function()
	local createElement = require(script.Parent.createElement)

	local oneChild = require(script.Parent.oneChild)

	it("should get zero children from a table", function()
		local children = {}

		expect(oneChild(children)).to.equal(nil)
	end)

	it("should get exactly one child", function()
		local child = createElement("Frame")
		local children = {
			foo = child,
		}

		expect(oneChild(children)).to.equal(child)
	end)

	it("should error with more than one child", function()
		local children = {
			a = createElement("Frame"),
			b = createElement("Frame"),
		}

		expect(function()
			oneChild(children)
		end).to.throw()
	end)

	it("should handle being passed nil", function()
		expect(oneChild(nil)).to.equal(nil)
	end)
end