/// <summary> /// Equals override /// </summary> /// <param name="obj">The object to compare against</param> /// <returns>True if equal</returns> public override bool Equals(object obj) { if (obj is RelationshipsResponse) { RelationshipsResponse other = obj as RelationshipsResponse; List <bool> conditions = new List <bool>() { this.Relationships != null && other.ResponseHeaders != null?this.Relationships.SequenceEqual(other.Relationships) : this.Relationships == other.Relationships, this.ResponseHeaders != null && other.ResponseHeaders != null?this.ResponseHeaders.Equals(other.ResponseHeaders) : this.ResponseHeaders == other.ResponseHeaders, this.GetHashCode() == other.GetHashCode() }; return(conditions.All(condition => condition)); } else { return(false); } }
public void RelationshipsTestFullNoArgID() { Init(); decimal confidence = (decimal)0.8541343114184464; string predicate = "be filmed"; string arg1 = "The Ghostbusters movie"; string loc1 = "in Boston"; List<string> locatives = new List<string>() { loc1 }; HashSet<string> modalities = new HashSet<string>() { "assertion", "someOtherModality" }; string headersAsString = " { \"Content-Type\": \"application/json\", \"date\": \"Thu, 11 Aug 2016 15:47:32 GMT\", \"server\": \"openresty\", \"strict-transport-security\": \"max-age=63072000; includeSubdomains; preload\", \"x-rosetteapi-app-id\": \"1409611723442\", \"x-rosetteapi-concurrency\": \"50\", \"x-rosetteapi-request-id\": \"d4176692-4f14-42d7-8c26-4b2d8f7ff049\", \"content-length\": \"72\", \"connection\": \"Close\" }"; Dictionary<string, string> responseHeaders = new JavaScriptSerializer().Deserialize<Dictionary<string, string>>(headersAsString); List<RosetteRelationship> relationships = new List<RosetteRelationship>() { new RosetteRelationship(predicate, new Dictionary<int, string>() {{1, arg1}}, new Dictionary<int, string>(), null, locatives, null, confidence, modalities) }; Dictionary<string, object> content = new Dictionary<string, object>(); content.Add("relationships", relationships); RelationshipsResponse expected = new RelationshipsResponse(relationships, responseHeaders, content, null); String mockedContent = expected.ContentToString(); HttpResponseMessage mockedMessage = MakeMockedMessage(responseHeaders, HttpStatusCode.OK, mockedContent); _mockHttp.When(_testUrl + "relationships").Respond(mockedMessage); RelationshipsResponse response = _rosetteApi.Relationships("The Ghostbusters movie was filmed in Boston."); Assert.AreEqual(expected, response); }