Esempio n. 1
0
    def test_delete_node(self):
        """Delete one node and deploy changes

        Scenario:
            1. Add controller and compute node
            2. Deploy changes
            3. Delete one node
            4. Deploy changes
            5. Verify that only one node is present
        """
        self.test_add_nodes()

        with Nodes() as n:
            n.nodes[1].checkbox.click()
            n.delete_nodes.click()
        with DeleteNodePopup() as p:
            p.delete.click()
            p.wait_until_exists()
            time.sleep(1)

        self.assertEqual("pending deletion", Nodes().nodes[1].status.text.lower(), "Node status is Pending Deletion")

        Nodes().deploy_changes.click()
        DeployChangesPopup().deploy.click()
        PageObject.click_element(TaskResultAlert(), "close")

        with Nodes() as n:
            self.assertEqual(1, len(n.nodes), "Nodes amount")
            for node in n.nodes:
                self.assertEqual("ready", node.status.text.lower(), "Node status is READY")
Esempio n. 2
0
    def test_ha_mode(self):
        """Create environment with HA mode

        Scenario:
            1. Create environment with HA mode
            2. Click on created environment
            3. Verify that correct environment name is displayed
            4. Click on information icon and verify
               all information is displayed correctly
        """
        with Wizard() as w:
            w.name.send_keys(OPENSTACK_CENTOS)
            w.release.select_by_visible_text(OPENSTACK_RELEASE_CENTOS)
            w.next.click()
            w.mode_ha_compact.click()
            for i in range(5):
                w.next.click()
            w.create.click()
            w.wait_until_exists()

        cb = Environments().create_cluster_boxes[0]
        cb.click()

        with Nodes() as n:
            self.assertEqual(PageObject.get_text(n, 'env_name'),
                             OPENSTACK_CENTOS)
            PageObject.click_element(n, 'info_icon')
            self.assertIn(OPENSTACK_CENTOS, PageObject.get_text
                          (n, 'env_details'))
            self.assertIn('Multi-node with HA', n.env_details.text)
Esempio n. 3
0
    def test_delete_node(self):
        """Delete one node and deploy changes

        Scenario:
            1. Add controller and compute node
            2. Deploy changes
            3. Delete one node
            4. Deploy changes
            5. Verify that only one node is present
        """
        self.test_add_nodes()

        with Nodes() as n:
            n.nodes[1].checkbox.click()
            n.delete_nodes.click()
        with DeleteNodePopup() as p:
            p.delete.click()
            p.wait_until_exists()
            time.sleep(1)

        self.assertEqual('pending deletion',
                         Nodes().nodes[1].status.text.lower(),
                         'Node status is Pending Deletion')

        Nodes().deploy_changes.click()
        DeployChangesPopup().deploy.click()
        PageObject.click_element(TaskResultAlert(), 'close')

        with Nodes() as n:
            self.assertEqual(1, len(n.nodes), 'Nodes amount')
            for node in n.nodes:
                self.assertEqual('ready', node.status.text.lower(),
                                 'Node status is READY')
    def test_inactive_one_selected(self):
        """Check bond buttons are inactive if one interface is selected

        Scenario:
            1. Select one interface
            2. Verify bond and unbond buttons are disabled
        """
        with InterfacesSettings() as s:
            PageObject.click_element(s, 'interfaces', 'interface_checkbox', 0)
            self.assertFalse(s.bond_interfaces.is_enabled())
            self.assertFalse(s.unbond_interfaces.is_enabled())
    def test_cancel_bonding(self):
        """Cancel bonding

        Scenario:
            1. Select two interfaces
            2. Click bond interfaces
            3. Click cancel changes
            4. Verify that interfaces aren't bonded
        """
        with InterfacesSettings() as s:
            PageObject.click_element(s, 'interfaces', 'interface_checkbox', 0)
            s.interfaces[1].interface_checkbox.click()
            s.bond_interfaces.click()
            s.cancel_changes.click()
            self.assertEqual(len(s.interfaces), 3, 'Interfaces amount')
    def test_unbond_interfaces(self):
        """Unbond interfaces

        Scenario:
            1. Select two interfaces
            2. Click bond interfaces
            3. Click unbond defaults
            4. Verify that interfaces aren't bonded
        """
        with InterfacesSettings() as s:
            PageObject.click_element(s, 'interfaces', 'interface_checkbox', 0)
            s.interfaces[1].interface_checkbox.click()
            s.bond_interfaces.click()
            s.interfaces[0].interface_checkbox.click()
            s.unbond_interfaces.click()
            self.assertEqual(len(s.interfaces), 3, 'Interfaces amount not 3')
    def test_bond_interfaces(self):
        """Bond two interfaces

        Scenario:
            1. Select two interfaces
            2. Click bond interfaces
            3. Verify that interfaces were bonded
        """
        with InterfacesSettings() as s:
            PageObject.click_element(s, 'interfaces', 'interface_checkbox', 0)
            s.interfaces[1].interface_checkbox.click()
            self.assertTrue(s.bond_interfaces.is_enabled())
            s.bond_interfaces.click()
            s.interfaces[0].bond_mode
            self.assertFalse(s.bond_interfaces.is_enabled())
            self.assertFalse(s.unbond_interfaces.is_enabled())
