- 28 Nov, 2023 7 commits
-
-
Jérome Perrin authored
Allows searching the catalog for documents having an exact set of subjects, not just one subject. In other words, `portal_catalog(subject=["a", "b"])` finds documents with subject a or subject b and `portal_catalog(subject_set=["a, "b"])` finds documents with subject a and subject b.
-
Jérome Perrin authored
Pause to make sure the server has time to process the request. This is of course not a good fix, but the future of this code is really uncertain, so this should at least fix the failing test.
-
Jérome Perrin authored
When account number method is set to account reference and the transaction line has a node acquired from the invoice source or destination organisation or person and when this node has a reference, then this was displayed as an account reference. We set a reference on Client 1 organisation to reproduce the problem.
-
Jérome Perrin authored
Make it part of the caching method id so that changing the preference immediately show new accounts. This also moves the "user_name" argument that was an artificial parameter not used only here to make the cache vary to the cache id, for consistency and clarity.
-
Jérome Perrin authored
This fixes dict formatting which was formatted like this with too long values: { "a": "b" }
-
Jérome Perrin authored
after we updated cloudooo.erp5.net with nexedi/cloudooo!32 See merge request nexedi/erp5!1785
-
Vincent Pelletier authored
This method raises the same error as jwt's claim validator, as it was intended to be called from the same exception handling block. So move it from "else" blocks into the corresponding "try" block.
-
- 20 Nov, 2023 2 commits
-
-
Valentin Benozillo authored
-
Valentin Benozillo authored
A Telephone type object is defined by its number, and it's country (ie: country code). See Telephone portal type and property sheet. So here, having only the number is incomplete.
-
- 16 Nov, 2023 3 commits
-
-
Jérome Perrin authored
This was working fine (although not python3 ready), but was not tested
-
Jérome Perrin authored
-
Jérome Perrin authored
Messages are translated when displayed, Base_translateString translates once and for all with the current language.
-
- 15 Nov, 2023 1 commit
-
-
Jérome Perrin authored
-
- 13 Nov, 2023 2 commits
-
-
Jérome Perrin authored
Introduce another assertImageMatchSnapshot which stops on failure, following the behavior of other selenium assertions. Also output more details when the dimensions are different.
-
Jérome Perrin authored
See merge request nexedi/erp5!1838
-
- 10 Nov, 2023 2 commits
-
-
Roque authored
See merge request nexedi/erp5!1833
-
Roque authored
-
- 08 Nov, 2023 8 commits
-
-
Titouan Soulard authored
-
Jérome Perrin authored
This would catch potential problems only occuring when the location has been granted.
-
Jérome Perrin authored
Without this field, sync does not work when location was granted.
-
Jérome Perrin authored
Fixes error in console: Refused to load manifest from <URL> because it violates the following Content Security Policy directive: "default-src 'none'". Note that 'manifest-src' was not explicitly set, so 'default-src' is used as a fallback.
-
Jérome Perrin authored
-
Jérome Perrin authored
Use the new KeyboardEvent instead of deprecated KeyEvent and initKeyEvent, see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/initKeyEvent#specifications and nexedi/slapos!800 (comment 115488) In old firefox dispatching a fake keydown event with keycode 13 (enter) on an input field was enough to submit the corresponding form, like in a real browser and like in webdriver, but in modern browsers this no longer submits the form. Adjust the logic to submit the form to mimic real browser behavior. Co-authored-by: Romain Courteaud <romain@nexedi.com>
-
Jérome Perrin authored
When I run this test on chrome, the div has two classes, spreadsheet and jexcel_tab, this fixes a failure that the element is not found in erp5_officejs_ui_test:testFunctionalOfficeJSWebTable
-
Jérome Perrin authored
We were setting the value to a string with seconds like `2010-01-01T00:00:00` and all the tests were testing that the value of the input element was exactly the same (ie. with seconds), but [the spec] mentions that value is: - A valid date string representing the date. - A U+0054 LATIN CAPITAL LETTER T character (T). - A valid time string representing the time, expressed as the shortest possible string for the given time (e.g. omitting the seconds component entirely if the given time is zero seconds past the minute). The test works fine when running on firefox 68 (the one from testnodes), because this version does not implements datetime-local and such field behave like text inputs, but when running with a modern browser implementing the spec, the test fails because the value from the fields `.value` does not have seconds. While the change to rjs_gadget_erp5_datetimefield_js is not strictly necessary, because when setting the value on a datetime-local the value will be normalized and having 00 seconds or omitting the seconds is same, this is done to keep the test passing on old browsers without support for datetime-local fields. [the spec]: https://html.spec.whatwg.org/multipage/common-microsyntaxes.html#concept-datetime-local
-
- 07 Nov, 2023 3 commits
-
-
Jérome Perrin authored
so that we can see them on testnode.
-
Jérome Perrin authored
Because they depend on the browser version, the window size, the available fonts and maybe other things, snapshot tests basically only work when running on testnode and fail when we run the tests from our browsers locally. With this option, the difference of snapshot are not considered a failure. Also adjust snapshots, because this adds a checkbox in the upper frame, the viewport of the test frame is now a little bit taller.
-
Jérome Perrin authored
nexedi/erp5@3ea8d425 (comment 193284) See merge request nexedi/erp5!1837
-
- 02 Nov, 2023 2 commits
-
-
Jérome Perrin authored
-
Jérome Perrin authored
This fixes a regression from 3ea8d425 (core: don't show list of items in initial business template install, 2023-10-10), this dialog was also used for business template update and it was never showing the list of item.
-
- 27 Oct, 2023 4 commits
-
-
Jérome Perrin authored
This code seems to have been pushed accidentally as part of 6e5e8e8c (fixup! test: follow recent ImageMagick spec., 2023-10-11)
-
Jérome Perrin authored
This reverts commit 14831fae. As discussed in nexedi/erp5@14831fae (comment 188678) this change breaks test and it seems more natural to implement this with listbox's sort parameter. This change will be pushed again, probably as part of nexedi/erp5!1305
-
Jérome Perrin authored
This is what browsers do when user selects a file.
-
Jérome Perrin authored
testnode uses ProcessManager.killall to terminate all processes from a path. To determine if a process is from a path, it looks at the command line. This does not work for processes using setproctitle to change their command line. We can see in ps: $ ps -edf | grep nginx slapuse+ 115059 45574 0 16:14 ? 00:00:00 nginx: master process /srv/slapgrid/slappart46/t/cvt/i/0/tmp/shared/nginx/6d79cb0e7d81dce1be97eec8a5712f08/sbin/nginx -c /srv/slapgrid/slappart46/t/cvt/i/0/tmp/inst/T-0/etc/nginx-master-introspection.conf slapuse+ 115090 115059 0 16:14 ? 00:00:00 nginx: worker process or by looking at cmdline, which is what psutil.Process.cmdline is using: $ cat /proc/115090/cmdline nginx: worker process and that's why sometimes when cancelling a software release test while it is running tests from a software using nginx, some processes are leaked, they keep using the port and next test running on this testnode fail. In that case, killall is called with /srv/slapgrid/slappart46/t/cvt , we can not find such process with cmdline, but we can extend this heuristic to use the current working directory: $ ls -al /proc/115090/cwd lrwxrwxrwx 1 slapuser46 slapuser46 0 Oct 19 16:16 /proc/115090/cwd -> /srv/slapgrid/slappart46/t/cvt/i/0/tmp/inst/T-0 This also applies an optimization of only considering processes of the current unix user.
-
- 20 Oct, 2023 3 commits
-
-
Vincent Pelletier authored
Products.ERP5Types.patches.CMFCoreSkinnable: Only add portal_callables to skin selection when tool exists Avoids a noisy log: WARNING Products.ERP5Type.patches.CMFCoreSkinnable Skin folder portal_callables is in selection list but does not exist.
-
Vincent Pelletier authored
As already documented in this code, unrestrictedTraverse provides a flat dict as "request" argument. PAS plugins cannot work with such fake request, so such _extractUserIds call will not succeed in authenticating the user, and instead produces (suppressed) exceptions within PAS. As a result, neither codepaths can be followed: - PAS cannot find any user, hence "if len(user_list) > 0:" is false - the "else" codepath starts with "request._auth", which obviously raises when request is a dict So, reorder the code so that the nature of the request is checked before either codepath is entered, skipping the bulk of this code and avoiding calling into PAS.
-
Vincent Pelletier authored
-
- 19 Oct, 2023 2 commits
-
-
Levin Zimmermann authored
The default soft limit of open file descriptors is usually set to 1024 in order to avoid breaking old software which still uses select. In many projects we may need a higher limit: particularly in Wendelin based projects we easily reach this limit. Before this patch it was therefore necessary to either patch ERP5 in the project specific SR or to manually increase the limit of the zope processes (or the parent supervisor) with a tool like prlimit [1]. With this patch it becomes possible to increase the soft limit to the hard limit with a command line argument of the zopewsgi bin. This simplifies setting the soft limit for any Wendelin project. [1] https://man7.org/linux/man-pages/man1/prlimit.1.html /reviewed-by @vpelletier, @jerome /reviewed-on !1827
-
Jérome Perrin authored
test_suite and tests_require are for the deprecated `setup.py test` command that we no longer use.
-
- 18 Oct, 2023 1 commit
-
-
Jérome Perrin authored
During initial install in most cases we just want to install everything, showing the listbox to choose install options is not necessary. The problem is that this listbox is really big when installing multiple business templates. This introduces a "detailed install" checkbox, that is unchecked by default, to make it possible to show the list to choose from anyway.
-