from pom import ui from selenium.webdriver.common.by import By from stepler.horizon.app import ui as _ui @ui.register_ui( item_update_volume_status=ui.UI( By.CSS_SELECTOR, '*[id*="action_update_status"]'), item_migrate_volume=ui.UI(By.CSS_SELECTOR, '[id$="action_migrate"]')) class DropdownMenu(_ui.DropdownMenu): """Dropdown menu for admin volume row.""" @ui.register_ui( checkbox=_ui.CheckBox(By.CSS_SELECTOR, 'input[type="checkbox"]'), dropdown_menu=DropdownMenu()) class RowVolume(_ui.Row): """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
from stepler.horizon.app import ui as _ui from ..base import PageBase from ..instances.page_instances import FormLaunchInstance from ..volumes.tab_volumes import FormCreateVolume @ui.register_ui(item_create_volume=ui.UI( By.CSS_SELECTOR, '[id$="action_create_volume_from_image"]'), item_update_metadata=ui.UI(By.CSS_SELECTOR, '[id$="action_update_metadata"]')) class DropdownMenu(_ui.DropdownMenu): """Dropdown menu for image row.""" @ui.register_ui(checkbox=_ui.CheckBox(By.CSS_SELECTOR, 'input[type="checkbox"]'), dropdown_menu=DropdownMenu(), link_image=ui.Link(By.CSS_SELECTOR, 'td > a')) class RowImage(_ui.Row): """Row with image in images table.""" transit_statuses = ('Queued', 'Saving') class TableImages(_ui.Table): """Images table.""" columns = {'name': 2, 'type': 3, 'status': 4, 'format': 7} row_cls = RowImage
from selenium.webdriver.common.by import By from stepler.horizon.app import ui as _ui from .base import PageBase @ui.register_ui(item_modify_access=ui.UI(By.CSS_SELECTOR, '[id$="action_projects"]'), item_update_metadata=ui.UI(By.CSS_SELECTOR, '[id$="action_update_metadata"]')) class DropdownMenu(_ui.DropdownMenu): """Dropdown menu for flavor row.""" @ui.register_ui(checkbox=_ui.CheckBox(By.CSS_SELECTOR, 'input[type="checkbox"]'), dropdown_menu=DropdownMenu()) class RowFlavor(_ui.Row): """Row with flavor in flavors table.""" class TableFlavors(_ui.Table): """Flavors table.""" columns = {'name': 2} row_cls = RowFlavor @ui.register_ui(field_name=ui.TextField(By.NAME, 'name'), field_ram=ui.IntegerField(By.NAME, 'memory_mb'), field_root_disk=ui.IntegerField(By.NAME, 'disk_gb'),
from selenium.webdriver.common.by import By from stepler.horizon.app import ui as _ui from .base import PageBase @ui.register_ui( item_edit=ui.UI(By.CSS_SELECTOR, '[id$="action_update"]'), item_delete=ui.UI(By.CSS_SELECTOR, '[id$="action_delete"]')) class DropdownMenu(_ui.DropdownMenu): """Dropdown menu for projects row.""" @ui.register_ui( checkbox=_ui.CheckBox(By.CSS_SELECTOR, 'input[type="checkbox"]'), dropdown_menu=DropdownMenu(), link_project=ui.UI(By.CSS_SELECTOR, 'td[data-cell-name="name"] a')) class RowProject(_ui.Row): """Project row of projects table.""" class TableProjects(_ui.Table): """Projects table.""" columns = {'name': 2, 'enabled': 6} row_cls = RowProject @ui.register_ui(field_name=ui.TextField(By.NAME, 'name')) class FormCreateProject(_ui.Form):
# Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or # implied. # 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 .base import PageBase @ui.register_ui(checkbox_public=_ui.CheckBox(By.NAME, 'public'), field_name=ui.TextField(By.NAME, 'name')) class FormCreateContainer(_ui.Form): """Form to create container.""" @ui.register_ui( button_delete_container=ui.Button(By.CSS_SELECTOR, '[ng-click*="deleteContainer"]'), label_created_date=ui.UI(By.CSS_SELECTOR, '.hz-object-timestamp .hz-object-val'), label_objects_count=ui.UI(By.CSS_SELECTOR, '.hz-object-count .hz-object-val'), label_size=ui.UI(By.CSS_SELECTOR, '.hz-object-size .hz-object-val'), link_public_url=ui.Link(By.CSS_SELECTOR, '.hz-object-link a[ng-show*="public_url"]'))
from selenium.webdriver.common.by import By from stepler.horizon.app import ui as _ui from .base import PageBase @ui.register_ui(item_change_password=ui.UI(By.CSS_SELECTOR, '*[id*="action_change_password"]'), item_toggle_user=ui.UI(By.CSS_SELECTOR, '[id$="action_toggle"]')) class DropdownMenu(_ui.DropdownMenu): """Dropdown menu for user row.""" @ui.register_ui(checkbox=_ui.CheckBox(By.CSS_SELECTOR, 'input[name="object_ids"]'), 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(field_name=ui.TextField(By.NAME, 'name'), field_password=ui.TextField(By.NAME, 'password'), field_confirm_password=ui.TextField(By.NAME,
from pom import ui from selenium.webdriver.common.by import By from stepler.horizon.app import ui as _ui from ..base import PageBase @ui.register_ui(item_add_subnet=ui.UI(By.CSS_SELECTOR, '[id$="action_subnet"]')) class DropdownMenu(_ui.DropdownMenu): """Dropdown menu for network row.""" @ui.register_ui(checkbox=_ui.CheckBox(By.CSS_SELECTOR, 'input[type="checkbox"]'), dropdown_menu=DropdownMenu()) class RowNetwork(_ui.Row): """Row with network in networks table.""" class TableNetworks(_ui.Table): """Networks table.""" columns = {'name': 2, 'shared': 4} row_cls = RowNetwork @ui.register_ui(button_next=ui.Button(By.CSS_SELECTOR, '.button-next'), checkbox_create_subnet=_ui.CheckBox(By.NAME, 'with_subnet'), checkbox_shared=_ui.CheckBox(By.NAME, 'shared'),
from ..base import PageBase @ui.register_ui(item_suspend_stack=ui.UI(By.CSS_SELECTOR, '*[id$="action_suspend"]'), item_resume_stack=ui.UI(By.CSS_SELECTOR, '*[id$="action_resume"]'), item_change_template=ui.UI(By.CSS_SELECTOR, '*[id$="action_edit"]'), item_delete_stack=ui.UI(By.CSS_SELECTOR, '*[id$="action_delete"]')) class DropdownMenu(_ui.DropdownMenu): """Dropdown menu for stack row.""" @ui.register_ui(checkbox=_ui.CheckBox(By.CSS_SELECTOR, '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'),
# Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or # implied. # 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 ..base import PageBase @ui.register_ui(checkbox=_ui.CheckBox(By.CSS_SELECTOR, 'input[type="checkbox"]'), dropdown_menu=_ui.DropdownMenu(), link_network=ui.UI(By.CSS_SELECTOR, 'td.anchor > a')) class RowNetwork(_ui.Row): """Row with network in networks table.""" class TableNetworks(_ui.Table): """Networks table.""" columns = {'name': 3} row_cls = RowNetwork @ui.register_ui(checkbox_shared=_ui.CheckBox(By.NAME, 'shared'), field_name=ui.TextField(By.NAME, 'name'))
# distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or # implied. # 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 .base import PageBase @ui.register_ui( checkbox_public=_ui.CheckBox(By.NAME, 'public'), field_name=ui.TextField(By.NAME, 'name')) class FormCreateContainer(_ui.Form): """Form to create container.""" @ui.register_ui( button_delete_container=ui.Button( By.CSS_SELECTOR, '[ng-click*="deleteContainer"]'), label_created_date=ui.UI( By.CSS_SELECTOR, '.hz-object-timestamp .hz-object-val'), label_objects_count=ui.UI( By.CSS_SELECTOR, '.hz-object-count .hz-object-val'), label_size=ui.UI( By.CSS_SELECTOR, '.hz-object-size .hz-object-val'), link_public_url=ui.Link(