#354 Some clean up and show the difference between paid and free a bit more.
This commit is contained in:
parent
a1ede8980f
commit
32f9cf3ab1
@ -2,10 +2,9 @@ package com.iluwatar.featuretoggle.pattern;
|
||||
|
||||
import com.iluwatar.featuretoggle.user.User;
|
||||
|
||||
/**
|
||||
* Created by joseph on 26/01/16.
|
||||
*/
|
||||
|
||||
public interface Service {
|
||||
|
||||
public String getWelcomeMessage(User user);
|
||||
String getWelcomeMessage(User user);
|
||||
|
||||
}
|
||||
|
@ -4,15 +4,12 @@ import com.iluwatar.featuretoggle.pattern.Service;
|
||||
import com.iluwatar.featuretoggle.user.User;
|
||||
import com.iluwatar.featuretoggle.user.UserGroup;
|
||||
|
||||
/**
|
||||
* Created by joseph on 26/01/16.
|
||||
*/
|
||||
public class TieredFeatureToggleVersion implements Service {
|
||||
|
||||
@Override
|
||||
public String getWelcomeMessage(User user) {
|
||||
if(UserGroup.isPaid(user)){
|
||||
return "You're amazing thanks for paying for this awesome software.";
|
||||
return "You're amazing " + user.getName() + ". Thanks for paying for this awesome software.";
|
||||
}
|
||||
|
||||
return "I suppose you can use this software.";
|
||||
|
@ -1,7 +1,14 @@
|
||||
package com.iluwatar.featuretoggle.user;
|
||||
|
||||
/**
|
||||
* Created by joseph on 26/01/16.
|
||||
*/
|
||||
public class User {
|
||||
|
||||
private String name;
|
||||
|
||||
public User(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
}
|
||||
|
@ -3,9 +3,6 @@ package com.iluwatar.featuretoggle.user;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Created by joseph on 26/01/16.
|
||||
*/
|
||||
public class UserGroup {
|
||||
|
||||
private static List<User> freeGroup = new ArrayList<>();
|
||||
|
@ -8,32 +8,29 @@ import org.junit.Test;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
* Created by joseph on 26/01/16.
|
||||
*/
|
||||
public class TieredFeatureToggleVersionTest {
|
||||
|
||||
User paidUser = new User();
|
||||
User freeUser = new User();
|
||||
final User paidUser = new User("Jamie Coder");
|
||||
final User freeUser = new User("Alan Defect");
|
||||
final Service service = new TieredFeatureToggleVersion();
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
UserGroup.addUserToPaidGroup(paidUser);
|
||||
UserGroup.addUserToFreeGroup(freeUser);
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetWelcomeMessageForPaidUser() throws Exception {
|
||||
Service service = new TieredFeatureToggleVersion();
|
||||
String welcomeMessage = service.getWelcomeMessage(paidUser);
|
||||
assertEquals("You're amazing thanks for paying for this awesome software.",welcomeMessage);
|
||||
final String welcomeMessage = service.getWelcomeMessage(paidUser);
|
||||
final String expected = "You're amazing Jamie Coder. Thanks for paying for this awesome software.";
|
||||
assertEquals(expected,welcomeMessage);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetWelcomeMessageForFreeUser() throws Exception {
|
||||
Service service = new TieredFeatureToggleVersion();
|
||||
String welcomeMessage = service.getWelcomeMessage(freeUser);
|
||||
assertEquals("I suppose you can use this software.",welcomeMessage);
|
||||
final String welcomeMessage = service.getWelcomeMessage(freeUser);
|
||||
final String expected = "I suppose you can use this software.";
|
||||
assertEquals(expected,welcomeMessage);
|
||||
}
|
||||
}
|
@ -9,28 +9,28 @@ public class UserGroupTest {
|
||||
|
||||
@Test
|
||||
public void testAddUserToFreeGroup() throws Exception {
|
||||
User user = new User();
|
||||
User user = new User("Free User");
|
||||
UserGroup.addUserToFreeGroup(user);
|
||||
assertFalse(UserGroup.isPaid(user));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAddUserToPaidGroup() throws Exception {
|
||||
User user = new User();
|
||||
User user = new User("Paid User");
|
||||
UserGroup.addUserToPaidGroup(user);
|
||||
assertTrue(UserGroup.isPaid(user));
|
||||
}
|
||||
|
||||
@Test(expected = IllegalArgumentException.class)
|
||||
public void testAddUserToPaidWhenOnFree() throws Exception {
|
||||
User user = new User();
|
||||
User user = new User("Paid User");
|
||||
UserGroup.addUserToFreeGroup(user);
|
||||
UserGroup.addUserToPaidGroup(user);
|
||||
}
|
||||
|
||||
@Test(expected = IllegalArgumentException.class)
|
||||
public void testAddUserToFreeWhenOnPaid() throws Exception {
|
||||
User user = new User();
|
||||
User user = new User("Free User");
|
||||
UserGroup.addUserToPaidGroup(user);
|
||||
UserGroup.addUserToFreeGroup(user);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user