Commit Graph

7262 Commits

Author SHA1 Message Date
Roberto Rosario
07ea45992b Add document indexing API tests
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-04-06 20:07:01 -04:00
Roberto Rosario
9708131712 Add non breakable space to avoud badge jumping
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-04-06 20:06:41 -04:00
Roberto Rosario
cdd0380f1d Merge remote-tracking branch 'origin/versions/next' into versions/next 2019-04-06 20:06:05 -04:00
Roberto Rosario
1eb9975dd6 Fix server side AJAX template rendering
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-04-06 20:05:33 -04:00
Roberto Rosario
4d8dc8e552 Fix multiple tag selection wizard step
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-04-06 20:04:39 -04:00
Roberto Rosario
97fb5f96a7 Reject email attachments of size 0
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-04-06 19:57:50 -04:00
Manoel Brunnen
d4403daa61 Workaround for pip bug #6179
See https://github.com/pypa/pip/issues/6197
2019-04-02 13:39:59 -04:00
Roberto Rosario
ff6e4294e9 Merge commit '5c9ff90d288e48d0cec78f6446fcc904df72da16' into versions/next 2019-04-02 13:39:36 -04:00
Roberto Rosario
eb6f88dfd1 Fix user management tests
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-04-02 13:39:21 -04:00
Roberto Rosario
83a4368eef Simplify document indexing test
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-04-02 13:39:00 -04:00
Roberto Rosario
b6e0de01f3 Make random PK mixin work with pre_save signals
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-04-02 13:38:21 -04:00
Roberto Rosario
bda4902bc7 Checkout manager optimization
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-04-02 13:38:02 -04:00
Roberto Rosario
5de6fbe914 Merge branch 'feature/mailing_events' into versions/next
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-21 19:56:44 -04:00
Roberto Rosario
3bbef4253a Merge branch 'features/mercs_5_6' into 3_way_merge
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-21 19:48:13 -04:00
Roberto Rosario
6dd61f187f Merge remote-tracking branch 'origin/versions/next' into 3_way_merge
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-21 19:46:22 -04:00
Roberto Rosario
d55e9c0944 Update Makefile
Add deletion of Python3 cache files to the clean target.
Allowing passing extra arguments to the test targets.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-21 19:37:08 -04:00
Roberto Rosario
862c3ff568 PEP8 style cleanups
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-03-18 04:43:31 -04:00
Roberto Rosario
a815c3f538 Fix JavaScript downloader defaults
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-03-18 04:33:36 -04:00
Roberto Rosario
54539c9d03 Update requirement versions and removals
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-03-18 04:24:20 -04:00
Roberto Rosario
2fbe4625c0 Add workflow transition API views
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-17 17:57:18 -04:00
Roberto Rosario
62c92ba6fd Add support for runtime queryset method
Allow passing runtime queryset to FilteredPrimaryKeyRelatedField
using a method name via the source_queryset_method attribute
or a default method name of "get_<field_name>_queryset".

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-17 17:53:30 -04:00
Roberto Rosario
7aa4b480d7 Fix failing ACL test
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-16 21:55:47 -04:00
Roberto Rosario
490bbee81e Fix metadata wizard step
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-16 21:55:21 -04:00
Roberto Rosario
5850ea99d4 Add workflow state API views
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-16 15:10:42 -04:00
Roberto Rosario
952380502b Complete basic workflow CRUD API views
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-15 19:43:54 -04:00
Roberto Rosario
97c9cfda6a Start workflow app API refactor
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-15 19:29:39 -04:00
Roberto Rosario
c152156a11 Refactor metadata app API
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-15 04:49:51 -04:00
Roberto Rosario
0c312b343e Unify BaseAPITestCase with GenericViewTestCase
Make BaseAPITestCase a subclass of GenericViewTestCase.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-15 03:04:17 -04:00
Roberto Rosario
7e141c1d04 Add FilteredPrimaryKeyRelatedField
FilteredPrimaryKeyRelatedField is a subclass of PrimaryKeyRelatedField
that filters its queryset by a permission.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-15 03:03:06 -04:00
Roberto Rosario
50d4aa0e22 Allow disabling test's expected_content_type
Setting expected_content_type to None will now disable
the reponse HTTP content type checking. Added
to allow API tests to be a subclass of the test view test
case and support all the mixins without having to declare
them separately.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-15 02:56:34 -04:00
Roberto Rosario
bf733be4c5 Display full trace during app loading exceptions
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-15 02:55:27 -04:00
Roberto Rosario
da2ff0bdd8 Allowing adding an additional test permission
For tests that required using two test permission, like
the tests for .restrict_queryset_by_accesses().

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-05 20:32:31 -04:00
Roberto Rosario
4b444a75cc Add support for multi access filtering
This change allows filtering a queryset by multiple permission
following a logic operator to define the relationship.

