@@ -160,6 +160,81 @@ def test_network_agents_list(self):
160160 self .assertEqual (self .data , list (data ))
161161
162162
163+ class TestSetNetworkAgent (TestNetworkAgent ):
164+
165+ _network_agent = (
166+ network_fakes .FakeNetworkAgent .create_one_network_agent ())
167+
168+ def setUp (self ):
169+ super (TestSetNetworkAgent , self ).setUp ()
170+ self .network .update_agent = mock .Mock (return_value = None )
171+ self .network .get_agent = mock .Mock (return_value = self ._network_agent )
172+
173+ # Get the command object to test
174+ self .cmd = network_agent .SetNetworkAgent (self .app , self .namespace )
175+
176+ def test_set_nothing (self ):
177+ arglist = [
178+ self ._network_agent .id ,
179+ ]
180+ verifylist = [
181+ ('network_agent' , self ._network_agent .id ),
182+ ]
183+
184+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
185+ result = self .cmd .take_action (parsed_args )
186+
187+ attrs = {}
188+ self .network .update_agent .assert_called_once_with (
189+ self ._network_agent , ** attrs )
190+ self .assertIsNone (result )
191+
192+ def test_set_all (self ):
193+ arglist = [
194+ '--description' , 'new_description' ,
195+ '--enable' ,
196+ self ._network_agent .id ,
197+ ]
198+ verifylist = [
199+ ('description' , 'new_description' ),
200+ ('enable' , True ),
201+ ('disable' , False ),
202+ ('network_agent' , self ._network_agent .id ),
203+ ]
204+
205+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
206+ result = self .cmd .take_action (parsed_args )
207+
208+ attrs = {
209+ 'description' : 'new_description' ,
210+ 'admin_state_up' : True ,
211+ }
212+ self .network .update_agent .assert_called_once_with (
213+ self ._network_agent , ** attrs )
214+ self .assertIsNone (result )
215+
216+ def test_set_with_disable (self ):
217+ arglist = [
218+ '--disable' ,
219+ self ._network_agent .id ,
220+ ]
221+ verifylist = [
222+ ('enable' , False ),
223+ ('disable' , True ),
224+ ('network_agent' , self ._network_agent .id ),
225+ ]
226+
227+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
228+ result = self .cmd .take_action (parsed_args )
229+
230+ attrs = {
231+ 'admin_state_up' : False ,
232+ }
233+ self .network .update_agent .assert_called_once_with (
234+ self ._network_agent , ** attrs )
235+ self .assertIsNone (result )
236+
237+
163238class TestShowNetworkAgent (TestNetworkAgent ):
164239
165240 _network_agent = (
0 commit comments