コード例 #1
0
    checkbox=_ui.CheckBox(By.CSS_SELECTOR, 'input[type="checkbox"]'),
    dropdown_menu=_ui.DropdownMenu())
class RowNamespace(_ui.Row):
    """Row with namespace in namespaces table."""


class TableNamespaces(_ui.Table):
    """Namespaces table."""

    columns = {'name': 2}
    row_cls = RowNamespace


@ui.register_ui(
    field_namespace_json=ui.TextField(By.NAME, 'direct_input'),
    combobox_namespace_source=_ui.combobox_by_label(
        "Namespace Definition Source"))
class FormImportNamespace(_ui.Form):
    """Form to create namespace."""


@ui.register_ui(
    button_import_namespace=ui.Button(By.ID, 'namespaces__action_import'),
    form_import_namespace=FormImportNamespace(By.ID, 'create_metadata_form'),
    table_namespaces=TableNamespaces(By.ID, 'namespaces'))
class PageMetadataDefinitions(PageBase):
    """Metadata definitions page."""

    url = "/admin/metadata_defs/"
    navigate_items = 'Admin', 'System', 'Metadata Definitions'
コード例 #2
0
    """Row of admin volume."""


class TableVolumes(_ui.Table):
    """Admin volumes table."""

    columns = {'project': 2,
               'host': 3,
               'name': 4,
               'size': 5,
               'status': 6,
               'type': 7}
    row_cls = RowVolume


@ui.register_ui(combobox_status=_ui.combobox_by_label("Status"))
class FormUpdateVolumeStatus(_ui.Form):
    """Form to update volume status."""


@ui.register_ui(
    combobox_destination_host=_ui.combobox_by_label("Destination Host"),
    field_current_host=ui.TextField(By.NAME, 'current_host'))
class FormMigrateVolume(_ui.Form):
    """Form to migrate volume."""


