@@ -69,7 +69,7 @@ def test_get_node_not_existing(self):
6969 # too many new nodes
7070 self .assertRaises (KeyError , to_test .get_node , sample_json , "node1.node2.newnode.newnode2" , True )
7171
72- def test_set_node (self ):
72+ def test_update_node (self ):
7373 sample_json = self .__get_sample_json ()
7474 node = to_test .update_node (sample_json , "$" , '{"node3": {"brightness": 6}}' )
7575
@@ -138,18 +138,45 @@ def test_set_node(self):
138138 }
139139 }, node )
140140
141- def test_set_node_empty_path (self ):
141+ def test_update_node_empty_path (self ):
142142 sample_json = self .__get_sample_json ()
143143 self .assertRaises (ValueError , to_test .update_node , sample_json , None , '{"node3": {"brightness": 6}}' )
144144
145145 sample_json = self .__get_sample_json ()
146146 self .assertRaises (ValueError , to_test .update_node , sample_json , "" , '{"node3": {"brightness": 6}}' )
147147
148- def test_set_node_not_json (self ):
148+ def test_update_node_not_json (self ):
149149 sample_json = self .__get_sample_json ()
150150
151151 self .assertRaises (json .JSONDecodeError , to_test .update_node , sample_json , "node1.node2" , "not a json string" )
152152
153+ def test_update_node_primitive_type (self ):
154+ sample_json = self .__get_sample_json ()
155+
156+ node = to_test .update_node (sample_json , "node1.node2" , '"I am a primitive data type"' )
157+
158+ self .assertIsInstance (node ["node1" ]["node2" ], str , "Not a string" )
159+ self .assertDictEqual ({"node1" : {
160+ "node2" : "I am a primitive data type"
161+ }
162+ }, node )
163+
164+ node = to_test .update_node (sample_json , "node1.node2" , '4378462' )
165+
166+ self .assertIsInstance (node ["node1" ]["node2" ], int , "Not an int" )
167+ self .assertDictEqual ({"node1" : {
168+ "node2" : 4378462
169+ }
170+ }, node )
171+
172+ node = to_test .update_node (sample_json , "node1.node2" , 'true' )
173+
174+ self .assertIsInstance (node ["node1" ]["node2" ], bool , "Not a bool" )
175+ self .assertDictEqual ({"node1" : {
176+ "node2" : True
177+ }
178+ }, node )
179+
153180 def test_pop_node (self ):
154181 original_json = self .__get_sample_json ()
155182
0 commit comments