public void Initialize() { _settings = new Mock<ISimplifyWebSettings>(); _context = new Mock<IOwinContext>(); _settings.SetupGet(x => x.DefaultLanguage).Returns("en"); _headerDictionary = new Mock<IHeaderDictionary>(); _context.SetupGet(x => x.Request.Cookies).Returns(new RequestCookieCollection(new Dictionary<string, string>())); _context.SetupGet(x => x.Response.Cookies).Returns(new ResponseCookieCollection(_headerDictionary.Object)); _languageManager = new LanguageManager(_settings.Object, _context.Object); }
public void Constructor_HaveRequestCookie_CurrentLanguageSet() { // Assign var cookies = new Dictionary<string, string> { { LanguageManager.CookieLanguageFieldName, "ru" } }; _context.SetupGet(x => x.Request.Cookies).Returns(new RequestCookieCollection(cookies)); _settings.SetupGet(x => x.DefaultLanguage).Returns("en"); // Act _languageManager = new LanguageManager(_settings.Object, _context.Object); // Assert Assert.AreEqual("ru", _languageManager.Language); }
public void SetCookieLanguage_CorrectLanguage_CorrectCookieCreated() { // Assign _settings.SetupGet(x => x.DefaultLanguage).Returns("en"); _languageManager = new LanguageManager(_settings.Object, _context.Object); _headerDictionary.Setup(x => x.AppendValues(It.IsAny<string>(), It.IsAny<string>())).Callback<string, string[]>((key, values) => { Assert.AreEqual("Set-Cookie", key); Assert.IsTrue(values[0].Contains("language=ru")); }); // Act _languageManager.SetCookieLanguage("ru"); }
public void Constructor_HaveBrowserLanguageAndSettingIsEnabledCase2_LanguageSetFromHeader() { // Assign _settings.SetupGet(x => x.AcceptBrowserLanguage).Returns(true); var header = new HeaderDictionary(new Dictionary<string, string[]>()); header.Append("Accept-Language", "ru-RU;q=0.5"); _context.SetupGet(x => x.Request.Headers).Returns(header); // Act _languageManager = new LanguageManager(_settings.Object, _context.Object); // Assert Assert.AreEqual("ru", _languageManager.Language); }
public void Constructor_NoBrowserLanguage_DefaultLanguageSet() { // Assign _settings.SetupGet(x => x.AcceptBrowserLanguage).Returns(true); var header = new HeaderDictionary(new Dictionary<string, string[]>()); _context.SetupGet(x => x.Request.Headers).Returns(header); // Act _languageManager = new LanguageManager(_settings.Object, _context.Object); // Assert Assert.AreEqual("en", _languageManager.Language); }
public void Constructor_HaveBrowserLanguageAndCookieLanguage_LanguageSetFromCookie() { // Assign var cookies = new Dictionary<string, string> { { LanguageManager.CookieLanguageFieldName, "fr" } }; _context.SetupGet(x => x.Request.Cookies).Returns(new RequestCookieCollection(cookies)); _settings.SetupGet(x => x.AcceptBrowserLanguage).Returns(true); var header = new HeaderDictionary(new Dictionary<string, string[]>()); header.Append("Accept-Language", "ru-RU"); _context.SetupGet(x => x.Request.Headers).Returns(header); // Act _languageManager = new LanguageManager(_settings.Object, _context.Object); // Assert Assert.AreEqual("fr", _languageManager.Language); }