1
//-----------------------------------------------------------------------
2 // <copyright file="DirectErrorResponseTests.cs" company="Andrew Arnott">
3 // Copyright (c) Andrew Arnott. All rights reserved.
5 //-----------------------------------------------------------------------
7 namespace DotNetOpenAuth
.Test
.OpenId
.Messages
{
9 using DotNetOpenAuth
.Messaging
;
10 using DotNetOpenAuth
.OpenId
;
11 using DotNetOpenAuth
.OpenId
.Messages
;
12 using Microsoft
.VisualStudio
.TestTools
.UnitTesting
;
16 public class DirectErrorResponseTests
: OpenIdTestBase
{
17 private DirectErrorResponse response
;
20 public override void SetUp() {
23 var request
= new AssociateUnencryptedRequest(Protocol
.V20
.Version
, new Uri("http://host"));
24 this.response
= new DirectErrorResponse(request
);
28 public void ParameterNames() {
29 this.response
.ErrorMessage
= "Some Error";
30 this.response
.Contact
= "Andrew Arnott";
31 this.response
.Reference
= "http://blog.nerdbank.net/";
33 MessageSerializer serializer
= MessageSerializer
.Get(this.response
.GetType());
34 var fields
= serializer
.Serialize(this.response
);
35 Assert
.AreEqual(Protocol
.OpenId2Namespace
, fields
["ns"]);
36 Assert
.AreEqual("Some Error", fields
["error"]);
37 Assert
.AreEqual("Andrew Arnott", fields
["contact"]);
38 Assert
.AreEqual("http://blog.nerdbank.net/", fields
["reference"]);
42 /// Verifies that error messages are created as HTTP 400 errors.
45 public void ErrorMessagesAsHttp400() {
46 var httpStatusMessage
= (IHttpDirectResponse
)this.response
;
47 Assert
.AreEqual(HttpStatusCode
.BadRequest
, httpStatusMessage
.HttpStatusCode
);