Skip to content

Commit 5f3ae57

Browse files
authored
improvement: [PLA-10528] add sms pending and double-opt-in opt-out types to user profile (#81)
1 parent 0bc559e commit 5f3ae57

2 files changed

Lines changed: 53 additions & 4 deletions

File tree

src/main/com/sailthru/client/params/User.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,9 @@ public ApiAction getApiCall() {
103103

104104
public enum OptOutType {
105105
OPT_OUT_TYPE_STOP("opt-out"),
106-
OPT_OUT_TYPE_START("opt-in");
107-
106+
OPT_OUT_TYPE_START("opt-in"),
107+
OPT_OUT_TYPE_PENDING("pending"),
108+
OPT_OUT_TYPE_DOUBLE_OPT_IN("double-opt-in");
108109
public final String optOutTypeStr;
109110

110111
OptOutType(String optOutTypeStr) {

src/test/com/sailthru/client/params/UserTest.java

Lines changed: 50 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,22 +118,70 @@ public void testSetOptoutSmsStatus() {
118118
assertEquals(expected, result);
119119
}
120120

121-
public void testSetSmsMarketingStatus() {
121+
public void testSetSmsMarketingStatusTypeStart() {
122122
user.setSmsMarketingStatus(User.OptOutType.OPT_OUT_TYPE_START);
123123

124124
String expected = "{\"sms_marketing_status\":\"opt-in\"}";
125125
String result = gson.toJson(user);
126126
assertEquals(expected, result);
127127
}
128128

129-
public void testSetSmsTransactionalStatus() {
129+
public void testSetSmsTransactionalStatusTypeStart() {
130130
user.setSmsTransactionalStatus(User.OptOutType.OPT_OUT_TYPE_START);
131131

132132
String expected = "{\"sms_transactional_status\":\"opt-in\"}";
133133
String result = gson.toJson(user);
134134
assertEquals(expected, result);
135135
}
136136

137+
public void testSetSmsMarketingStatusTypeStop() {
138+
user.setSmsMarketingStatus(User.OptOutType.OPT_OUT_TYPE_STOP);
139+
140+
String expected = "{\"sms_marketing_status\":\"opt-out\"}";
141+
String result = gson.toJson(user);
142+
assertEquals(expected, result);
143+
}
144+
145+
public void testSetSmsTransactionalStatusTypeStop() {
146+
user.setSmsTransactionalStatus(User.OptOutType.OPT_OUT_TYPE_STOP);
147+
148+
String expected = "{\"sms_transactional_status\":\"opt-out\"}";
149+
String result = gson.toJson(user);
150+
assertEquals(expected, result);
151+
}
152+
153+
public void testSetSmsMarketingStatusTypePending() {
154+
user.setSmsMarketingStatus(User.OptOutType.OPT_OUT_TYPE_PENDING);
155+
156+
String expected = "{\"sms_marketing_status\":\"pending\"}";
157+
String result = gson.toJson(user);
158+
assertEquals(expected, result);
159+
}
160+
161+
public void testSetSmsTransactionalStatusTypePending() {
162+
user.setSmsTransactionalStatus(User.OptOutType.OPT_OUT_TYPE_PENDING);
163+
164+
String expected = "{\"sms_transactional_status\":\"pending\"}";
165+
String result = gson.toJson(user);
166+
assertEquals(expected, result);
167+
}
168+
169+
public void testSetSmsMarketingStatusTypeDoubleOptIn() {
170+
user.setSmsMarketingStatus(User.OptOutType.OPT_OUT_TYPE_DOUBLE_OPT_IN);
171+
172+
String expected = "{\"sms_marketing_status\":\"double-opt-in\"}";
173+
String result = gson.toJson(user);
174+
assertEquals(expected, result);
175+
}
176+
177+
public void testSetSmsTransactionalStatusTypeDoubleOptIn() {
178+
user.setSmsTransactionalStatus(User.OptOutType.OPT_OUT_TYPE_DOUBLE_OPT_IN);
179+
180+
String expected = "{\"sms_transactional_status\":\"double-opt-in\"}";
181+
String result = gson.toJson(user);
182+
assertEquals(expected, result);
183+
}
184+
137185
public void testSetLogin() {
138186
Map<String, Object> login = new HashMap<String, Object>();
139187
login.put("ip", "123.456.789.0");

0 commit comments

Comments
 (0)