Example: In order to access an instance of MetadataTypeDocumentType
the document type view and metadata type view permissions are
required. The computation for this access control can now be
coded using .restrict_queryset_by_accesses. Custom permission
checking in the view is no longer required.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-05 20:30:26 -04:00
Roberto Rosario
378511aea3 Finish fixing failing ACL app tests
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-04 16:20:12 -04:00
Roberto Rosario
2a1e060907 TestModelMixin: Perform stateless model creation
Don't delete test models at the end of the test case.
Failed test cases don't execute the tearDown() method.
Instead perform model registry cleanup before creating
any new test model.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-04 16:18:39 -04:00
Roberto Rosario
2cfd4a9095 Add new ACL app API tests
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-03 20:02:36 -04:00
Roberto Rosario
711a28dccf Test models: Clear ContentType cache
Clear the ContentType cache when adding or removing
test models.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-03 20:01:50 -04:00
Roberto Rosario
b99cf97558 Improve REST mixins and add a new one
Add type casting to ExternalObjectListSerializerMixin via
the external_object_list_pk_type option.

Add an ExternalObjectSerializeMixin for related objects.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-03 14:31:48 -04:00
Roberto Rosario
442faca915 Update test models to generate random PK
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-02 17:32:38 -04:00
Roberto Rosario
0f84b7a723 Merge branch 'features/mercs_5_6' of gitlab.com:mayan-edms/mayan-edms into features/mercs_5_6 2019-03-02 17:10:25 -04:00
Roberto Rosario
2a67cf271e Refactor ACL app API
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-02 16:03:29 -04:00
Roberto Rosario
0cbd9e0d45 ACLs: Make get_inherited_permissions recursive
Update .get_inherited_permissions() to grab the permissions
of an object up the parent tree. Also add the role
permissions. Finally filter all the permissions by those
that apply to the object.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-02 01:51:23 -04:00
Roberto Rosario
48aad4f356 Add mixin to provide temporary test models
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-03-02 01:49:30 -04:00
Roberto Rosario
5c5979c5af Sort import
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-02-25 21:10:09 -04:00
Roberto Rosario
54100f7538 Role permissions API: Add permission checking and tests
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-02-25 21:09:21 -04:00
Roberto Rosario
8599d69d23 Refactor dynamic search app API
Convert the API to use viewsets.

The search function is now a service of the search model
resource.

The simple and advance search are now the same service. The
difference is determined by the URL query. A ?q= means a
simple search. For advanced search pass the search model
fields in the URL query, example: ?q=document_type__label=

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-02-23 05:08:39 -04:00
Roberto Rosario
23d56c3147 Improve ClientMethodsTestCaseMixin
Reduce repeated code.

Add support for passing query string dictionary to
the test client.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-02-23 05:04:28 -04:00
Roberto Rosario
7e1de2623c Update OCR app
Normalize API base names.

Update ViewSet base class, model classes are not needed
the OCR API views.

Split API tests into content and submit tests.

Puntuate view test strings.

Make use of success and title strings.

Make use of external object mixin in document type
settings view.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-02-22 23:49:48 -04:00
Roberto Rosario
21da6742b0 Increate default maximum title lenght to 120
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-02-22 23:48:04 -04:00
Roberto Rosario
d546967d1d Refactor the parsing app API
Add additional API and view tests.

Add success and multi document titles strings.

Make use of external mixin in the document type submit view.

Puntuate all view text strings.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2019-02-22 23:46:15 -04:00