Skip to content

Commit a94f927

Browse files
committed
Merge pull request #29 from CallFire/develop
1.1.6 additional changes
2 parents 323c49b + 66e2a5f commit a94f927

25 files changed

+215
-174
lines changed

CallfireApiClient.nuspec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
=============================
1919
Version 1.1.6 - Mar 25 2016
2020
- added mono debug files generation on Windows platform
21+
- removed get/update batch api calls from TextBroadcastsApi
2122

2223
Version 1.1.5 - Mar 14 2016
2324
- added debug support for Mono platform

Changelog

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ Callfire API client Changelog
22
=============================
33
Version 1.1.6 - Mar 25 2016
44
- added mono debug files generation on Windows platform
5+
- removed get/update batch api calls from TextBroadcastsApi
56

67
Version 1.1.5 - Mar 14 2016
78
- added debug support for Mono platform

src/CallfireApiClient.IntegrationTests/Api/CallsTexts/CallsApiIntegrationTest.cs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
using CallfireApiClient.Api.Common.Model;
55
using System.Collections.Generic;
66
using NUnit.Framework;
7+
using CallfireApiClient.Api.Contacts.Model.Request;
78

89
namespace CallfireApiClient.IntegrationTests.Api.CallsTexts
910
{
@@ -19,7 +20,7 @@ public void GetCall()
1920

2021
Assert.AreEqual(1, call.Id);
2122
Assert.AreEqual("18088395900", call.ToNumber);
22-
Assert.AreEqual(StateType.FINISHED, call.State);
23+
Assert.AreEqual(StateType.FINISHED, call.State);
2324
}
2425

