"use strict";

const expect = require("chai").expect;
const stub = require("sinon").stub;
const Auth = require("../../../client/js/auth");
const localStorage = require("../../../client/js/localStorage");
const location = require("../../../client/js/location");

describe("Auth", function() {
	describe(".signout", function() {
		beforeEach(function() {
			stub(localStorage, "clear");
			stub(location, "reload");
		});

		afterEach(function() {
			localStorage.clear.restore();
			location.reload.restore();
		});

		it("should empty the local storage", function() {
			Auth.signout();
			expect(localStorage.clear.calledOnce).to.be.true;
		});

		it("should reload the page", function() {
			Auth.signout();
			expect(location.reload.calledOnce).to.be.true;
		});
	});
});