public void Ctor() {
			var response = new StoreResponse();
			Assert.IsTrue(response.Succeeded, "The default status should be Succeeded.");
			Assert.IsNull(response.FailureReason);

			response = new StoreResponse("failed");
			Assert.IsFalse(response.Succeeded);
			Assert.AreEqual("failed", response.FailureReason);
		}
		public void Serializable() {
			var store = new StoreResponse();
			store.Succeeded = false;
			store.FailureReason = "some reason";
			var formatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
			var ms = new MemoryStream();
			formatter.Serialize(ms, store);
			ms.Position = 0;
			var store2 = formatter.Deserialize(ms);
			Assert.AreEqual(store, store2);
		}
		public void EqualityTests() {
			var response1 = new StoreResponse();
			var response2 = new StoreResponse();
			Assert.AreEqual(response1, response2);

			response1.Succeeded = true;
			response2.Succeeded = false;
			Assert.AreNotEqual(response1, response2);

			response1.Succeeded = false;
			Assert.AreEqual(response1, response2);

			response1.FailureReason = "bad code";
			Assert.AreNotEqual(response1, response2);

			response2.FailureReason = "bad code";
			Assert.AreEqual(response1, response2);
		}
		public async Task Store() {
			var request = new StoreRequest();
			var newAttribute = new AttributeValues(
				IncrementingAttribute,
				"val" + (this.incrementingAttributeValue++).ToString(),
				"val" + (this.incrementingAttributeValue++).ToString());
			request.Attributes.Add(newAttribute);

			var successResponse = new StoreResponse();
			successResponse.Succeeded = true;

			await this.RoundtripAsync(Protocol.Default, new[] { request }, new[] { successResponse });

			var failureResponse = new StoreResponse();
			failureResponse.Succeeded = false;
			failureResponse.FailureReason = "Some error";

			await this.RoundtripAsync(Protocol.Default, new[] { request }, new[] { failureResponse });
		}
        public void Store()
        {
            var request = new StoreRequest();
            var newAttribute = new AttributeValues(
                IncrementingAttribute,
                "val" + (incrementingAttributeValue++).ToString(),
                "val" + (incrementingAttributeValue++).ToString());
            request.Attributes.Add(newAttribute);

            var successResponse = new StoreResponse();
            successResponse.Succeeded = true;

            ExtensionTestUtilities.Roundtrip(Protocol.Default, new[] { request }, new[] { successResponse });

            var failureResponse = new StoreResponse();
            failureResponse.Succeeded = false;
            failureResponse.FailureReason = "Some error";

            ExtensionTestUtilities.Roundtrip(Protocol.Default, new[] { request }, new[] { failureResponse });
        }