Esempio n. 8
0
    def test_load_default_bonding(self):
        """Load default bonding

        Scenario:
            1. Select two interfaces
            2. Click bond interfaces
            3. Click load defaults
            4. Verify that interfaces aren't bonded
        """
        with InterfacesSettings() as s:
            s.interfaces[0].interface_checkbox.click()
            s.interfaces[1].interface_checkbox.click()
            s.bond_interfaces.click()
            s.apply.click()
            time.sleep(2)
            self.assertEqual(len(s.interfaces), 2, 'Interfaces amount not 2')
            PageObject.click_element(s, 'load_defaults')
            PageObject.wait_until_exists(s.interfaces[0].bond_mode)
            self.assertEqual(len(s.interfaces), 3, 'Interfaces amount not 3')
    def setUp(self):
        """Each test precondition

        Steps:
            1. Create environment with Neutron gre
            2. Open created environment
            3. Add controller node
            4. Open interface configuration of the node
        """
        BaseTestCase.clear_nailgun_database()
        BaseTestCase.setUp(self)
        preconditions.Environment.simple_neutron_gre()
        PageObject.click_element(Nodes(), 'add_nodes')
        PageObject.click_element(Nodes(), 'nodes_discovered', 'checkbox', 0)
        RolesPanel().controller.click()
        Nodes().apply_changes.click()
        PageObject.wait_until_exists(Nodes().apply_changes)
        Nodes().nodes[0].details.click()
        NodeInfo().edit_networks.click()
Esempio n. 10
0
    def test_load_default_bonding(self):
        """Load default bonding

        Scenario:
            1. Select two interfaces
            2. Click bond interfaces
            3. Click load defaults
            4. Verify that interfaces aren't bonded
        """
        with InterfacesSettings() as s:
            s.interfaces[0].interface_checkbox.click()
            s.interfaces[1].interface_checkbox.click()
            s.bond_interfaces.click()
            s.apply.click()
            time.sleep(2)
            self.assertEqual(len(s.interfaces), 2, 'Interfaces amount not 2')
            PageObject.click_element(s, 'load_defaults')
            PageObject.wait_until_exists(s.interfaces[0].bond_mode)
            self.assertEqual(len(s.interfaces), 3, 'Interfaces amount not 3')
Esempio n. 11
0
 def reset_env(cls):
     PageObject.click_element(Actions(), 'reset')
     PageObject.wait_element(Actions(), 'reset_popup')
     time.sleep(2)
     PageObject.click_element(Actions(), 'reset_popup')
     PageObject.click_element(Tabs(), 'nodes')
     PageObject.long_wait_element(Actions(), 'pending_nodes')
