D61-IA / stellar-gnosis

Gnosis paper management and collaboration tool
Apache License 2.0
0 stars 1 forks source link

Feature/pagination fix #56

Closed Zhenghao-Zhao closed 4 years ago

Zhenghao-Zhao commented 4 years ago

Features:

Zhenghao-Zhao commented 4 years ago

Fix applied.

PantelisElinas commented 4 years ago

Hi @Zhenghao-Zhao

I don't know if you finished with this, but I just had a look and on the mobile view even though the Previous and Next buttons correctly move below the page numbers, I noticed that the Previous button is incorrectly rendered. Please see the attached image. The icon and the text should be drawn on the same line like the Next button.

Screen Shot 2020-01-03 at 9 57 50 am

Zhenghao-Zhao commented 4 years ago

Hi @Zhenghao-Zhao

I don't know if you finished with this, but I just had a look and on the mobile view even though the Previous and Next buttons correctly move below the page numbers, I noticed that the Previous button is incorrectly rendered. Please see the attached image. The icon and the text should be drawn on the same line like the Next button.

Screen Shot 2020-01-03 at 9 57 50 am

The problem does not occur on my browser. I have applied a slightly larger width, hopefully this time the previous button is large enough to house the icon and text.

Zhenghao-Zhao commented 4 years ago

Also I'd like to point out that the width of pagination would exceed the width of the card because the card's max-width has been set to 1024px. Otherwise the card's width would depend on the max-width of its descendant elements.

PantelisElinas commented 4 years ago

Hi @Zhenghao-Zhao

I just noticed that a few of the Selenium tests fail because of the new cookie banner appearing at the bottom of the page. See for example,

====================================================================== ERROR: testRestoreComment (catalog.tests.selenium_tests.test_moderation.FirefoxTestCase) test the comment restores after clicking on restore button

Traceback (most recent call last): File "/Users/eli024/Projects/stellar-gnosis/gnosis/catalog/tests/selenium_tests/test_moderation.py", line 110, in setUp mod_link.click() File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/webelement.py", line 80, in click self._execute(Command.CLICK_ELEMENT) File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/webelement.py", line 633, in _execute return self._parent.execute(command, params) File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute self.error_handler.check_response(response) File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.ElementClickInterceptedException: Message: Element is not clickable at point (888,977) because another element

obscures it

We need to get rid of that pop before we can click on the moderation link or maybe we can move the moderation link to the nav-bar because it is only visible to site admin so that should be fine. What do you think about moving the link to the nav-bar and checking that the tests pass?

Zhenghao-Zhao commented 4 years ago

Hi @Zhenghao-Zhao

I just noticed that a few of the Selenium tests fail because of the new cookie banner appearing at the bottom of the page. See for example,

======================================================================

ERROR: testRestoreComment (catalog.tests.selenium_tests.test_moderation.FirefoxTestCase) test the comment restores after clicking on restore button Traceback (most recent call last): File "/Users/eli024/Projects/stellar-gnosis/gnosis/catalog/tests/selenium_tests/test_moderation.py", line 110, in setUp mod_link.click() File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/webelement.py", line 80, in click self._execute(Command.CLICK_ELEMENT) File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/webelement.py", line 633, in _execute return self._parent.execute(command, params) File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute self.error_handler.check_response(response) File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.ElementClickInterceptedException: Message: Element is not clickable at point (888,977) because another element obscures it

We need to get rid of that pop before we can click on the moderation link or maybe we can move the moderation link to the nav-bar because it is only visible to site admin so that should be fine. What do you think about moving the link to the nav-bar and checking that the tests pass?

If moving the link to the nav-bar is only intended for passing the test, I've made a patch that scrolls the page to the bottom before clicking on moderation page. It matches human action and is easy to implement. We best not compensate valid ideas for tests if possible.

PantelisElinas commented 4 years ago

Hi @Zhenghao-Zhao

scrolling up is fine, but there is another test that fails because of the cookie banner at the bottom of the screen. See below. Is it possible to check if the banner is shown and click on agree before continuing? Then we don't have to worry about it.

====================================================================== ERROR: test_flaggingcomments (catalog.tests.selenium_tests.test_flaggingcomments.FirfoxTestCase) test all actions for flagging a comment

Traceback (most recent call last): File "/Users/eli024/Projects/stellar-gnosis/gnosis/catalog/tests/selenium_tests/test_flaggingcomments.py", line 152, in test_flaggingcomments flag_clickable.click() File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/webelement.py", line 80, in click self._execute(Command.CLICK_ELEMENT) File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/webelement.py", line 633, in _execute return self._parent.execute(command, params) File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute self.error_handler.check_response(response) File "/Users/eli024/Projects/stellar-gnosis/gnosis-env/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.ElementClickInterceptedException: Message: Element

Zhenghao-Zhao commented 4 years ago

In this solution I remove the cookie banner element from the page for testing. This is much simpler than clicking on accept and also much quicker as clicking on accept adds unnecessary overheads (e.g. we have to wait till banner to show up and disappear.)

PantelisElinas commented 4 years ago

@Zhenghao-Zhao

great, all tests now pass. Do you want to make any more changes or can I merge it?

Zhenghao-Zhao commented 4 years ago

@Zhenghao-Zhao

great, all tests now pass. Do you want to make any more changes or can I merge it?

I have no more updates for this branch. Thanks!