#354 Fixed CheckStyle Issues

This commit is contained in:
Joseph McCarthy
2016-01-26 19:20:28 +00:00
parent 32f9cf3ab1
commit 91b2379fd0
7 changed files with 100 additions and 89 deletions

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent> <parent>
<artifactId>java-design-patterns</artifactId> <artifactId>java-design-patterns</artifactId>
@ -14,11 +14,11 @@
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>junit</groupId> <groupId>junit</groupId>
<artifactId>junit</artifactId> <artifactId>junit</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
</dependencies> </dependencies>
</project> </project>

View File

@ -5,6 +5,6 @@ import com.iluwatar.featuretoggle.user.User;
public interface Service { public interface Service {
String getWelcomeMessage(User user); String getWelcomeMessage(User user);
} }

View File

@ -6,13 +6,13 @@ import com.iluwatar.featuretoggle.user.UserGroup;
public class TieredFeatureToggleVersion implements Service { public class TieredFeatureToggleVersion implements Service {
@Override @Override
public String getWelcomeMessage(User user) { public String getWelcomeMessage(User user) {
if(UserGroup.isPaid(user)){ if (UserGroup.isPaid(user)) {
return "You're amazing " + user.getName() + ". 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.";
} }
return "I suppose you can use this software.";
}
} }

View File

@ -2,13 +2,13 @@ package com.iluwatar.featuretoggle.user;
public class User { public class User {
private String name; private String name;
public User(String name) { public User(String name) {
this.name = name; this.name = name;
} }
public String getName() { public String getName() {
return name; return name;
} }
} }

View File

@ -3,32 +3,43 @@ package com.iluwatar.featuretoggle.user;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
/**
* Contains the lists of users of different groups paid and free
*/
public class UserGroup { public class UserGroup {
private static List<User> freeGroup = new ArrayList<>(); private static List<User> freeGroup = new ArrayList<>();
private static List<User> paidGroup = new ArrayList<>(); private static List<User> paidGroup = new ArrayList<>();
public static void addUserToFreeGroup(final User user){ /**
if(paidGroup.contains(user)){ *
throw new IllegalArgumentException("User all ready member of paid group."); * @param user {@link User} to be added to the free group
}else{ */
if(!freeGroup.contains(user)){ public static void addUserToFreeGroup(final User user) {
freeGroup.add(user); if (paidGroup.contains(user)) {
} throw new IllegalArgumentException("User all ready member of paid group.");
} } else {
if (!freeGroup.contains(user)) {
freeGroup.add(user);
}
} }
}
public static void addUserToPaidGroup(final User user){ /**
if(freeGroup.contains(user)){ *
throw new IllegalArgumentException("User all ready member of free group."); * @param user {@link User} to be added to the paid group
}else{ */
if(!paidGroup.contains(user)){ public static void addUserToPaidGroup(final User user) {
paidGroup.add(user); if (freeGroup.contains(user)) {
} throw new IllegalArgumentException("User all ready member of free group.");
} } else {
if (!paidGroup.contains(user)) {
paidGroup.add(user);
}
} }
}
public static boolean isPaid(User user) { public static boolean isPaid(User user) {
return paidGroup.contains(user); return paidGroup.contains(user);
} }
} }

View File

@ -6,31 +6,31 @@ import com.iluwatar.featuretoggle.user.UserGroup;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import static org.junit.Assert.*; import static org.junit.Assert.assertEquals;
public class TieredFeatureToggleVersionTest { public class TieredFeatureToggleVersionTest {
final User paidUser = new User("Jamie Coder"); final User paidUser = new User("Jamie Coder");
final User freeUser = new User("Alan Defect"); final User freeUser = new User("Alan Defect");
final Service service = new TieredFeatureToggleVersion(); final Service service = new TieredFeatureToggleVersion();
@Before @Before
public void setUp() throws Exception { public void setUp() throws Exception {
UserGroup.addUserToPaidGroup(paidUser); UserGroup.addUserToPaidGroup(paidUser);
UserGroup.addUserToFreeGroup(freeUser); UserGroup.addUserToFreeGroup(freeUser);
} }
@Test @Test
public void testGetWelcomeMessageForPaidUser() throws Exception { public void testGetWelcomeMessageForPaidUser() throws Exception {
final String welcomeMessage = service.getWelcomeMessage(paidUser); final String welcomeMessage = service.getWelcomeMessage(paidUser);
final String expected = "You're amazing Jamie Coder. Thanks for paying for this awesome software."; final String expected = "You're amazing Jamie Coder. Thanks for paying for this awesome software.";
assertEquals(expected,welcomeMessage); assertEquals(expected, welcomeMessage);
} }
@Test @Test
public void testGetWelcomeMessageForFreeUser() throws Exception { public void testGetWelcomeMessageForFreeUser() throws Exception {
final String welcomeMessage = service.getWelcomeMessage(freeUser); final String welcomeMessage = service.getWelcomeMessage(freeUser);
final String expected = "I suppose you can use this software."; final String expected = "I suppose you can use this software.";
assertEquals(expected,welcomeMessage); assertEquals(expected, welcomeMessage);
} }
} }

View File

@ -7,31 +7,31 @@ import static org.junit.Assert.assertTrue;
public class UserGroupTest { public class UserGroupTest {
@Test @Test
public void testAddUserToFreeGroup() throws Exception { public void testAddUserToFreeGroup() throws Exception {
User user = new User("Free User"); User user = new User("Free User");
UserGroup.addUserToFreeGroup(user); UserGroup.addUserToFreeGroup(user);
assertFalse(UserGroup.isPaid(user)); assertFalse(UserGroup.isPaid(user));
} }
@Test @Test
public void testAddUserToPaidGroup() throws Exception { public void testAddUserToPaidGroup() throws Exception {
User user = new User("Paid User"); User user = new User("Paid User");
UserGroup.addUserToPaidGroup(user); UserGroup.addUserToPaidGroup(user);
assertTrue(UserGroup.isPaid(user)); assertTrue(UserGroup.isPaid(user));
} }
@Test(expected = IllegalArgumentException.class) @Test(expected = IllegalArgumentException.class)
public void testAddUserToPaidWhenOnFree() throws Exception { public void testAddUserToPaidWhenOnFree() throws Exception {
User user = new User("Paid User"); User user = new User("Paid User");
UserGroup.addUserToFreeGroup(user); UserGroup.addUserToFreeGroup(user);
UserGroup.addUserToPaidGroup(user); UserGroup.addUserToPaidGroup(user);
} }
@Test(expected = IllegalArgumentException.class) @Test(expected = IllegalArgumentException.class)
public void testAddUserToFreeWhenOnPaid() throws Exception { public void testAddUserToFreeWhenOnPaid() throws Exception {
User user = new User("Free User"); User user = new User("Free User");
UserGroup.addUserToPaidGroup(user); UserGroup.addUserToPaidGroup(user);
UserGroup.addUserToFreeGroup(user); UserGroup.addUserToFreeGroup(user);
} }
} }