Esempio n. 12
0
 def reset_env(cls):
     PageObject.click_element(Actions(), 'reset')
     PageObject.wait_element(Actions(), 'reset_popup')
     time.sleep(2)
     PageObject.click_element(Actions(), 'reset_popup')
     PageObject.click_element(Tabs(), 'nodes')
     PageObject.long_wait_element(Actions(), 'pending_nodes')
    def test_bond_mode(self):
        """Change bond modes

        Scenario:
            1. Select two interfaces
            2. Click bond interfaces
            3. Change bond modes
            4. Verify that modes are saved correctly
        """
        with InterfacesSettings() as s:
            PageObject.click_element(s, 'interfaces', 'interface_checkbox', 0)
            s.interfaces[1].interface_checkbox.click()
            s.bond_interfaces.click()
            s.interfaces[0].select_mode.select_by_visible_text('Balance SLB')
            self.assertEqual(s.interfaces[0].select_mode.
                             first_selected_option.text,
                             'Balance SLB', 'Text is Balance SLB')
            s.interfaces[0].select_mode.\
                select_by_visible_text('LACP Balance TCP')
            self.assertEqual(s.interfaces[0].select_mode.
                             first_selected_option.text,
                             'LACP Balance TCP', 'Text is LACP Balance TCP')
Esempio n. 14
0
 def add_controller_compute_nodes(cls):
     PageObject.click_element(Nodes(), 'add_nodes')
     Nodes().nodes_discovered[0].checkbox.click()
     RolesPanel().controller.click()
     Nodes().apply_changes.click()
     PageObject.wait_until_exists(Nodes().apply_changes)
     PageObject.click_element(Nodes(), 'add_nodes')
     PageObject.click_element(Nodes(), 'nodes_discovered', 'checkbox', 0)
     RolesPanel().compute.click()
     Nodes().apply_changes.click()
     PageObject.wait_until_exists(Nodes().apply_changes)
Esempio n. 15
0
 def add_controller_compute_nodes(cls):
     PageObject.click_element(Nodes(), 'add_nodes')
     Nodes().nodes_discovered[0].checkbox.click()
     RolesPanel().controller.click()
     Nodes().apply_changes.click()
     PageObject.wait_until_exists(Nodes().apply_changes)
     PageObject.click_element(Nodes(), 'add_nodes')
     PageObject.click_element(Nodes(), 'nodes_discovered', 'checkbox', 0)
     RolesPanel().compute.click()
     Nodes().apply_changes.click()
     PageObject.wait_until_exists(Nodes().apply_changes)
Esempio n. 16
0
 def stop_deploy_process(cls):
     PageObject.click_element(Actions(), 'stop_deploy')
     PageObject.wait_element(Actions, "stop_deploy_popup")
     PageObject.click_element(Actions(), 'stop_deploy_popup')
     PageObject.click_element(Tabs(), 'nodes')
     PageObject.long_wait_element(Actions(), 'pending_nodes')
Esempio n. 17
0
 def cancel_reset(cls):
     Actions().reset.click()
     PageObject.click_element(Actions(), 'cancel_popup')
     PageObject.click_element(Tabs(), 'nodes')
Esempio n. 18
0
 def stop_deploy_process(cls):
     PageObject.click_element(Actions(), 'stop_deploy')
     PageObject.wait_element(Actions, "stop_deploy_popup")
     PageObject.click_element(Actions(), 'stop_deploy_popup')
     PageObject.click_element(Tabs(), 'nodes')
     PageObject.long_wait_element(Actions(), 'pending_nodes')
Esempio n. 19
0
 def stop_deploy_process(cls):
     PageObject.click_element(Actions(), 'stop_deploy')
     Actions().stop_deploy_popup.click()
     PageObject.long_wait_element(Actions(), 'pending_nodes')
Esempio n. 20
0
 def reset_env(cls):
     PageObject.click_element(Actions(), 'reset')
     Actions().reset_popup.click()
     PageObject.long_wait_element(Actions(), 'pending_nodes')
Esempio n. 21
0
 def stop_deploy_process(cls):
     PageObject.click_element(Actions(), 'stop_deploy')
     Actions().stop_deploy_popup.click()
     PageObject.long_wait_element(Actions(), 'pending_nodes')
Esempio n. 22
0
 def reset_env(cls):
     PageObject.click_element(Actions(), 'reset')
     Actions().reset_popup.click()
     PageObject.long_wait_element(Actions(), 'pending_nodes')
Esempio n. 23
0
 def cancel_reset(cls):
     Actions().reset.click()
     PageObject.click_element(Actions(), 'cancel_popup')
     PageObject.click_element(Tabs(), 'nodes')