### Question:
PropertyParser { public long toLong(String name) { return toLong(name, 0); } PropertyParser(Properties properties); Properties getProperties(); void setProperties(Properties properties); String parseString(String name); int parseInt(String name); boolean parseBoolean(String name); float parseFloat(String name); double parseDouble(String name); long parseLong(String name); char parseChar(String name); String toString(String name); int toInt(String name); boolean toBoolean(String name); float toFloat(String name); double toDouble(String name); long toLong(String name); char toChar(String name); String toString(String name, String defaultValue); int toInt(String name, int defaultValue); boolean toBoolean(String name, boolean defaultValue); float toFloat(String name, float defaultValue); double toDouble(String name, double defaultValue); long toLong(String name, long defaultValue); char toChar(String name, char defaultValue);  }### Answer:
@Test public void testToLong_String() { System.out.println("toLong"); long expResult; long result; Properties props = new Properties(); props.put("value1", "12345678900"); props.put("value2", "-9000001"); props.put("empty", ""); props.put("str", "abc"); props.put("boolean", "true"); props.put("float", "24.98"); props.put("int", "12"); props.put("char", "a"); PropertyParser instance = new PropertyParser(props); expResult = 12345678900L; result = instance.toLong("value1"); assertEquals(expResult, result); expResult = -9000001L; result = instance.toLong("value2"); assertEquals(expResult, result); expResult = 0L; result = instance.toLong("empty"); assertEquals(expResult, result); expResult = 0L; result = instance.toLong("str"); assertEquals(expResult, result); expResult = 0L; result = instance.toLong("boolean"); assertEquals(expResult, result); expResult = 0L; result = instance.toLong("float"); assertEquals(expResult, result); expResult = 12L; result = instance.toLong("int"); assertEquals(expResult, result); expResult = 0L; result = instance.toLong("char"); assertEquals(expResult, result); expResult = 0L; result = instance.toLong("nonexistent"); assertEquals(expResult, result); }
@Test public void testToLong_String_long() { System.out.println("toLong"); long expResult; long result; Properties props = new Properties(); props.put("value1", "12345678900"); props.put("value2", "-9000001"); props.put("empty", ""); props.put("str", "abc"); props.put("boolean", "true"); props.put("float", "24.98"); props.put("int", "12"); props.put("char", "a"); PropertyParser instance = new PropertyParser(props); expResult = 12345678900L; result = instance.toLong("value1", 3L); assertEquals(expResult, result); expResult = -9000001L; result = instance.toLong("value2", 3L); assertEquals(expResult, result); expResult = 3L; result = instance.toLong("empty", 3L); assertEquals(expResult, result); expResult = 3L; result = instance.toLong("str", 3L); assertEquals(expResult, result); expResult = 3L; result = instance.toLong("boolean", 3L); assertEquals(expResult, result); expResult = 3L; result = instance.toLong("float", 3L); assertEquals(expResult, result); expResult = 12L; result = instance.toLong("int", 3L); assertEquals(expResult, result); expResult = 3L; result = instance.toLong("char", 3L); assertEquals(expResult, result); expResult = 3L; result = instance.toLong("nonexistent", 3L); assertEquals(expResult, result); }