Peter Amstutz [Tue, 30 Sep 2014 19:40:37 +0000 (15:40 -0400)]
4004: Rename "Compute status" to "Compute and job status". Added integration
tests for buttons. Reduced dashboard page rendering time by at least 25% by
batching certain API server requests (previously happing per-object),
Tim Pierce [Tue, 30 Sep 2014 04:42:16 +0000 (00:42 -0400)]
3961: test creating subprojects under home with duplicate names
New tests:
* unprivileged user creating a subproject under their home project, with
an existing name, returns 422
* unprivileged user creating a subproject under their home project, with
an existing name, and ensure_unique_name=true, succeeds
Brett Smith [Mon, 29 Sep 2014 20:07:55 +0000 (16:07 -0400)]
3866: PySDK KeepClient accommodates services with IPv6 addresses.
I thought there was going to be a nicer way to construct URLs than
this, but urllib.urlunparse is still expecting the host+port as a
single string, so this approach is easier. Closes #3866.
Brett Smith [Mon, 22 Sep 2014 20:45:19 +0000 (16:45 -0400)]
3848: Python packages build with git tag by default.
This moves the build logic that we currently encode in Jenkins into
our setup.py, and makes it easier for developers to have versions in
sync with real users.
Tim Pierce [Mon, 29 Sep 2014 15:06:49 +0000 (11:06 -0400)]
3961: reset object UUID when ensure_unique_name is set
When saving an object that has to be renamed with ensure_unique_name,
force @object.uuid to nil so that validate_uuid will not be confused
into thinking we are trying to reassign the uuid.
3889: add a new integration tester for users controller. Refactor code so that users functional and integration tests can reuse some of the helper methods.
Peter Amstutz [Fri, 26 Sep 2014 20:06:28 +0000 (16:06 -0400)]
3871: Pass on UnicodeEncodeError. Don't return those entries in the directory
listing because the user won't be able to access them anyway. Add --encoding
parameter to command line to allow the user to specify desired filesystem
encoding.
3889: Since all offending tests are fixed, update test_helper to generate an error if any functional test performs more than one action in on test in the future.
Tim Pierce [Thu, 25 Sep 2014 19:08:18 +0000 (15:08 -0400)]
3901: allow job to be either Hash or Job
Refactoring to ensure that a component "job" data structure may either
be a Hash (parsed directly from the component's JSON representation) or
a real Job object retrieved from the database.
When rendering a pipeline, parse the :started_at and :finished_at
timestamp fields, respectively, if necessary.
Peter Amstutz [Thu, 25 Sep 2014 19:01:44 +0000 (15:01 -0400)]
3899: Shorten count of ended/succeed/failed in a-r-p-i with some clever Ruby.
Improve reporting to test for state == Cancelled instead of looking at
cancelled_at, and distinguish between cancelled the state being unexpectedly
changed to success/failed. pipeline_instances_helper uses state attribute.
Tom Clegg [Thu, 25 Sep 2014 18:30:09 +0000 (14:30 -0400)]
3991: Handle "no workbench_address configured" more gracefully.
* Remove example config from default production section.
* Follow config rule: false = feature disabled, nil = sysadmin error.
* Respond 404 at root url if no workbench_address is configured.
* Never redirect to workbench if client requested JSON.
Tom Clegg [Thu, 25 Sep 2014 18:16:33 +0000 (14:16 -0400)]
3991: Run passenger script using bundle exec.
Passenger was installed in a previous step, but that was done using
"bundle install", which installs into ./vendor/bundle instead of a
system-wide install dir. This way, we install the passenger version
listed in services/api/Gemfile.lock instead of installing some other
version (or failing completely).
3889: Since all failing API server functional tests are fixed, update test_helper to fail any future tests that execute multiple acions in one single functional test.
3889: split the test "normalize output and log uuids when creating job" into two tests:
1) that creates a job with unnormalized output and log and verifies that normalization happened and
2) that updates a job with unnormalized output and log (a fixture) with normalized output and log.
3889: split the test "setup user in multiple steps and verify response" into multiple tests invoking setup on active user,
rather than perform three setup actions in one test.
3889: remove the functional test "setup and unsetup user" that is performing two actions in one test,
since other tests in this file already cover the two actions and hence this test is not reduntant.
Peter Amstutz [Thu, 25 Sep 2014 03:16:44 +0000 (23:16 -0400)]
3168: Check internal git repository if the commit already exists before calling
fetch-pack. Check if a job tag has already been created or not, and if the tag
already exists, that it points to the expected commit.
refs #3889: Merge monkey patch code updates to detect tests that are reusing ActionController::TestCase.
For now, print warning instead of raising error. After the tests are corrected, we can change this behavior to raise an error.
Merge branch '3889-functional-testing'