/// <summary> /// Initializes a new instance of the <see cref="RestContext"/> class. /// </summary> /// <param name="baseAddress">Base address (URL).</param> /// <param name="applicationName">Application name.</param> /// <param name="applicationApiKey">Application API key.</param> /// <param name="sessionId">SessionId to be added to base headers.</param> /// <param name="httpFacade">User defined instance of <see cref="IHttpFacade"/>.</param> /// <param name="serializer">User defined instance of <see cref="IContentSerializer"/>.</param> /// <param name="apiVersion">REST API version to use.</param> public RestContext(string baseAddress, string applicationName, string applicationApiKey, string sessionId, IHttpFacade httpFacade, IContentSerializer serializer, RestApiVersion apiVersion = RestApiVersion.V2) { HttpUtils.CheckUrlString(baseAddress); if (applicationName == null) { throw new ArgumentNullException("applicationName"); } if (applicationApiKey == null) { throw new ArgumentNullException("applicationApiKey"); } if (httpFacade == null) { throw new ArgumentNullException("httpFacade"); } if (serializer == null) { throw new ArgumentNullException("serializer"); } address = new HttpAddress(baseAddress, apiVersion); HttpFacade = httpFacade; ContentSerializer = serializer; SetBaseHeaders(applicationName, applicationApiKey, sessionId); Factory = new ServiceFactory(address, HttpFacade, ContentSerializer, httpHeaders); }
public void ShouldCreateEmailApi() { // Arrange HttpHeaders headers = new HttpHeaders(); IServiceFactory factory = new ServiceFactory(Mock.Of<IHttpAddress>(), Mock.Of<IHttpFacade>(), Mock.Of<IContentSerializer>(), headers); // Act IEmailApi api = factory.CreateEmailApi("email"); // Assert api.ShouldNotBe(null); }