99
1010package com .mirth .connect .util ;
1111
12+ import static org .junit .Assert .assertArrayEquals ;
1213import static org .junit .Assert .assertFalse ;
1314import static org .junit .Assert .fail ;
1415
1516import java .security .KeyStore ;
17+ import java .util .LinkedHashMap ;
18+ import java .util .Map ;
1619import java .util .UUID ;
1720
1821import javax .net .ssl .SSLContext ;
2225import org .apache .http .ssl .SSLContexts ;
2326import org .junit .Test ;
2427
28+ import com .mirth .connect .donkey .model .message .ConnectorMessage ;
29+ import com .mirth .connect .donkey .util .MessageMaps ;
30+
2531public class HttpUtilTest {
2632
2733 @ Test
@@ -40,4 +46,20 @@ public void testExecuteGetRequest() throws Exception {
4046 } catch (Exception e ) {
4147 }
4248 }
49+
50+ @ Test
51+ public void testMapOrderPreserved () throws Exception {
52+ final String MAP_KEY = "MyMap" ;
53+
54+ Map <String , Object > initial = new LinkedHashMap <>();
55+ initial .put ("First" , 1 );
56+ initial .put ("Second" , 2 );
57+ initial .put ("Third" , 3 );
58+
59+ ConnectorMessage cm = new ConnectorMessage ();
60+ cm .getSourceMap ().put (MAP_KEY , initial );
61+
62+ Map <String , ?> copied = HttpUtil .getTableMap (MAP_KEY , new MessageMaps (), cm );
63+ assertArrayEquals ("Failed to preserve key order" , initial .keySet ().toArray (), copied .keySet ().toArray ());
64+ }
4365}
0 commit comments