예제 #1
0
def test_preview_magic_items(player_wizard, browser):  # noqa
    """As a player, I can select a row in the magic_items table and view the item in the preview tab."""
    print(
        'As a player, I can select a row in the magic_items table and view the item in the preview tab'
    )

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    magic_items_preview = magic_items.MagicItemsPreviewModal(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add, 'item', '', browser)
    magic_items_add.add.click()

    time.sleep(.3)
    row = ut.get_table_row(magic_items_table, 'table', values=False)
    time.sleep(.3)
    row[0].click()
    time.sleep(.5)

    assert magic_items_preview.item.text == 'Adamantine Armor'
    assert magic_items_preview.rarity.text == 'Uncommon'
    assert magic_items_preview.type_.text == 'Type: Armor (medium or heavy but not hide)'
    assert magic_items_preview.max_charges.text == 'Max Charges: 0'
    assert magic_items_preview.weight.text == 'Weight: 0 lbs.'
    assert 'reinforced with adamantine' in magic_items_preview.description.text
예제 #2
0
def test_magic_items_total_weight(player_wizard, browser):  # noqa
    """As a player, in the magic_items table, total weight is calculated
       correctly."""
    print(('As a player, in the armor table, total weight is calculated '
           'correctly'))

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add,
                                'item',
                                browser,
                                has_search_term=False,
                                search_term='b')
    magic_items_add.weight = 5
    magic_items_add.add.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(modal_finished_closing())

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add,
                                'item',
                                browser,
                                has_search_term=False,
                                search_term='b')
    magic_items_add.weight = 10
    magic_items_add.add.click()

    assert magic_items_table.total_weight.text.strip() == '15 (lbs)'
예제 #3
0
def test_autocomplete_magic_items(player_wizard, browser):  # noqa
    """As a player, if I start typing in the autocomplete inputs, I can select
       suggested items in the dropdown."""
    print(('As a player, if I start typing in the autocomplete inputs, I can '
           'select suggested items in the dropdown.'))

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        EC.element_to_be_clickable((By.ID, magic_items_table.add_id)))

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add,
                                'item',
                                browser,
                                has_search_term=False)
    ut.select_from_autocomplete(magic_items_add,
                                'type_',
                                browser,
                                has_search_term=False)
    ut.select_from_autocomplete(magic_items_add,
                                'rarity',
                                browser,
                                has_search_term=False)

    assert magic_items_add.item.get_attribute(
        'value').strip() == 'Adamantine Armor'
    assert magic_items_add.type_.get_attribute('value').strip() == 'Armor'
    assert magic_items_add.rarity.get_attribute('value').strip() == 'Common'
예제 #4
0
def test_delete_magic_items(player_wizard, browser): # noqa
    """As a player, I can delete an item in my magic_items."""
    print('As a player, I can delete an item to my magic_items.')

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(
        magic_items_add,
        'item',
        browser,
        has_search_term=False
    )
    magic_items_add.add.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        table_has_data(magic_items_table)
    )

    rows = ut.get_table_rows(magic_items_table, 'table', values=False)

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        modal_finished_closing()
    )

    rows[0][5].find_element_by_tag_name('a').click()

    time.sleep(.5)

    rows = ut.get_table_rows(magic_items_table, 'table', values=False)

    assert rows[0][0].text.strip() == 'Add a new magic item'
