def test_multiple_lb_pending(self): """ When a server needs to be added to multiple LBs, it's only counted once. """ lb_nodes = [ CLBNode(node_id='1', description=CLBDescription(lb_id='foo', port=1), address='1.1.1.1'), CLBNode(node_id='2', description=CLBDescription(lb_id='foo', port=2), address='1.1.1.1'), CLBNode(node_id='3', description=CLBDescription(lb_id='bar', port=3), address='1.1.1.1'), CLBNode(node_id='4', description=CLBDescription(lb_id='bar', port=4), address='1.1.1.1'), ] desired_lbs = s(CLBDescription(lb_id='foo', port=1), CLBDescription(lb_id='foo', port=2), CLBDescription(lb_id='bar', port=3), CLBDescription(lb_id='bar', port=4)) self.assertEqual( is_autoscale_active( server('id1', ServerState.ACTIVE, servicenet_address='1.1.1.1', desired_lbs=desired_lbs), lb_nodes), True)
def test_lb_pending(self): """ When a server should be in a LB but it's not, it's not active. """ desired_lbs = s(CLBDescription(lb_id='foo', port=80)) lb_nodes = [ CLBNode(node_id='x', description=CLBDescription(lb_id='foo', port=80), address='1.1.1.3')] self.assertEqual( is_autoscale_active( server('id1', ServerState.ACTIVE, servicenet_address='1.1.1.1', desired_lbs=desired_lbs), lb_nodes), False)
def test_non_active(self): """ Non-active server is not considered AS active """ self.assertEqual( is_autoscale_active(server('id1', ServerState.BUILD), []), False)
def test_active(self): """Built server with no desired LBs is active.""" self.assertEqual( is_autoscale_active(server('id1', ServerState.ACTIVE), []), True)