|
| 1 | +using System; |
| 2 | +using System.Collections.Generic; |
| 3 | +using System.Net; |
| 4 | +using Microsoft.VisualStudio.TestTools.UnitTesting; |
| 5 | +using SMSApi.Api; |
| 6 | +using SMSApi.Api.Action.Sendernames; |
| 7 | +using SMSApi.Api.Response.Sendernames; |
| 8 | +using smsapiTests.Unit.Fixture; |
| 9 | +using smsapiTests.Unit.Helper; |
| 10 | + |
| 11 | +namespace smsapiTests.Unit.Action.Sendernames; |
| 12 | + |
| 13 | +[TestClass] |
| 14 | +public class GetSendernameReponseTest |
| 15 | +{ |
| 16 | + private readonly ProxyStub _proxyStub = new(); |
| 17 | + |
| 18 | + [TestMethod] |
| 19 | + public void map_response_to_sendername() |
| 20 | + { |
| 21 | + var createdAt = "2018-11-08T09:36:53+01:00"; |
| 22 | + var isDefault = new Random().NextBoolean(); |
| 23 | + var sender = "any sender"; |
| 24 | + var status = "any status"; |
| 25 | + var response = new Dictionary<string, dynamic> |
| 26 | + { |
| 27 | + { "created_at", createdAt }, |
| 28 | + { "is_default", isDefault }, |
| 29 | + { "sender", sender }, |
| 30 | + { "status", status }, |
| 31 | + }; |
| 32 | + _proxyStub.SyncExecutionResponse = new HttpResponseEntity( |
| 33 | + response.ToHttpEntityStreamTask(), |
| 34 | + HttpStatusCode.Created |
| 35 | + ); |
| 36 | + |
| 37 | + var sendername = Get(); |
| 38 | + |
| 39 | + Assert.AreEqual(DateTime.Parse(createdAt), sendername.CreatedAt); |
| 40 | + Assert.AreEqual(isDefault, sendername.IsDefault); |
| 41 | + Assert.AreEqual(sender, sendername.Sender); |
| 42 | + Assert.AreEqual(status, sendername.Status); |
| 43 | + } |
| 44 | + |
| 45 | + private Sendername Get() |
| 46 | + { |
| 47 | + var action = new GetSendername("any"); |
| 48 | + action.Proxy(_proxyStub); |
| 49 | + |
| 50 | + return action.Execute(); |
| 51 | + } |
| 52 | +} |
0 commit comments