return function()local O=require(script.Parent.StoreProvider)local H=require(script.Parent.Parent.Roact)local p=require(script.Parent.Parent.Rodux)it("\115\104\111\117\108\100 \098\101 \105\110\115\116\097\110\116\105\097\098\108\101 \097\115 \097 \099\111\109\112\111\110\101\110\116",function()local g=p.Store.new(function()return 0 end)local t=H.createElement(O,{store=g});(expect(t)).to.be.ok()local Q=H.mount(t,nil,"\083\116\111\114\101\080\114\111\118\105\100\101\114-\116\101\115\116")H.unmount(Q)g:destruct()end)it("\115\104\111\117\108\100 \101\120\112\101\099\116 \097 \'\115\116\111\114\101\' \112\114\111\112",function()local p=H.createElement(O);(expect(function()H.mount(p)end)).to.throw()end)end
return function()
	local StoreProvider = require(script.Parent.StoreProvider)

	local Roact = require(script.Parent.Parent.Roact)
	local Rodux = require(script.Parent.Parent.Rodux)

	it("should be instantiable as a component", function()
		local store = Rodux.Store.new(function()
			return 0
		end)
		local element = Roact.createElement(StoreProvider, {
			store = store
		})

		expect(element).to.be.ok()

		local handle = Roact.mount(element, nil, "StoreProvider-test")

		Roact.unmount(handle)
		store:destruct()
	end)

	it("should expect a 'store' prop", function()
		local element = Roact.createElement(StoreProvider)

		expect(function()
			Roact.mount(element)
		end).to.throw()
	end)
end