public void SetDevice_HttpContext_UserPerference_ReturnsExpected() { var context = new DefaultHttpContext(); var preference = new UserPerference(); string responsiveContextKey = "Responsive"; // May be we can make this constant public for testing purposes. context.SetDevice(preference); Assert.True(context.Items.ContainsKey(responsiveContextKey)); Assert.Same(preference, context.Items[responsiveContextKey]); }
public static void SetDevice(this HttpContext context, UserPerference perference) { if (context == null) { throw new ArgumentNullException(nameof(context)); } if (perference == null) { throw new ArgumentNullException(nameof(perference)); } context.Items[ResponsiveContextKey] = perference; }
public void GetDevice_HttpContext_ReturnsExpected() { string device = DeviceType.Tablet.ToString(); var preference = new UserPerference() { Resolver = device }; var context = new DefaultHttpContext(); context.SetDevice(preference); Assert.Same(preference, context.GetDevice()); Assert.Same(preference.Resolver, context.GetDevice().Resolver); }
/// <summary> /// Updates the perference async. /// </summary> /// <returns>The perference async.</returns> /// <param name="receiveMessageSource">Receive message source.</param> /// <param name="acceptConversationSource">Accept conversation source.</param> public async Task <UserInfo> UpdatePerferenceAsync(string receiveMessageSource, string acceptConversationSource) { const string req = "/me/preferences"; UserPerference p = new UserPerference { receive_message_source = receiveMessageSource, accept_conversation_source = acceptConversationSource }; var rz = await doPostRequestAsync(req, p, true); return(JsonConvert.DeserializeObject <UserInfo>(rz)); }
public void Preferred_Cookie_over_Resolver() { var preference = new UserPerference(DeviceType.Mobile, DeviceType.Desktop); Assert.Equal("Desktop", preference.Preferred); }