Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Scottx611x/acceptance testing (#1534)
* Testing the feasibility of running multiple travis builds over different browsers/platforms * Wrap arg in quotes as to not evaluate spaces in env var * Try out an extra wait * I think testing Safari on anything other than OS X is a stretch * See if bumping OS X v. down helps * See if some extra waiting helps (I think Sauce lab's OS X machines are especially slow) * Move helper functions to utils file * Switch back o El Capitan because i believe timing was the only issue * move helper functions * Test adding some longer waits * Fix whitespace * fix imports * Comment out file upload test for now * Add `cleanup_on_error()` that we can decorate test methods with * Tidy up tests * Remove windows from acceptance testing * Move acceptance test running into own shell script and call from within travis * `cd` into the proper directory * `cd` back to `refinery` directory * Cleanup some more tests * Add id to aid testing * Add id to aid testing * Cleanup login method * Abstract out reused login moethod * Utilize relative import * PEP8 * only run acceptance tests if we detect a build for a PR * Always run our acceptance tests * Add acceptance tests for user registration and login * Don't use separate shell script (for now) * Remove `cd` comands * Refactor selenium utility functions * Add script to run acceptance tests on vagrant or travis * Lower `DEFAULT_WAIT` Now that we aren't relying on SauceLabs VMs * Cleanup setting of breakpoints, and refactor `cleanup_on_error` decorator * Remove unnecessary env var, and re-add `global` as to ensure a single build * Sauce_connect isn't needed * pip caching seems stable * PEP8 * Fail shell script if any step doesn't work properly * GeckoDriver expects a more recent version of Firefox * Remove Comments * Update Default wait time * Bump pytest-selenium version * Update Comment * Utilize `wait_until_id_clickable` * Add tests for global analysis popover * Add tests for Datasets panel * Update comment * Add a status to all generated Analyses * Update stats test to check for actual object counts * include gecko driver in our build process for ease of local selenium-based testing * Refactor old acceptance test implementation in favor of simplicity and uniformness with our current Django unit tests * Make virtual display bigger * Update selenium testing utils * Update assert body text method * Update selenium tests * Update `wait_until_id_visible()` * bump Factory-Boy requirement * Update travis as mentioned issue has been closed * Clean up gecko driver Puppet install * Update docstrings * Remove unnecessary tests * more geckodriver install cleanup * Change Default wait * update wait_until_id_visible() * pull out duplicated code into ui-deletion helper method * Update acceptance tests * Minor changes due to abstraction of deletion code * Fix typo * guest user creation isn't needed here anymore * Merge branch scottx611x/django_1.7_upgrade into scottx611x/acceptance_testing * Flip the order of some installed apps due to Django 1.7 ContentType loading * Decorate function as to not test 3rd party code's functionality * Utilize StaticLiveServerTestCase * Update delete_from_ui() helper * Refactor decorator name to be more verbose * Don't need to take a screenshot here * Add xvfb and python3 to travis * add pyvirtualdisplay req * Rename geckodriver class to selenium * Update order * Update order of INSTALLED_APPS for testing purposes * Update logging levels * Update TEST_RUNNER per Django system-check suggestion * Update tests * Fix `get_or_create()` * Access actual object returned from `get_or_create()` tuple * Update logger statement * Do not need to specify `live server` here since it has a default value * Update string formatting to work properly * Update isa/pre-isa archive deletion to produce less unnecessary errors * Update Tests * Manually save public group to sync db between threads (Specific to use of StaticLiveServerTestCase) * Update `DEFAULT_WAIT` * Share Datasets upon factory_boy creation * Create public group for APIV2 test case * Added group creation to the wrong TestCase * Remove `django-nose` in favor of Django's new: `DiscoverTestRunner` * This file shouldn't exist anymore. Probably wasn't caught in the merge here: 0c727cc * Include ontology fixture content inside of a Data migration (#1581) * Update puppet-archive version * Utilize `puppet-archive` and clean up neo4j.pp * Cleanup selenium manifest * Factor out solr class from init.pp * don't need to chmod here * We are now using StaticLiveServerTestCase * "Users of the `puppet-archive`module are responsible for archive package dependencies" * Remove unused var * Point to new archive download location * Fix string formatting error * Add `TEST_RUNNER` setting to base.py so that someone testing on `prod` locally could also benefeit * update order of `INSTALLED_APPS` addresses: #1353 * Refactor all tests that interact with the ORM to inherit from `TransactionTestCase` (removes need for crazy tearDown()'s) * DEFAULT_WAIT Shouldn't be that long * Manually save `public group` as to persist data between test and web driver threads * Update comment * Don't need to optimize sole's index in tests * Inherit from TransactionTestCase here * `20` was actually a good fail-safe if things get slow for one reason or another * switch order of INSTALLED APPS * Cleanup selenium test cases * Remove other `unittest` usages and unnecessary tests * Override setUp() in a cleaner manner * Add a travis fold * Clean up FileStoreitem and InvestigationLink error handling * Clean up error handling for isa & pre-isa archives * Update comments * Cleanup factory_boy factories and utils * This is already a default value * DRY * Update existing DataMigrations to a more easily manageable format * More robust Data migrations * Remove `pk` * RunPython is already encapsulated in a transaction * refactor `get_isa_archive()` & `get_pre_isa_archive()` * Analysis.status isn't necessary for testing * Add Error Handling to `SeleniumTestBase.setUp()` * Add `TEST_NON_SERIALIZED_APPS` setting due to pre Django 1.9 bug * Don't need to share datasets pubilcly in acceptance tests * Utilize `serialized_rollback` to ensure migration data persists in StaticLiveServerTestCases * Refactor isa/pre_isa archive fetching into one method * Remove other unnecessary instances of `tearDown()` * Update method signature * Update comment * Fix Test * Revert "Fix Test" This reverts commit 673827a. * Don't bundle (pre)isa_archive fetching functionality & Utilize existing `get_investigation()` * Handle potential AttributeErrors that could occcur * Old form was a better representation of our overall usecase * Reorder import
- Loading branch information