@ui.register_ui(
    table_volumes=TableVolumes(By.CSS_SELECTOR, 'table[id="volumes"]'),
    form_update_volume_status=FormUpdateVolumeStatus(
        By.CSS_SELECTOR, 'form[action*="/update_status"]'),
コード例 #3
0
ファイル: users.py プロジェクト: Mirantis/stepler
class RowUser(_ui.Row):
    """User row of users table."""


class TableUsers(_ui.Table):
    """Users table."""

    columns = {'name': 2, 'email': 4, 'enabled': 6}
    row_cls = RowUser


@ui.register_ui(field_name=ui.TextField(By.NAME, 'name'),
                field_password=ui.TextField(By.NAME, 'password'),
                field_confirm_password=ui.TextField(By.NAME,
                                                    'confirm_password'),
                combobox_project=_ui.combobox_by_label("Primary Project"),
                combobox_role=_ui.combobox_by_label('Role'))
class FormCreateUser(_ui.Form):
    """Form to create new user."""


@ui.register_ui(field_confirm_password=ui.TextField(By.NAME,
                                                    'confirm_password'),
                field_password=ui.TextField(By.NAME, 'password'))
class FormChangePassword(_ui.Form):
    """Form to change user password."""


@ui.register_ui(field_name=ui.TextField(By.NAME, 'name'),
                combox_project=_ui.combobox_by_label("Primary Project"))
class FormUpdateUser(_ui.Form):
コード例 #4
0
ファイル: tab_volumes.py プロジェクト: yunake/stepler
# See the License for the specific language governing permissions and
# limitations under the License.

from pom import ui
from selenium.webdriver.common.by import By

from stepler.horizon.app import ui as _ui

from ..instances.page_instances import FormLaunchInstance


@ui.register_ui(
    field_name=ui.TextField(By.NAME, 'name'),
    field_description=ui.TextField(By.NAME, 'description'),
    field_size=ui.TextField(By.NAME, 'size'),
    combobox_source_type=_ui.combobox_by_label("Volume Source"),
    combobox_image_source=_ui.combobox_by_label("Use image as a source"),
    combobox_volume_source=_ui.combobox_by_label("Use a volume as source"),
    combobox_volume_type=_ui.combobox_by_label("Type"))
class FormCreateVolume(_ui.Form):
    """Form to create volume."""


@ui.register_ui(field_name=ui.TextField(By.NAME, 'name'))
class FormEditVolume(_ui.Form):
    """Form to edit volume."""


@ui.register_ui(
    item_change_volume_type=ui.UI(By.CSS_SELECTOR, '*[id$="action_retype"]'),
    item_create_backup=ui.UI(By.CSS_SELECTOR, '[id$="action_backups"]'),
コード例 #5
0
    transit_statuses = ('Build', 'Resize/Migrate')


class TableInstances(_ui.Table):
    """Instances table."""

    columns = {'name': 2, 'ips': 4, 'size': 5, 'status': 7}
    row_cls = RowInstance

    def value(self):
        """List parameters of instance."""
        return self.webelement.find_elements(By.CLASS_NAME, 'status_up')


@ui.register_ui(combobox_port=ui.ComboBox(By.NAME, "instance_id"),
                combobox_float_ip=_ui.combobox_by_label("IP Address"))
class FormAssociateFloatingIP(_ui.Form):
    """Form to associate."""


@ui.register_ui(item_instance_name=ui.TextField(By.NAME, 'name'),
                item_security_groups=ui.UI(
                    By.XPATH, './/a[contains(., "Security Groups")]'))
class FormEditInstance(_ui.Form):
    """Form to edit instance."""

    submit_locator = By.CSS_SELECTOR, '.modal-footer .btn.btn-primary'

    def item_security_group(self, name):
        """Item add security group."""
        element_locator = By.XPATH, ("//ul[contains(@class,"
コード例 #6
0
    """Dropdown menu of floating IP."""


@ui.register_ui(checkbox=_ui.CheckBox(By.CSS_SELECTOR,
                                      'input[type="checkbox"]'),
                dropdown_menu=DropdownMenu())
class RowFloatingIP(_ui.Row):
    """Row with floating ip."""


class TableFloatingIPs(_ui.Table):
    """Table with floating IPs."""

    row_cls = RowFloatingIP


@ui.register_ui(combobox_port=_ui.combobox_by_label("Port to be associated"),
                combobox_float_ip=_ui.combobox_by_label("IP Address"))
class FormAssociate(_ui.Form):
    """Form to associate."""


@ui.register_ui(
    button_allocate_ip=ui.Button(By.ID, 'floating_ips__action_allocate'),
    form_allocate_ip=FormAllocateIP(By.ID, 'associate_floating_ip_form'),
    form_associate=FormAssociate(By.CSS_SELECTOR,
                                 '[action*="floating_ips/associate"]'),
    table_floating_ips=TableFloatingIPs(By.ID, 'floating_ips'))
class TabFloatingIPs(_ui.Tab):
    """Floating IPs tab."""
コード例 #7
0
class DropdownMenu(_ui.DropdownMenu):
    """Dropdown menu of floating IP."""


@ui.register_ui(checkbox=_ui.CheckBox(By.CSS_SELECTOR,
                                      'input[type="checkbox"]'),
                dropdown_menu=DropdownMenu())
class RowFloatingIP(_ui.Row):
    """Row with floating ip."""


class TableFloatingIPs(_ui.Table):
    """Table with floating IPs."""

    row_cls = RowFloatingIP


@ui.register_ui(combobox_port=_ui.combobox_by_label("Port to be associated"))
class FormAssociate(_ui.Form):
    """Form to associate."""


@ui.register_ui(
    button_allocate_ip=ui.Button(By.ID, 'floating_ips__action_allocate'),
    form_allocate_ip=FormAllocateIP(By.ID, 'associate_floating_ip_form'),
    form_associate=FormAssociate(By.CSS_SELECTOR,
                                 '[action*="floating_ips/associate"]'),
    table_floating_ips=TableFloatingIPs(By.ID, 'floating_ips'))
class TabFloatingIPs(_ui.Tab):
    """Floating IPs tab."""
コード例 #8
0
                                      'input[type="checkbox"]'),
                dropdown_menu=DropdownMenu(),
                link_stack=ui.Link(By.CSS_SELECTOR,
                                   'td > hz-cell > hz-field > a'))
class RowStack(_ui.Row):
    """Row with stack in stacks table."""


class TableStacks(_ui.Table):
    """Stacks table."""
    columns = {'name': 2, 'status': 6}
    row_cls = RowStack


@ui.register_ui(
    combobox_template_source=_ui.combobox_by_label('Template Source'),
    combobox_env_source=_ui.combobox_by_label('Environment Source'),
    field_template_data=ui.TextField(By.NAME, 'template_data'),
    field_env_data=ui.TextField(By.NAME, 'environment_data'))
class FormCreateStack(_ui.Form):
    """Form to create stack."""


@ui.register_ui(field_name=ui.TextField(By.NAME, 'stack_name'),
                field_timeout=ui.TextField(By.NAME, 'timeout_mins'),
                field_admin_password=ui.TextField(By.NAME, 'password'),
                field_flavor=ui.TextField(By.NAME, '__param_flavor'),
                field_image=ui.TextField(By.NAME, '__param_image'),
                field_key=ui.TextField(By.NAME, '__param_key_name'),
                checkbox_rollback=_ui.CheckBox(By.NAME, 'enable_rollback'))
class FormLaunchStack(_ui.Form):
コード例 #9
0
@ui.register_ui(
    checkbox=_ui.CheckBox(By.CSS_SELECTOR, 'input[type="checkbox"]'),
    dropdown_menu=DropdownMenu())
class RowUser(_ui.Row):
    """User row of users table."""


class TableUsers(_ui.Table):
    """Users table."""

    columns = {'name': 2, 'email': 4, 'enabled': 6}
    row_cls = RowUser


@ui.register_ui(
    combobox_project=_ui.combobox_by_label("Primary Project"),
    combobox_role=ui.ComboBox(By.NAME, 'role_id'),
    field_confirm_password=ui.TextField(By.NAME, 'confirm_password'),
    field_name=ui.TextField(By.NAME, 'name'),
    field_password=ui.TextField(By.NAME, 'password'))
class FormCreateUser(_ui.Form):
    """Form to create new user."""


@ui.register_ui(
    field_confirm_password=ui.TextField(By.NAME, 'confirm_password'),
    field_password=ui.TextField(By.NAME, 'password'))
class FormChangePassword(_ui.Form):
    """Form to change user password."""