package simple.escp.data; import org.junit.Test; import simple.escp.exception.InvalidPlaceholder; import static org.junit.Assert.*; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; public class MapDataSourceTest { @Test public void hasMember() { Map<String, String> source = new HashMap<>(); source.put("name", "Solid Snake"); MapDataSource ds = new MapDataSource(source); assertTrue(ds.has("name")); assertFalse(ds.has("nickname")); } @Test public void getMember() { Map<String, String> source = new HashMap<>(); source.put("name", "Solid Snake"); MapDataSource ds = new MapDataSource(source); assertEquals("Solid Snake", ds.get("name")); } @Test public void getMembers() { Map<String, String> source = new HashMap<>(); source.put("name", "Solid Snake"); source.put("firstName", "Solid"); source.put("lastName", "Snake"); MapDataSource ds = new MapDataSource(source); assertEquals(3, ds.getMembers().length); List<String> result = Arrays.asList(ds.getMembers()); assertTrue(result.contains("name")); assertTrue(result.contains("firstName")); assertTrue(result.contains("lastName")); } @Test(expected = InvalidPlaceholder.class) public void getInvalidMember() { Map<String, String> source = new HashMap<>(); source.put("name", "Solid Snake"); MapDataSource ds = new MapDataSource(source); assertEquals("Solid Snake", ds.get("nickname")); } @Test public void getSource() { Map<String, String> source = new HashMap<>(); source.put("name", "Solid Snake"); MapDataSource ds = new MapDataSource(source); assertEquals(source, ds.getSource()); } }