Вам необходимо очистить состояние после отправки. После вызова setState реактивный рендер будет вызван снова с пустыми значениями, которые мы установили, надеюсь, это поможет
.then(function (response) {
let successMessage = document.querySelector('.success-message');
// here clear the state,
this.setState({
fullName: '',
email: '',
message: '',
});
successMessage.innerHTML = JSON.stringify(response.data.title);
})
Это должно работать:
PostsController postsController = new PostsController(postDL);
var context = mocks.Stub<HttpContextBase>();
var request = mocks.Stub<HttpRequestBase>();
SetupResult.For(request.IsAuthenticated).Return(true);
SetupResult.For(context.Request).Return(request);
postsController.ControllerContext = new ControllerContext(context, new RouteData(), postsController);
Это может быть несколько полезно Вам, работал на меня в подобном сценарии:
Можно найти сообщение, которое я записал на этом, чтобы быть полезным в некотором роде http://santoshbenjamin.wordpress.com/2008/08/04/mock-httpcontext-and-session-state/
аплодисменты benjy
Теперь, для раскрытия, я должен все же пачкать руки с большей частью материала, Вы работаете с, однако:
Если Вы хотите дразнить IsAuthenticated, почему не только создают статический класс для возврата bool, который может управляться тестовым кодом?
Это немного грубо вокруг краев, но надо надеяться Вы получаете идею:
interface IAuthenticationChecker
{
bool IsAuthenticated { get; }
}
public class MockAuthenticationChecker : IAuthenticationChecker
{
static bool _authenticated = false;
public static void SetAuthenticated(bool value)
{
_authenticated = value;
}
#region IAuthenticationChecker Members
public bool IsAuthenticated
{
get { return _authenticated; }
}
#endregion
}
public class RequestAuthenticationChecker : IAuthenticationChecker
{
#region IAuthenticationChecker Members
public bool IsAuthenticated
{
get {
if (HttpContext.Current == null)
throw new ApplicationException(
"Unable to Retrieve IsAuthenticated for Request becuse there is no current HttpContext.");
return HttpContext.Current.Request.IsAuthenticated;
}
}
#endregion
}
Можно затем использовать ссылку на любого на уровне приложения, да это означает, что необходимо добавить ссылку на уровне приложения, и необходимо использовать другое касательно, а не Запрос, но Вы также получаете полный контроль над аутентификацией для тестирования :)
К вашему сведению - это полностью открыто для того, чтобы быть уничтоженным, я бросил его вместе приблизительно за минуту :)