예제 #5
0
def test_preview_magic_items(player_wizard, browser): # noqa
    """As a player, I can select a row in the magic_items table and view the
       item in the preview tab."""
    print(('As a player, I can select a row in the magic_items table and view '
           ' the item in the preview tab'))

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    magic_items_preview = magic_items.MagicItemsPreviewModal(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(
        magic_items_add,
        'item',
        browser,
        has_search_term=False
    )
    magic_items_add.add.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        modal_finished_closing()
    )

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        table_has_data(magic_items_table)
    )

    row = ut.get_table_row(magic_items_table, 'table', values=False)
    row[0].click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        EC.text_to_be_present_in_element(
            (By.ID, magic_items_preview.item_id), 'Adamantine Armor'
        )
    )

    preview_type_ = magic_items_preview.type_.text.split()
    magic_items_type = ' '.join([string.strip() for string in preview_type_])
    magic_items_max_charges = ' '.join(
        [
            string.strip()
            for string in magic_items_preview.max_charges.text.split()
        ]
    )
    magic_items_weight = ' '.join(
        [
            string.strip()
            for string in magic_items_preview.weight.text.split()
        ]
    )

    assert magic_items_preview.item.text.strip() == 'Adamantine Armor'
    assert magic_items_preview.rarity.text.strip() == 'Uncommon'
    assert magic_items_type == 'Type: Armor (medium or heavy but not hide)'
    assert magic_items_max_charges == 'Max Charges: 0'
    assert magic_items_weight == 'Weight: 0 lbs.'
    assert 'reinforced with adamantine' in magic_items_preview.description.text.strip()
예제 #6
0
def test_edit_magic_items(player_wizard, browser):  # noqa
    """As a player, I can edit an item in my magic_items."""
    print('As a player, I can edit an item in my magic_items.')

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_edit = magic_items.MagicItemsEditModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    magic_items_tabs = magic_items.MagicItemsModalTabs(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add, 'item', '', browser)
    magic_items_add.add.click()

    rows = ut.get_table_rows(magic_items_table, 'table', values=False)
    time.sleep(.3)
    rows[0][0].click()
    time.sleep(.3)
    magic_items_tabs.edit.click()
    time.sleep(.3)

    magic_items_edit.item = 'Edit Name'
    magic_items_edit.type_ = 'Edit Armor'
    magic_items_edit.rarity = 'Edit Rare'
    magic_items_edit.max_charges = 3
    magic_items_edit.charges = 3
    magic_items_edit.weight = 100
    magic_items_edit.requires_attunement.click()
    magic_items_edit.attuned.click()
    magic_items_edit.description = 'Edit Description'

    assert magic_items_edit.item.get_attribute('value') == 'Edit Name'
    assert magic_items_edit.type_.get_attribute('value') == 'Edit Armor'
    assert magic_items_edit.rarity.get_attribute('value') == 'Edit Rare'
    assert magic_items_edit.max_charges.get_attribute('value') == '3'
    assert magic_items_edit.charges.get_attribute('value') == '3'
    assert magic_items_edit.weight.get_attribute('value') == '100'
    assert magic_items_edit.requires_attunement.is_selected()
    assert magic_items_edit.attuned.is_selected()
    assert magic_items_edit.description.get_attribute(
        'value') == 'Edit Description'

    magic_items_edit.done.click()
    time.sleep(.3)
    row = ut.get_table_row(magic_items_table, 'table', 1)
    assert row.magic_item == 'Edit Name'
    assert row.charges == '3'
    assert row.weight == '100 lbs.'
    assert row.description == 'Edit Description'

    row = ut.get_table_row(magic_items_table, 'table', 1, values=False)
    assert row[2].find_element_by_tag_name('input').is_selected()
예제 #7
0
def test_magic_items_persists(player_wizard, browser):  # noqa
    """As a player, all fields for magic_items persist after page refresh."""
    print(
        'As a player, all fields for magic_items persist after page refresh.')

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_edit = magic_items.MagicItemsEditModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    magic_items_tabs = magic_items.MagicItemsModalTabs(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add,
                                'item',
                                browser,
                                has_search_term=False)
    magic_items_add.add.click()

    browser.refresh()

    row = ut.get_table_row(magic_items_table, 'table', 1)

    assert row.magic_item.strip() == 'Adamantine Armor'
    assert row.charges.strip() == 'N/A'
    assert row.weight.strip() == '0 lbs.'
    assert 'with adamantine' in row.description.strip()

    row = ut.get_table_row(magic_items_table, 'table', 1, values=False)

    assert row[2].find_element_by_tag_name('input').is_displayed() is False

    row = ut.get_table_row(magic_items_table, 'table', values=False)
    row[0].click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        EC.element_to_be_clickable((By.ID, magic_items_tabs.edit_id)))

    magic_items_tabs.edit.click()

    assert magic_items_edit.item.get_attribute(
        'value').strip() == 'Adamantine Armor'

    armor_type = 'Armor (medium or heavy but not hide)'
    assert magic_items_edit.type_.get_attribute('value').strip() == armor_type
    assert magic_items_edit.rarity.get_attribute('value').strip() == 'Uncommon'
    assert magic_items_edit.max_charges.get_attribute('value').strip() == '0'
    assert magic_items_edit.weight.get_attribute('value').strip() == '0'
    assert magic_items_edit.requires_attunement.is_selected() is False

    description = magic_items_edit.description.get_attribute('value').strip()
    assert 'reinforced with adamantine' in description
