return function()describe("\099\111\110\116\101\120\116 \105\115 \112\097\115\115\101\100 \098\101\116\119\101\101\110 \108\105\102\101\099\121\099\108\101 \104\111\111\107\115 \097\110\100 \105\116 \098\108\111\099\107\115",function()beforeAll(function(U)U.a=1 end)beforeEach(function(U)U.b=1 end)it("\098\101\102\111\114\101 \104\111\111\107\115 \115\104\111\117\108\100 \114\117\110",function(U)(expect(U.a)).to.equal(1);(expect(U.b)).to.equal(1)end)afterEach(function(U)(expect(U.b)).to.equal(1)end)afterAll(function(U)(expect(U.a)).to.equal(1)end)end)end
-- luacheck: globals describe beforeAll beforeEach it expect afterEach afterAll

return function()
	describe("context is passed between lifecycle hooks and it blocks", function()
		beforeAll(function(context)
			context.a = 1
		end)

		beforeEach(function(context)
			context.b = 1
		end)

		it("before hooks should run", function(context)
			expect(context.a).to.equal(1)
			expect(context.b).to.equal(1)
		end)

		afterEach(function(context)
			expect(context.b).to.equal(1)
		end)

		afterAll(function(context)
			-- Failures in afterAll aren't reported.
			expect(context.a).to.equal(1)
		end)
	end)
end