Exemple #1
0
        public void CreateVersion()
        {
            // Arrange
            var templateId  = "ddb96bbc-9b92-425e-8979-99464621b543";
            var name        = "example_version_name";
            var subject     = "<%subject%>";
            var htmlContent = "<%body%>";
            var textContent = "<%body%>";
            var isActive    = true;

            var mockRepository = new MockRepository(MockBehavior.Strict);
            var mockClient     = mockRepository.Create <IClient>();

            mockClient
            .Setup(c => c.PostAsync($"{ENDPOINT}/{templateId}/versions", It.IsAny <JObject>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StringContent(SINGLE_TEMPLATE_VERSION_JSON)
            })
            .Verifiable();

            var templates = new Templates(mockClient.Object, ENDPOINT);

            // Act
            var result = templates.CreateVersionAsync(templateId, name, subject, htmlContent, textContent, isActive, CancellationToken.None).Result;

            // Assert
            result.ShouldNotBeNull();
        }
Exemple #2
0
        public async Task CreateVersionAsync()
        {
            // Arrange
            var templateId  = "ddb96bbc-9b92-425e-8979-99464621b543";
            var name        = "example_version_name";
            var subject     = "<%subject%>";
            var htmlContent = "<%body%>";
            var textContent = "<%body%>";
            var isActive    = true;

            var mockHttp = new MockHttpMessageHandler();

            mockHttp.Expect(HttpMethod.Post, Utils.GetSendGridApiUri(ENDPOINT, templateId, "versions")).Respond("application/json", SINGLE_TEMPLATE_VERSION_JSON);

            var client    = Utils.GetFluentClient(mockHttp);
            var templates = new Templates(client);

            // Act
            var result = await templates.CreateVersionAsync(templateId, name, subject, htmlContent, textContent, isActive, null, CancellationToken.None).ConfigureAwait(false);

            // Assert
            mockHttp.VerifyNoOutstandingExpectation();
            mockHttp.VerifyNoOutstandingRequest();
            result.ShouldNotBeNull();
        }
        public void CreateVersion()
        {
            // Arrange
            var templateId  = "ddb96bbc-9b92-425e-8979-99464621b543";
            var name        = "example_version_name";
            var subject     = "<%subject%>";
            var htmlContent = "<%body%>";
            var textContent = "<%body%>";
            var isActive    = true;

            var apiResponse = @"{
				'id': '8aefe0ee-f12b-4575-b5b7-c97e21cb36f3',
				'template_id': 'ddb96bbc-9b92-425e-8979-99464621b543',
				'active': 1,
				'name': 'example_version_name',
				'html_content': '<%body%>',
				'plain_content': '<%body%>',
				'subject': '<%subject%>',
				'updated_at': '2014-03-19 18:56:33'
			}"            ;
            var mockClient  = new Mock <IClient>(MockBehavior.Strict);

            mockClient.Setup(c => c.PostAsync($"{ENDPOINT}/{templateId}/versions", It.IsAny <JObject>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StringContent(apiResponse)
            });

            var templates = new Templates(mockClient.Object);

            // Act
            var result = templates.CreateVersionAsync(templateId, name, subject, htmlContent, textContent, isActive, CancellationToken.None).Result;

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(templateId, result.TemplateId);
            Assert.AreEqual(name, result.Name);
            Assert.IsTrue(result.IsActive);
        }