예제 #8
0
def test_add_magic_items_open_model_by_row(player_wizard, browser):  # noqa
    """As a player, I can click the first row in magic_items table to open the
       magic_items add modal."""
    print(('As a player, I can click the first row in magic_items table to '
           'open the magic_items add modal.'))

    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    rows = ut.get_table_rows(magic_items_table, 'table', values=False)

    assert rows[0][0].is_enabled()
    assert rows[0][0].is_displayed()
예제 #9
0
def test_magic_items_sorting(player_wizard, browser):  # noqa
    """As a player, I can sort the magic_items table by clicking on the sortable columns."""
    print(
        'As a player, I can sort the magic_items table by clicking on the sortable columns'
    )

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add, 'item', '', browser)
    magic_items_add.weight = 100
    magic_items_add.add.click()

    time.sleep(.3)
    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add,
                                'item',
                                '',
                                browser,
                                arrow_down_count=2)
    magic_items_add.max_charges = 2
    magic_items_add.charges = 1
    magic_items_add.add.click()

    time.sleep(.3)
    magic_items_table.magic_item_header.click()
    time.sleep(.3)
    rows = ut.get_table_row(magic_items_table, 'table', values=False)
    assert rows[0].text.strip() == 'Amulet of Health'

    time.sleep(.3)
    magic_items_table.charges_header.click()
    time.sleep(.3)
    rows = ut.get_table_row(magic_items_table, 'table', values=False)
    assert rows[1].text.strip() == 'N/A'

    time.sleep(.3)
    magic_items_table.weight_header.click()
    time.sleep(.3)
    rows = ut.get_table_row(magic_items_table, 'table', values=False)
    assert rows[3].text.strip() == '0 lbs.'

    time.sleep(.3)
    magic_items_table.weight_header.click()
    time.sleep(.3)
    rows = ut.get_table_row(magic_items_table, 'table', values=False)
    assert rows[3].text.strip() == '100 lbs.'
예제 #10
0
def test_add_magic_items(player_wizard, browser): # noqa
    """As a player, I can add an item to my magic_items."""
    print('As a player, I can add an item to my magic_items.')

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    magic_items_add.item = 'Add Name'
    magic_items_add.type_ = 'Add Armor'
    magic_items_add.rarity = 'Add Rare'
    magic_items_add.max_charges = 3
    magic_items_add.charges = 3
    magic_items_add.weight = 100
    magic_items_add.requires_attunement.click()
    magic_items_add.attuned.click()
    magic_items_add.description = 'Add Description'

    assert magic_items_add.item.get_attribute('value').strip() == 'Add Name'
    assert magic_items_add.type_.get_attribute('value').strip() == 'Add Armor'
    assert magic_items_add.rarity.get_attribute('value').strip() == 'Add Rare'
    assert magic_items_add.max_charges.get_attribute('value').strip() == '3'
    assert magic_items_add.charges.get_attribute('value').strip() == '3'
    assert magic_items_add.weight.get_attribute('value').strip() == '100'
    assert magic_items_add.requires_attunement.is_selected()
    assert magic_items_add.attuned.is_selected()
    assert magic_items_add.description.get_attribute('value').strip() == 'Add Description'

    magic_items_add.add.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        table_has_data(magic_items_table)
    )

    row = ut.get_table_row(magic_items_table, 'table', 1)

    assert row.magic_item.strip() == 'Add Name'
    assert row.charges.strip() == '3'
    assert row.weight.strip() == '100 lbs.'
    assert row.description.strip() == 'Add Description'

    row = ut.get_table_row(magic_items_table, 'table', 1, values=False)

    assert row[2].find_element_by_tag_name('input').is_selected()