2526
[Test]
@@ -42,10 +43,12 @@ public void FindCalls()
4243
[Test]
4344
public void SendCall()
4445
{
45-
var recipient1 = new CallRecipient { ContactId = 463633187003, LiveMessage = "testMessage" };
46-
var recipient2 = new CallRecipient { ContactId = 463633187003, LiveMessage = "testMessage" };
46+
var contacts = Client.ContactsApi.Find(new FindContactsRequest());
47+
48+
var recipient1 = new CallRecipient { ContactId = contacts.Items[0].Id, LiveMessage = "testMessage" };
49+
var recipient2 = new CallRecipient { ContactId = contacts.Items[0].Id, LiveMessage = "testMessage" };
4750
var recipients = new List<CallRecipient> { recipient1, recipient2 };
48-
51+
4952
IList<Call> calls = Client.CallsApi.Send(recipients, null, "items(id,fromNumber,state)");
5053
Console.WriteLine("Calls: " + calls);
5154

src/CallfireApiClient.IntegrationTests/Api/CallsTexts/MediaApiIntegrationTest.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,16 @@
33
using CallfireApiClient.Api.Common.Model;
44
using NUnit.Framework;
55
using System.IO;
6-
using CallfireApiClient;
76

87
namespace CallfireApiClient.IntegrationTests.Api.CallsTexts
98
{
109
[TestFixture, Ignore("temporary disabled")]
1110
public class MediaApiIntegrationTest : AbstractIntegrationTest
1211
{
13-
private const string mp3FilePath = "Resources/File-examples/train.mp3";
14-
private const string wavFilePath = "Resources/File-examples/train.wav";
12+
private const string mp3FilePath = "Resources/File-examples/train1.mp3";
13+
private const string wavFilePath = "Resources/File-examples/train1.wav";
1514

16-
[Test, Ignore("Files should not be uploaded before")]
15+
[Test]
1716
public void TestUpload()
1817
{
1918
String soundName = "mp3_test_" + DateTime.Now.Millisecond.ToString();
@@ -38,7 +37,7 @@ public void TestGet()
3837
{
3938
mp3ResourceId = new ResourceId { Id = SelectIdFromBadRequestErrorString(e.ApiErrorMessage.Message) };
4039
}
41-
40+
4241
Media media = Client.MediaApi.Get(mp3ResourceId.Id);
4342

4443
Assert.NotNull(media);

src/CallfireApiClient.IntegrationTests/Api/Campaigns/CallBroadcastsApiIntegrationTest.cs

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ namespace CallfireApiClient.IntegrationTests.Api.Campaigns
1111
public class CallBroadcastsApiIntegrationTest : AbstractIntegrationTest
1212
{
1313
[Test]
14-
public void CrudOperations()
14+
public void VoiceBroadcastCrudOperations()
1515
{
1616
var broadcast = new CallBroadcast
1717
{
@@ -46,6 +46,34 @@ public void CrudOperations()
4646
Assert.AreEqual(savedBroadcast.Name, updatedBroadcast.Name);
4747
}
4848

49+
[Test]
50+
public void IvrsCrudOperations()
51+
{
52+
var broadcast = new CallBroadcast
53+
{
54+
Name = "ivr_broadcast1",
55+
DialplanXml = "<dialplan name=\"Root\"></dialplan>",
56+
Recipients = new List<Recipient>
57+
{
58+
new Recipient { PhoneNumber = "12132212384" },
59+
new Recipient { PhoneNumber = "12132212385" }
60+
}
61+
};
62+
var id = Client.CallBroadcastsApi.Create(broadcast, true);
63+
Console.WriteLine("ivr id: " + id);
64+
var savedBroadcast = Client.CallBroadcastsApi.Get(id.Id);
65+
Assert.AreEqual(broadcast.Name, savedBroadcast.Name);
66+
67+
savedBroadcast.Name = "updated_name";
68+
savedBroadcast.DialplanXml = "<dialplan name=\"Root\">\r\n\t<play type=\"tts\">Congratulations! You have successfully configured a CallFire I V R.</play>\r\n</dialplan>";
69+
Client.CallBroadcastsApi.Update(savedBroadcast);
70+
71+
var updatedBroadcast = Client.CallBroadcastsApi.Get(id.Id, "id,name");
72+
Assert.Null(updatedBroadcast.Status);
73+
Assert.NotNull(updatedBroadcast.Id);
74+
Assert.AreEqual(savedBroadcast.Name, updatedBroadcast.Name);
75+
}
76+
4977
[Test]
5078
public void StartStopArchiveCampaign()
5179
{

src/CallfireApiClient.IntegrationTests/Api/Campaigns/CampaignSoundsApiIntegrationTest.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ public void TestUploadMp3WavFilesAndGetThem()
4444
{
4545
String soundName = "mp3_test_" + DateTime.Now.ToString();
4646

47-
string mp3FilePath = "Resources/File-examples/train.mp3";
48-
string wavFilePath = "Resources/File-examples/train.wav";
47+
string mp3FilePath = "Resources/File-examples/train1.mp3";
48+
string wavFilePath = "Resources/File-examples/train1.wav";
4949
ResourceId mp3ResourceId = Client.CampaignSoundsApi.Upload(mp3FilePath, soundName);
5050
ResourceId wavResourceId = Client.CampaignSoundsApi.Upload(wavFilePath);
5151

@@ -55,19 +55,19 @@ public void TestUploadMp3WavFilesAndGetThem()
5555
// get sound metadata
5656
CampaignSound campaignSound = Client.CampaignSoundsApi.Get(mp3ResourceId.Id, "name,status,lengthInSeconds");
5757
Assert.Null(campaignSound.Id);
58-
Assert.AreEqual(campaignSound.Name, soundName);
58+
Assert.True(campaignSound.Name.Contains("mp3_test"));
5959
Assert.AreEqual(CampaignSound.SoundStatus.ACTIVE, campaignSound.Status);
60-
Assert.AreEqual(6, campaignSound.LengthInSeconds);
60+
Assert.AreEqual(1, campaignSound.LengthInSeconds);
6161

6262
// get mp3
6363
MemoryStream ms = (MemoryStream)Client.CampaignSoundsApi.GetMp3(mp3ResourceId.Id);
64-
string existingFilePath = Path.GetFullPath("Resources/File-examples/train.mp3");
64+
string existingFilePath = Path.GetFullPath("Resources/File-examples/train1.mp3");
6565
string pathToSaveNewFile = existingFilePath.Replace("train.mp3", "mp3_sound.mp3");
6666
File.WriteAllBytes(pathToSaveNewFile, ms.ToArray());
6767

6868
// get wav
6969
ms = (MemoryStream)Client.CampaignSoundsApi.GetWav(wavResourceId.Id);
70-
existingFilePath = Path.GetFullPath("Resources/File-examples/train.wav");
70+
existingFilePath = Path.GetFullPath("Resources/File-examples/train1.wav");
7171
pathToSaveNewFile = existingFilePath.Replace("train.wav", "wav_sound.wav");
7272
File.WriteAllBytes(pathToSaveNewFile, ms.ToArray());
7373
}

src/CallfireApiClient.IntegrationTests/Api/Campaigns/TextAutoRepliesApiIntegrationTest.cs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
using System;
22
using NUnit.Framework;
33
using CallfireApiClient.Api.Campaigns.Model;
4-
using System.Linq;
5-
using CallfireApiClient.IntegrationTests.Api;
6-
using CallfireApiClient.Api.Campaigns;
74
using CallfireApiClient.Api.Campaigns.Model.Request;
85

96
namespace CallfireApiClient.IntegrationTests.Api.Campaigns
@@ -16,20 +13,20 @@ public void CrudOperations()
1613
{
1714
var textAutoReply = new TextAutoReply()
1815
{
19-
Number = "19206596476",
16+
Number = "12132041238",
2017
Message = "test message",
2118
Match = "test match"
2219
};
2320
var resourceId = Client.TextAutoRepliesApi.Create(textAutoReply);
2421
Assert.NotNull(resourceId.Id);
2522

26-
var request = new FindTextAutoRepliesRequest { Number = "19206596476" };
23+
var request = new FindTextAutoRepliesRequest { Number = "12132041238" };
2724
var textAutoReplies = Client.TextAutoRepliesApi.Find(request);
2825
Console.WriteLine(textAutoReplies);
2926

30-
Assert.AreEqual(1, textAutoReplies.TotalCount);
31-
Assert.AreEqual(1, textAutoReplies.Items.Count);
32-
var savedTextAutoReply = textAutoReplies.Items[0];
27+
Assert.True(textAutoReplies.TotalCount > 0);
28+
Assert.AreEqual(textAutoReplies.Items.Count, textAutoReplies.TotalCount);
29+
var savedTextAutoReply = textAutoReplies.Items[textAutoReplies.Items.Count - 1];
3330
Assert.AreEqual(resourceId.Id, savedTextAutoReply.Id);
3431
Assert.AreEqual(textAutoReply.Number, savedTextAutoReply.Number);
3532
Assert.AreEqual(textAutoReply.Message, savedTextAutoReply.Message);

src/CallfireApiClient.IntegrationTests/Api/Campaigns/TextBroadcastsApiIntegrationTest.cs

Lines changed: 35 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,8 @@ public class TextBroadcastsApiIntegrationTest : AbstractIntegrationTest
1515
public void CrudOperations()
1616
{
1717
var broadcast = new TextBroadcast
18-
{
19-
Name = "voice_broadcast",
20-
FromNumber = "12132212384",
18+
{
19+
Name = "text_broadcast",
2120
BigMessageStrategy = BigMessageStrategy.SEND_MULTIPLE,
2221
Message = "test_msg",
2322
LocalTimeRestriction = new LocalTimeRestriction
@@ -30,8 +29,8 @@ public void CrudOperations()
3029
},
3130
Recipients = new List<TextRecipient>
3231
{
33-
new TextRecipient { PhoneNumber = "12132212384" },
34-
new TextRecipient { PhoneNumber = "12132212385" }
32+
new TextRecipient { PhoneNumber = "14246525473" },
33+
new TextRecipient { PhoneNumber = "12132041238" }
3534
}
3635
};
3736
var id = Client.TextBroadcastsApi.Create(broadcast, true);
@@ -70,7 +69,18 @@ public void StartStopArchiveCampaign()
7069
[Test]
7170
public void GetBroadcastTexts()
7271
{
73-
var request = new GetByIdRequest { Id = 3 };
72+
var broadcast = new TextBroadcast
73+
{
74+
Name = "text_broadcast_1",
75+
Message = "test_msg",
76+
Recipients = new List<TextRecipient>
77+
{
78+
new TextRecipient { PhoneNumber = "14246525473" }
79+
}
80+
};
81+
var broadcastId = Client.TextBroadcastsApi.Create(broadcast, false);
82+
83+
var request = new GetByIdRequest { Id = broadcastId.Id };
7484
var texts = Client.TextBroadcastsApi.GetTexts(request);
7585
Console.WriteLine(texts);
7686
Assert.That(texts.Items, Is.Not.Empty);
@@ -79,10 +89,21 @@ public void GetBroadcastTexts()
7989
[Test]
8090
public void GetBroadcastStats()
8191
{
92+
var broadcast = new TextBroadcast
93+
{
94+
Name = "text_broadcast_2",
95+
Message = "test_msg",
96+
Recipients = new List<TextRecipient>
97+
{
98+
new TextRecipient { PhoneNumber = "12132041238" }
99+
}
100+
};
101+
var broadcastId = Client.TextBroadcastsApi.Create(broadcast, true);
102+
82103
var begin = DateTime.Now.AddDays(-5d);
83104
var end = DateTime.Now;
84105
var fields = "TotalOutboundCount,remainingOutboundCount";
85-
var stats = Client.TextBroadcastsApi.GetStats(3, fields, begin, end);
106+
var stats = Client.TextBroadcastsApi.GetStats(broadcastId.Id, fields, begin, end);
86107
Console.WriteLine(stats);
87108
}
88109

@@ -102,8 +123,8 @@ public void AddRecipientsAndAddRemoveBatches()
102123
// add recipients
103124
var recipients = new List<TextRecipient>
104125
{
105-
new TextRecipient { PhoneNumber = "12132212384" },
106-
new TextRecipient { PhoneNumber = "12132212385" }
126+
new TextRecipient { PhoneNumber = "14246525473" },
127+
new TextRecipient { PhoneNumber = "12132041238" }
107128
};
108129
var texts = Client.TextBroadcastsApi.AddRecipients((long)id, recipients);
109130
Console.WriteLine(texts);
@@ -122,8 +143,8 @@ public void AddRecipientsAndAddRemoveBatches()
122143
Name = "new_batch",
123144
Recipients = new List<Recipient>
124145
{
125-
new TextRecipient { PhoneNumber = "12132212384" },
126-
new TextRecipient { PhoneNumber = "12132212385" }
146+
new TextRecipient { PhoneNumber = "14246525473" },
147+
new TextRecipient { PhoneNumber = "12132041238" }
127148
}
128149
};
129150
var resourceId = Client.TextBroadcastsApi.AddBatch(addBatchRequest);
@@ -132,14 +153,13 @@ public void AddRecipientsAndAddRemoveBatches()
132153
Console.WriteLine(batches);
133154
Assert.AreEqual(batches.Items.Count + 1, updatedBatches.Items.Count);
134155

135-
var getBatchRequest = new GetByIdRequest { Id = resourceId.Id };
136-
Batch savedBatch = Client.TextBroadcastsApi.GetBatch(getBatchRequest);
156+
Batch savedBatch = Client.BatchesApi.Get(resourceId.Id);
137157
Assert.True((bool)savedBatch.Enabled);
138158
Assert.AreEqual(addBatchRequest.Name, savedBatch.Name);
139159

140160
savedBatch.Enabled = false;
141-
Client.TextBroadcastsApi.UpdateBatch(savedBatch);
142-
Batch updatedBatch = Client.TextBroadcastsApi.GetBatch(getBatchRequest);
161+
Client.BatchesApi.Update(savedBatch);
162+
Batch updatedBatch = Client.BatchesApi.Get(resourceId.Id);
143163
Assert.False((bool)updatedBatch.Enabled);
144164
}
145165
}

src/CallfireApiClient.IntegrationTests/Api/Keywords/KeywordLeasesApiIntegrationTest.cs

Lines changed: 3 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -24,35 +24,15 @@ public void GetUpdateKeywordLease()
2424
// get testing
2525
var keywordLease = Client.KeywordLeasesApi.Get("TEST_KEYWORD");
2626
Assert.AreEqual(keywordLease.KeywordName, "TEST_KEYWORD");
27-
Assert.AreEqual(keywordLease.Status, LeaseStatus.ACTIVE);
27+
Assert.IsTrue(keywordLease.Status.Equals(LeaseStatus.PENDING) || keywordLease.Status.Equals(LeaseStatus.ACTIVE));
2828

2929
// update testing
30-
bool? savedAutoRenew = keywordLease.AutoRenew;
31-
keywordLease.AutoRenew = !savedAutoRenew;
32-
33-
if (savedAutoRenew == false)
34-
{
35-
var ex1 = Assert.Throws<BadRequestException>(() => Client.KeywordLeasesApi.Update(keywordLease));
36-
Assert.That(ex1.ApiErrorMessage.Message, Is.StringMatching("Can't change autoRenew once it is false"));
37-
}
38-
else
39-
{
40-
Client.KeywordLeasesApi.Update(keywordLease);
41-
}
30+
Client.KeywordLeasesApi.Update(keywordLease);
4231

4332
// get testing with params
4433
var keywordLeaseUpdated = Client.KeywordLeasesApi.Get(keywordLease.KeywordName, "autoRenew");
45-
Assert.AreEqual(keywordLeaseUpdated.KeywordName, null);
46-
Assert.AreEqual(keywordLeaseUpdated.AutoRenew, savedAutoRenew);
47-
48-
// get back stage before test
49-
keywordLease.AutoRenew = savedAutoRenew;
50-
51-
var ex2 = Assert.Throws<CallfireApiClient.BadRequestException>(() => Client.KeywordLeasesApi.Update(keywordLease));
52-
Assert.That(ex2.ApiErrorMessage.Message, Is.StringMatching("Can't change autoRenew once it is false"));
34+
Assert.Null(keywordLeaseUpdated.KeywordName);
5335
}
54-
5536
}
56-
5737
}
5838

0 commit comments

Comments
 (0)