### Question:
Messages { public static String getString( final String key ) { try { return Messages.getBundle().getString( key ); } catch ( MissingResourceException e ) { return '!' + key + '!'; } }  static String getString( final String key ); static String getString( final String key, final String param1 ); static String getString( final String key, final String param1, final String param2 ); static String getString( final String key, final String param1, final String param2, final String param3 ); static String getString( final String key, final String param1, final String param2, final String param3,
                                  final String param4 ); static String getErrorString( final String key ); static String getErrorString( final String key, final String param1 ); static String getErrorString( final String key, final String param1, final String param2 ); static String getErrorString( final String key, final String param1, final String param2,
                                       final String param3 );  }### Answer:
@Test public void testGetString() throws Exception { assertEquals( "Test message", Messages.getString( "test.noParams" ) ); }
@Test public void testGetString_NoKey() throws Exception { assertEquals( "!noKeyMatch!", Messages.getString( "noKeyMatch" ) ); }
@Test public void testGetString_1param() throws Exception { assertEquals( "Test HELLO param", Messages.getString( "test.oneParam", "HELLO" ) ); }
@Test public void testGetString_2params() throws Exception { assertEquals( "Test ONE, TWO params", Messages.getString( "test.twoParams", "ONE", "TWO" ) ); }
@Test public void testGetString_3params() throws Exception { assertEquals( "Test ONE, TWO, THREE params", Messages.getString( "test.threeParams", "ONE", "TWO", "THREE" ) ); }
@Test public void testGetString_4params() throws Exception { assertEquals( "Test ONE, TWO, THREE, FOUR params", Messages.getString( "test.fourParams", "ONE", "TWO", "THREE", "FOUR" ) ); }