예제 #11
0
def test_magic_items_persists(player_wizard, browser):  # noqa
    """As a player, all fields for magic_items persist after page refresh."""
    print(
        'As a player, all fields for magic_items persist after page refresh.')

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_edit = magic_items.MagicItemsEditModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    magic_items_tabs = magic_items.MagicItemsModalTabs(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add, 'item', '', browser)
    magic_items_add.add.click()

    browser.refresh()

    row = ut.get_table_row(magic_items_table, 'table', 1)

    assert row.magic_item.strip() == 'Adamantine Armor'
    assert row.charges == 'N/A'
    assert row.weight == '0 lbs.'
    assert 'with adamantine' in row.description

    row = ut.get_table_row(magic_items_table, 'table', 1, values=False)
    assert row[2].find_element_by_tag_name('input').is_displayed() is False

    row = ut.get_table_row(magic_items_table, 'table', values=False)
    time.sleep(.3)
    row[0].click()
    time.sleep(.3)
    magic_items_tabs.edit.click()

    assert magic_items_edit.item.get_attribute('value') == 'Adamantine Armor'
    assert magic_items_edit.type_.get_attribute(
        'value') == 'Armor (medium or heavy but not hide)'
    assert magic_items_edit.rarity.get_attribute('value') == 'Uncommon'
    assert magic_items_edit.max_charges.get_attribute('value') == '0'
    assert magic_items_edit.charges.get_attribute('value') == '0'
    assert magic_items_edit.weight.get_attribute('value') == '0'
    assert magic_items_edit.requires_attunement.is_selected() is False
    assert magic_items_edit.attuned.is_selected() is False
    assert 'reinforced with adamantine' in magic_items_edit.description.get_attribute(
        'value')
예제 #12
0
def test_autocomplete_magic_items(player_wizard, browser):  # noqa
    """As a player, if I start typing in the autocomplete inputs, I can select suggested items in the dropdown."""
    print(
        'As a player, if I start typing in the autocomplete inputs, I can select suggested items in the dropdown.'
    )

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add, 'item', '', browser)
    ut.select_from_autocomplete(magic_items_add, 'type_', '', browser)
    ut.select_from_autocomplete(magic_items_add, 'rarity', '', browser)

    assert magic_items_add.item.get_attribute('value') == 'Adamantine Armor'
    assert magic_items_add.type_.get_attribute('value') == 'Armor'
    assert magic_items_add.rarity.get_attribute('value') == 'Common'
예제 #13
0
def test_delete_magic_items(player_wizard, browser):  # noqa
    """As a player, I can delete an item in my magic_items."""
    print('As a player, I can delete an item to my magic_items.')

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add, 'item', '', browser)
    magic_items_add.add.click()

    rows = ut.get_table_rows(magic_items_table, 'table', values=False)
    time.sleep(.3)
    rows[0][5].find_element_by_tag_name('a').click()
    rows = ut.get_table_rows(magic_items_table, 'table', values=False)

    assert rows[0][0].text == 'Add a new magic item'
예제 #14
0
def test_magic_items_total_weight(player_wizard, browser):  # noqa
    """As a player, in the magic_items table, total weight is calculated correctly."""
    print(
        'As a player, in the armor table, total weight is calculated correctly'
    )

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add, 'item', 'b', browser)
    magic_items_add.weight = 5
    magic_items_add.add.click()

    time.sleep(.3)

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add, 'item', 'b', browser)
    magic_items_add.weight = 10
    magic_items_add.add.click()

    assert magic_items_table.total_weight.text == '15 (lbs)'
