public void Initialize()
        {
            Mock <IAdditionalDemographicRuleEngine> mock = new Mock <IAdditionalDemographicRuleEngine>();

            additionalDemographicRuleEngine = mock.Object;

            additionalDemographicController = new AdditionalDemographicController(additionalDemographicRuleEngine);

            var additionalDemographics = new List <AdditionalDemographicsModel>();

            additionalDemographics.Add(new AdditionalDemographicsModel()
            {
                ContactID   = 1,
                Name        = "Joe Smith",
                MRN         = 123456,
                EthnicityID = 1
            });
            additionalDemographics.Add(new AdditionalDemographicsModel()
            {
                ContactID   = 2,
                Name        = "Joe Smith",
                MRN         = 123456,
                EthnicityID = 1
            });
            additionalDemographics.Add(new AdditionalDemographicsModel()
            {
                ContactID   = 3,
                Name        = "Joe Smith",
                MRN         = 123456,
                EthnicityID = 1
            });

            var alladditionalDemography = new Response <AdditionalDemographicsModel>()
            {
                DataItems = additionalDemographics
            };

            //Get Additional Demographic
            Response <AdditionalDemographicsModel> additionalDemographicResponse = new Response <AdditionalDemographicsModel>();

            additionalDemographicResponse.DataItems = additionalDemographics.Where(x => x.ContactID == contactId).ToList();

            mock.Setup(r => r.GetAdditionalDemographic(It.IsAny <long>()))
            .Returns(additionalDemographicResponse);

            //Add AdditionalDemographic
            mock.Setup(r => r.AddAdditionalDemographic(It.IsAny <AdditionalDemographicsModel>()))
            .Callback((AdditionalDemographicsModel additionalDemographicsModel) => additionalDemographics.Add(additionalDemographicsModel))
            .Returns(alladditionalDemography);

            //Update AdditionalDemographic
            mock.Setup(r => r.UpdateAdditionalDemographic(It.IsAny <AdditionalDemographicsModel>()))
            .Callback((AdditionalDemographicsModel additionalDemographicsModel) => additionalDemographics.Add(additionalDemographicsModel))
            .Returns(alladditionalDemography);
        }
 public AdditionalDemographicController(IAdditionalDemographicRuleEngine additionalDemographicsRuleEngine)
 {
     _additionalDemographicsRuleEngine = additionalDemographicsRuleEngine;
 }