Skip to content
This repository has been archived by the owner on Apr 8, 2020. It is now read-only.

Commit

Permalink
Add tests for accepted media types
Browse files Browse the repository at this point in the history
  • Loading branch information
ABSLord committed Feb 27, 2019
1 parent 4af1f44 commit bc3fc66
Showing 1 changed file with 155 additions and 0 deletions.
155 changes: 155 additions & 0 deletions rc_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
# limitations under the License.

import datetime
import time
import os
import sys
import uuid
Expand Down Expand Up @@ -46,6 +47,10 @@ def __init__(self, addr, username, password, **kwargs):

self._non_unique_channel_name = 'test_channel'

self._default_media_types = 'image/*,audio/*,video/*,application/zip,application/x-rar-compressed,application/pdf,text/plain,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document'

self.wait_filling = 2

self.schedule_test_case('_delete_channels')

def _delete_channels(self):
Expand Down Expand Up @@ -176,6 +181,51 @@ def _copy_image_to_clipboard(self):
self.browser.back()
self.choose_general_channel()

def _restore_media_types(self):
self.browser.reload()
options_btn = self.browser.find_by_css(
'.sidebar__toolbar-button.rc-tooltip.rc-tooltip--down.js-button'
)

assert options_btn

options_btn.last.click()
administration_btn = self.browser.find_by_css('.rc-popover__item-text')

assert administration_btn

administration_btn.click()

file_upload = self.browser.driver.find_elements_by_css_selector(
'a.sidebar-item__link[aria-label="File Upload"]')

assert len(file_upload)

self.browser.driver.execute_script("arguments[0].click();",
file_upload[0])

reset = self.find_by_css('.reset-setting.button.danger')

assert len(reset)

reset[1].click()

time.sleep(self.wait_filling)

save_button = self.find_by_css('.rc-button.rc-button--primary.save')

assert len(save_button)

save_button.first.click()

close_btn = self.browser.driver.find_elements_by_css_selector(
'button[data-action="close"]')

assert len(close_btn)

self.browser.driver.execute_script('arguments[0].click();',
close_btn[0])

def test_starring_messages(self):
WebDriverWait(self.browser.driver, 10).until(
lambda _: self._check_hiding_toast_message())
Expand Down Expand Up @@ -902,6 +952,111 @@ def test_recreating_channel_with_same_name(self):
self.browser.driver.execute_script('arguments[0].click();',
close_btn[0])

def test_changing_accepted_media_types(self):
options_btn = self.browser.find_by_css(
'.sidebar__toolbar-button.rc-tooltip.rc-tooltip--down.js-button'
)

assert options_btn

options_btn.last.click()
administration_btn = self.browser.find_by_css('.rc-popover__item-text')

assert administration_btn

administration_btn.click()

file_upload = self.browser.driver.find_elements_by_css_selector(
'a.sidebar-item__link[aria-label="File Upload"]')

assert len(file_upload)

self.browser.driver.execute_script("arguments[0].click();",
file_upload[0])

media_types = self.find_by_css('.input-monitor.rc-input__element')

assert len(media_types) >= 2

test_type = 'audio/*'

media_types[1].fill(test_type)

time.sleep(self.wait_filling)
save_button = self.find_by_css('.rc-button.rc-button--primary.save')

assert len(save_button)

save_button.first.click()

media_types = self.find_by_css('.input-monitor.rc-input__element')

assert media_types[1].value == test_type

close_btn = self.browser.driver.find_elements_by_css_selector(
'button[data-action="close"]')

assert len(close_btn)

self.browser.driver.execute_script('arguments[0].click();',
close_btn[0])

options_btn = self.browser.find_by_css(
'.sidebar__toolbar-button.rc-tooltip.rc-tooltip--down.js-button'
)

assert options_btn

options_btn.last.click()
administration_btn = self.browser.find_by_css('.rc-popover__item-text')

assert administration_btn

administration_btn.click()

file_upload = self.browser.driver.find_elements_by_css_selector(
'a.sidebar-item__link[aria-label="File Upload"]')

assert len(file_upload)

self.browser.driver.execute_script("arguments[0].click();",
file_upload[0])

media_types = self.find_by_css('.input-monitor.rc-input__element')

assert len(media_types) >= 2

# TODO:
# change when bug has been fixed
assert media_types[1].value == self._default_media_types
close_btn = self.browser.driver.find_elements_by_css_selector(
'button[data-action="close"]')

assert len(close_btn)

self.browser.driver.execute_script('arguments[0].click();',
close_btn[0])

def test_trying_to_attach_unaccepted_file_type(self):
self.choose_general_channel()
plus_msg_btn = self.find_by_css('svg.rc-icon.rc-input__icon-svg.'
'rc-input__icon-svg--plus')
assert len(plus_msg_btn)

plus_msg_btn.last.click()
computer = self.browser.find_by_css('span.rc-popover__item-text')

assert len(computer)

computer.last.click()
self.browser.find_by_id('fileupload-input').fill(self._file_url)

modal_window = self.find_by_css('.rc-modal-wrapper')

assert len(modal_window)

self._restore_media_types()

def test_pasting_string_from_clipboard(self):
self.choose_general_channel()
self._copy_string_to_clipboard()
Expand Down

0 comments on commit bc3fc66

Please sign in to comment.