예제 #15
0
def test_magic_items_sorting(player_wizard, browser):  # noqa
    """As a player, I can sort the magic_items table by clicking on the
       sortable columns."""
    print(('As a player, I can sort the magic_items table by clicking on the '
           'sortable columns'))

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        EC.element_to_be_clickable((By.ID, magic_items_table.add_id)))

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add,
                                'item',
                                browser,
                                has_search_term=False)
    magic_items_add.weight = 100
    magic_items_add.add.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(modal_finished_closing())

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add,
                                'item',
                                browser,
                                has_search_term=False,
                                arrow_down_count=2)
    magic_items_add.max_charges = 2
    magic_items_add.charges = 1
    magic_items_add.add.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(modal_finished_closing())

    magic_items_table.magic_item_header.click()
    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        sorting_arrow_down(
            magic_items_table.magic_item_header_sorting_arrow, ))
    rows = ut.get_table_row(magic_items_table, 'table', values=False)

    assert rows[0].text.strip() == 'Amulet of Health'

    magic_items_table.charges_header.click()
    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        sorting_arrow_up(magic_items_table.charges_header_sorting_arrow, ))
    rows = ut.get_table_row(magic_items_table, 'table', values=False)

    assert rows[1].text.strip() == 'N/A'

    magic_items_table.weight_header.click()
    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        sorting_arrow_up(magic_items_table.weight_header_sorting_arrow, ))
    rows = ut.get_table_row(magic_items_table, 'table', values=False)

    assert rows[3].text.strip() == '0 lbs.'

    magic_items_table.weight_header.click()
    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        sorting_arrow_down(magic_items_table.weight_header_sorting_arrow, ))
    rows = ut.get_table_row(magic_items_table, 'table', values=False)

    assert rows[3].text.strip() == '100 lbs.'
예제 #16
0
def test_edit_magic_items(player_wizard, browser):  # noqa
    """As a player, I can edit an item in my magic_items."""
    print('As a player, I can edit an item in my magic_items.')

    magic_items_add = magic_items.MagicItemsAddModal(browser)
    magic_items_edit = magic_items.MagicItemsEditModal(browser)
    magic_items_table = magic_items.MagicItemsTable(browser)
    magic_items_tabs = magic_items.MagicItemsModalTabs(browser)
    tabs = Tabs(browser)
    tabs.inventory.click()

    magic_items_table.add.click()
    ut.select_from_autocomplete(magic_items_add,
                                'item',
                                browser,
                                has_search_term=False)
    magic_items_add.add.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(modal_finished_closing())

    rows = ut.get_table_rows(magic_items_table, 'table', values=False)
    rows[0][0].click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(
        EC.element_to_be_clickable((By.ID, magic_items_tabs.edit_id)))

    magic_items_tabs.edit.click()

    magic_items_edit.item = 'Edit Name'
    magic_items_edit.type_ = 'Edit Armor'
    magic_items_edit.rarity = 'Edit Rare'
    magic_items_edit.max_charges = 3
    magic_items_edit.charges = 3
    magic_items_edit.weight = 100
    magic_items_edit.requires_attunement.click()
    magic_items_edit.attuned.click()
    magic_items_edit.description = 'Edit Description'

    assert magic_items_edit.item.get_attribute('value').strip() == 'Edit Name'
    assert magic_items_edit.type_.get_attribute(
        'value').strip() == 'Edit Armor'
    assert magic_items_edit.rarity.get_attribute(
        'value').strip() == 'Edit Rare'
    assert magic_items_edit.max_charges.get_attribute('value').strip() == '3'
    assert magic_items_edit.charges.get_attribute('value').strip() == '3'
    assert magic_items_edit.weight.get_attribute('value').strip() == '100'
    assert magic_items_edit.requires_attunement.is_selected()
    assert magic_items_edit.attuned.is_selected()
    assert magic_items_edit.description.get_attribute(
        'value').strip() == 'Edit Description'

    magic_items_edit.done.click()

    WebDriverWait(browser, DEFAULT_WAIT_TIME).until(modal_finished_closing())

    row = ut.get_table_row(magic_items_table, 'table', 1)

    assert row.magic_item.strip() == 'Edit Name'
    assert row.charges.strip() == '3'
    assert row.weight.strip() == '100 lbs.'
    assert row.description.strip() == 'Edit Description'

    row = ut.get_table_row(magic_items_table, 'table', 1, values=False)

    assert row[2].find_element_by_tag_name('input').is_selected()