@@ -98,27 +98,30 @@ describe('Conversion', () => {
98
98
} ) ;
99
99
100
100
var immutableOrderedDataString = 'OrderedMap { ' +
101
- 'deepList: List [ ' +
101
+ '" deepList" : List [ ' +
102
102
'OrderedMap { ' +
103
- 'position: "first"' +
103
+ '" position" : "first"' +
104
104
' }, ' +
105
105
'OrderedMap { ' +
106
- 'position: "second"' +
106
+ '" position" : "second"' +
107
107
' }, ' +
108
108
'OrderedMap { ' +
109
- 'position: "third"' +
109
+ '" position" : "third"' +
110
110
' }' +
111
111
' ], ' +
112
- 'deepMap: OrderedMap { ' +
113
- 'a : "A", ' +
114
- 'b : "B"' +
112
+ '" deepMap" : OrderedMap { ' +
113
+ '"a" : "A", ' +
114
+ '"b" : "B"' +
115
115
' }, ' +
116
- 'emptyMap: OrderedMap {}, ' +
117
- 'point: Point { x : 10, y : 20 }, ' +
118
- 'string: "Hello", ' +
119
- 'list: List [ 1, 2, 3 ]' +
116
+ '" emptyMap" : OrderedMap {}, ' +
117
+ '" point" : Point { "x" : 10, "y" : 20 }, ' +
118
+ '" string" : "Hello", ' +
119
+ '" list" : List [ 1, 2, 3 ]' +
120
120
' }' ;
121
121
122
+ var nonStringKeyMap = OrderedMap ( ) . set ( 1 , true ) . set ( false , "foo" ) ;
123
+ var nonStringKeyMapString = 'OrderedMap { 1: true, false: "foo" }' ;
124
+
122
125
it ( 'Converts deep JS to deep immutable sequences' , ( ) => {
123
126
expect ( Immutable . fromJS ( js ) ) . is ( immutableData ) ;
124
127
} ) ;
@@ -134,6 +137,10 @@ describe('Conversion', () => {
134
137
expect ( seq . toString ( ) ) . is ( immutableOrderedDataString ) ;
135
138
} ) ;
136
139
140
+ it ( 'Prints keys as JSON values' , ( ) => {
141
+ expect ( nonStringKeyMap . toString ( ) ) . is ( nonStringKeyMapString ) ;
142
+ } ) ;
143
+
137
144
it ( 'Converts deep sequences to JSON' , ( ) => {
138
145
var json = immutableData . toJS ( ) ;
139
146
expect ( json ) . not . is ( js ) ; // raw JS is not immutable.
0 commit comments