public void TestConstructor() { var documentTypeId = Guid.NewGuid(); var id = 1; var key = new DocumentKey(documentTypeId, id); var ecaDocument = new ECADocument(); ecaDocument.SetKey(key); var response = new DocumentSearchResponse <ECADocument>(); response.Count = 1; response.Coverage = 2; var searchResult = new SearchResult <ECADocument>(); searchResult.Document = ecaDocument; searchResult.Highlights = new HitHighlights(); searchResult.Score = 3; response.Results.Add(searchResult); var model = new DocumentSearchResponseViewModel(response); Assert.AreEqual(response.Count, model.Count); Assert.AreEqual(response.Coverage, model.Coverage); Assert.AreEqual(1, response.Results.Count); var firstResult = response.Results.First(); Assert.AreEqual(searchResult.Score, firstResult.Score); Assert.IsTrue(Object.ReferenceEquals(ecaDocument, searchResult.Document)); Assert.IsTrue(Object.ReferenceEquals(searchResult.Highlights, firstResult.Highlights)); }
public void TestGetKey() { var key = new DocumentKey(Guid.NewGuid(), 1); var instance = new ECADocument(); instance.SetKey(key); Assert.IsNotNull(instance.Id); Assert.AreEqual(key, instance.GetKey()); }
public void TestSetKey_DocumentKey() { var key = new DocumentKey(Guid.NewGuid(), 1); var instance = new ECADocument(); instance.SetKey(key); Assert.AreEqual(key, instance.GetKey()); Assert.AreEqual(key.ToString(), instance.Id); Assert.AreEqual(key.DocumentTypeId.ToString(), instance.DocumentTypeId); }
public void TestConstructor_SearchResult() { var ecaDocument = new ECADocument(); var searchResult = new SearchResult <ECADocument>(); searchResult.Document = ecaDocument; searchResult.Highlights = new HitHighlights(); searchResult.Score = 3; var model = new SearchResultViewModel(searchResult); Assert.IsNotNull(model.Document); Assert.AreEqual(searchResult.Score, model.Score); Assert.IsTrue(Object.ReferenceEquals(searchResult.Highlights, model.HitHighlights)); }
public void TestSetKey_NullStringValue() { var instance = new ECADocument(); var key = new DocumentKey(Guid.NewGuid(), 1); instance.SetKey(key); Assert.IsNotNull(instance.GetKey()); Assert.IsNotNull(instance.Id); string nullKey = null; instance.SetKey(nullKey); Assert.IsNull(instance.GetKey()); Assert.IsNull(instance.Id); }
/// <summary> /// Creates a new ECADocumentViewModel with the given ECADocument. /// </summary> /// <param name="ecaDocument">The eca document.</param> public ECADocumentViewModel(ECADocument ecaDocument) { Contract.Requires(ecaDocument != null, "The eca document must not be null."); this.Description = ecaDocument.Description; this.DocumentTypeId = ecaDocument.DocumentTypeId; this.DocumentTypeName = ecaDocument.DocumentTypeName; this.Foci = ecaDocument.Foci; this.Goals = ecaDocument.Goals; this.Id = ecaDocument.Id; this.Name = ecaDocument.Name; this.Objectives = ecaDocument.Objectives; this.OfficeSymbol = ecaDocument.OfficeSymbol; this.PointsOfContact = ecaDocument.PointsOfContact; this.Themes = ecaDocument.Themes; this.Websites = ecaDocument.Websites; this.Regions = ecaDocument.Regions; this.Countries = ecaDocument.Countries; this.Locations = ecaDocument.Locations; this.Status = ecaDocument.Status; this.StartDate = ecaDocument.StartDate; this.EndDate = ecaDocument.EndDate; this.Addresses = ecaDocument.Addresses; this.PhoneNumbers = ecaDocument.PhoneNumbers; }
public void TestTypedConstructor_WithConfiguration() { var configuration = new TestDocumentConfiguration(); var instance = new TestDocument(); instance.Description = "desc"; instance.Id = 1; instance.Name = "name"; instance.OfficeSymbol = "office"; instance.Status = "status"; instance.Foci = new List <string> { "foci" }; instance.Goals = new List <string> { "goals" }; instance.Objectives = new List <string> { "objectives" }; instance.Themes = new List <string> { "themes" }; instance.PointsOfContact = new List <string> { "pocs" }; instance.Websites = new List <string> { "web" }; instance.Regions = new List <string> { "region" }; instance.Countries = new List <string> { "country" }; instance.Locations = new List <string> { "local" }; instance.Addresses = new List <string> { "address1" }; instance.PhoneNumbers = new List <string> { "phone1" }; instance.StartDate = DateTimeOffset.UtcNow.AddDays(-1.0); instance.EndDate = DateTimeOffset.UtcNow.AddDays(1.0); var testDocumentProperties = typeof(TestDocument).GetProperties().OrderBy(x => x.Name).ToList(); var ecaDocumentProperties = typeof(ECADocument).GetProperties().OrderBy(x => x.Name).ToList(); //make sure all public properties are accounted for in TestDocument foreach (var testDocProperty in testDocumentProperties) { //check every property on TestDocument instance has a value. Assert.IsNotNull(testDocProperty.GetValue(instance), String.Format("TestDocument property [{0}] does not have a value.", testDocProperty.Name)); } var document = new ECADocument <TestDocument>(configuration, instance); var documentKey = new DocumentKey(TestDocumentConfiguration.TEST_DOCUMENT_DOCUMENT_TYPE_ID, instance.Id); Assert.AreEqual(documentKey, document.GetKey()); Assert.AreEqual(configuration.GetDocumentTypeId().ToString(), document.DocumentTypeId.ToString()); Assert.AreEqual(configuration.GetDocumentTypeName(), document.DocumentTypeName); Assert.AreEqual(instance.Description, document.Description); Assert.AreEqual(instance.Name, document.Name); Assert.AreEqual(instance.OfficeSymbol, document.OfficeSymbol); Assert.AreEqual(instance.Status, document.Status); Assert.AreEqual(instance.StartDate, document.StartDate); Assert.AreEqual(instance.EndDate, document.EndDate); CollectionAssert.AreEqual(instance.Addresses.ToList(), document.Addresses.ToList()); CollectionAssert.AreEqual(instance.PhoneNumbers.ToList(), document.PhoneNumbers.ToList()); CollectionAssert.AreEqual(instance.Foci.ToList(), document.Foci.ToList()); CollectionAssert.AreEqual(instance.Goals.ToList(), document.Goals.ToList()); CollectionAssert.AreEqual(instance.Objectives.ToList(), document.Objectives.ToList()); CollectionAssert.AreEqual(instance.Themes.ToList(), document.Themes.ToList()); CollectionAssert.AreEqual(instance.PointsOfContact.ToList(), document.PointsOfContact.ToList()); CollectionAssert.AreEqual(instance.Regions.ToList(), document.Regions.ToList()); CollectionAssert.AreEqual(instance.Countries.ToList(), document.Countries.ToList()); CollectionAssert.AreEqual(instance.Locations.ToList(), document.Locations.ToList()); CollectionAssert.AreEqual(instance.Websites.ToList(), document.Websites.ToList()); foreach (var ecaDocProperty in ecaDocumentProperties) { //make sure every eca document property has a value. Assert.IsNotNull(ecaDocProperty.GetValue(document)); } }
public void TestConstructor_ECADocumentConstructor() { var documentTypeId = Guid.NewGuid(); var id = 1; var key = new DocumentKey(documentTypeId, id); var document = new ECADocument(); document.SetKey(key); document.Description = "desc"; document.Name = "name"; document.OfficeSymbol = "office"; document.Status = "status"; document.Foci = new List <string> { "foci" }; document.Goals = new List <string> { "goals" }; document.Objectives = new List <string> { "objectives" }; document.Themes = new List <string> { "themes" }; document.PointsOfContact = new List <string> { "pocs" }; document.Websites = new List <string> { "web" }; document.Regions = new List <string> { "region" }; document.Countries = new List <string> { "country" }; document.Locations = new List <string> { "local" }; document.PhoneNumbers = new List <string> { "phone number" }; document.Addresses = new List <string> { "addresses" }; document.DocumentTypeId = "type id"; document.DocumentTypeName = "type name"; document.StartDate = DateTimeOffset.Now.AddDays(-1.0); document.EndDate = DateTimeOffset.Now.AddDays(1.0); var model = new ECADocumentViewModel(document); Assert.AreEqual(key, model.Key); Assert.AreEqual(document.Description, model.Description); Assert.AreEqual(document.DocumentTypeId, model.DocumentTypeId); Assert.AreEqual(document.DocumentTypeName, model.DocumentTypeName); Assert.AreEqual(document.Id, model.Id); Assert.AreEqual(document.Name, model.Name); Assert.AreEqual(document.Status, model.Status); Assert.AreEqual(document.OfficeSymbol, model.OfficeSymbol); Assert.AreEqual(document.StartDate, model.StartDate); Assert.AreEqual(document.EndDate, model.EndDate); Assert.IsTrue(Object.ReferenceEquals(document.Foci, model.Foci)); Assert.IsTrue(Object.ReferenceEquals(document.Goals, model.Goals)); Assert.IsTrue(Object.ReferenceEquals(document.Objectives, model.Objectives)); Assert.IsTrue(Object.ReferenceEquals(document.PointsOfContact, model.PointsOfContact)); Assert.IsTrue(Object.ReferenceEquals(document.Themes, model.Themes)); Assert.IsTrue(Object.ReferenceEquals(document.Regions, model.Regions)); Assert.IsTrue(Object.ReferenceEquals(document.Countries, model.Countries)); Assert.IsTrue(Object.ReferenceEquals(document.Locations, model.Locations)); Assert.IsTrue(Object.ReferenceEquals(document.Websites, model.Websites)); var properties = typeof(ECADocument).GetProperties(); foreach (var property in properties) { //check every property on TestDocument instance has a value. Assert.IsNotNull(property.GetValue(document), String.Format("Property [{0}] on the document does not have a value.", property.Name)); Assert.IsNotNull(property.GetValue(model), String.Format("Property [{0}] on the model does not have a value.", property.Name)); Assert.AreEqual(property.GetValue(document), property.GetValue(model)); } }