581 Commits

Author SHA1 Message Date
mattwr18
d375ebe7d9 Write test/refactor tests/resolvers/middleware
- write tests for userMiddleware
- checks the functionality of nodes/locations middleware
- refactor to not allow users to update to remove their name
  debatable whether we want that or not, but we do not allow users to
create accounts with no name, so we should be consistent, before we were
using neode to validate this, but we have are removing neode from
production code, so we must validate ourselves
- collate UpdateUser mutations to one
2019-12-12 18:14:47 +01:00
mattwr18
3e15ecdfa2 Refactor tests, extract validation to middleware 2019-12-12 14:25:28 +01:00
mattwr18
8a93e402b9 Remove neode update from production code
- Favor transaction functions we have more control over
2019-12-12 14:24:43 +01:00
mattwr18
53791c83e8 Favor transaction functions in login mutation 2019-12-11 19:31:50 +01:00
mattwr18
d38131e24a Refactor to use transaction functions/logging 2019-12-11 19:27:37 +01:00
mattwr18
6ef9ca3343 Refactor to use readTransaction 2019-12-11 19:09:38 +01:00
mattwr18
1e85cbb6a2 Refactor shout/unshout mutations
- Remove unrecommended auto-commit transactions from code base
- Favor transaction functions
2019-12-11 19:01:29 +01:00
mattwr18
18ab7186f5 Favor transaction functions over auto-commit 2019-12-11 18:53:08 +01:00
mattwr18
b1c5c4dbf9 Avoid testing third-party code
- This test, though I understand why it was added, is not necessary in
my opinion. It's more difficult to get this test to pass since we don't
call session.run, we call session.writeTransaction which has a callback
that calls transaction.run...
- I think we don't need to test that our third party library does what
it was added to do... they have their own tests, which can be found here
@roschaefer, which I think are sufficient https://github.com/validatorjs/validator.js/blob/master/test/sanitizers.js
- We can always add another type of test, if you feel necessary, maybe
an e2e?
2019-12-11 18:44:01 +01:00
mattwr18
3c6932e21a Update passwordReset resolver/spec 2019-12-11 18:43:36 +01:00
mattwr18
d39e702e70 Update exisitingEmailAddress 2019-12-11 18:19:40 +01:00
mattwr18
b583b02fb4 Update createPasswordReset helper function
- the test is broken, can you have a look @roschaefer??
- I tried to get it to work, but it's complicated with multiple
promises... I'm ok if we remove this test as well as it's only testing
that normalizeEmail works as it's supposed to... but that hopefully is
tested on the side of the validator library
2019-12-11 17:57:25 +01:00
mattwr18
ca9c58c06b Add errors undefined to tests
- helps with debugging
2019-12-11 12:50:46 +01:00
mattwr18
760fd01715 Finish refactor of notifications resolver 2019-12-11 11:06:44 +01:00
mattwr18
79d23cc6de Merge branch 'master' of github.com:Human-Connection/Human-Connection into 2412-favor-transaction-function 2019-12-11 10:56:42 +01:00
roschaefer
cc7cd6b8b0 Fix backend tests 2019-12-10 18:13:34 +01:00
mattwr18
4f0df2f28f Remove disable from query request
- we removed it, prevent null pointer error
2019-12-10 18:09:32 +01:00
mattwr18
0a50a02f88 Follow @roschaefer suggestion/remove guard clauses 2019-12-10 18:09:32 +01:00
mattwr18
12236c9324 Convert to transaction function/refactor
- update incorrect variables
2019-12-10 18:09:32 +01:00
roschaefer
3beef5e3fb Reduce database statements in notifications 2019-12-10 18:09:32 +01:00
roschaefer
b2ccc1b61e Better debugging 2019-12-10 18:09:32 +01:00
mattwr18
4af63ee0aa
Merge pull request #2404 from Human-Connection/get_rid_of_inconsistency_with_setup_neode
Get rid of inconsistency with neode setup
2019-12-10 11:04:35 +01:00
roschaefer
5271337b49 Reduce the number of database calls even more 2019-12-09 18:49:27 +01:00
mattwr18
79c6bd5c20 Paginate moderations page without losing filtering
Co-authored-by: Tirokk <wolle.huss@pjannto.com>
2019-12-09 16:37:04 +01:00
mattwr18
3bc944b06d Finish refactoring posts resolver 2019-12-06 18:56:20 +01:00
mattwr18
6ed435364c Start updating posts resolver 2019-12-06 18:29:50 +01:00
mattwr18
6f4ee5f3b7 Refactor resolver/spec
- favor transaction functions
- add errors undefined, clean up specs
2019-12-06 17:48:34 +01:00
Robert Schäfer
a3251710fa
Update backend/src/schema/resolvers/users/blockedUsers.spec.js
Co-Authored-By: mattwr18 <mattwr18@gmail.com>
2019-12-06 12:34:33 +01:00
roschaefer
fdca5b008b Return empty array instead null for "not reviewed"
@mattwr18 why did you add the null check in th resolver?
2019-12-06 02:47:14 +01:00
roschaefer
2f2bf571ed Eliminate database calls for filed and reviewed
I learned map projections and list comprehensions in cypher tonight!
🎉 So much wow!
2019-12-06 01:57:49 +01:00
roschaefer
8f0ce19f09 Implement getDriver() and getNeode() the same way
I want to introduce `neode` and `neo4j-graphql-js` to my students and
saw this.
2019-12-05 21:00:24 +01:00
mattwr18
be319615f8 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 2253-fix-scroll-layout-issue 2019-12-05 11:16:16 +01:00
mattwr18
085b59bf4d Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1710-list-and-protocol-moderation 2019-12-04 13:23:06 +01:00
mattwr18
b3640659bb Add missing unit tests/refactor code
- Refactoring without tests makes it riskier
- Move some tests from resolver to middleware unit tests to live closer
to where the validation happens, remove duplicate tests
- DRY out code
2019-12-03 17:59:59 +01:00
roschaefer
132c12a7d3 Close neo4j driver sessions
We had this error in our neo4j pod recently:

```
2019-12-02 08:29:42.680+0000 ERROR Unable to schedule bolt session 'bolt-1018230' for execution since there are no available threads to serve it at the moment. You can retry at a later time or consider increasing max thread pool size for bolt connector(s).
2019-12-02 08:29:42.680+0000 ERROR Unable to schedule bolt session 'bolt-1018224' for execution since there are no available threads to serve it at the moment. You can retry at a later time or consider increasing max thread pool size for bolt connector(s).
2019-12-02 08:29:42.681+0000 ERROR Unable to schedule bolt session 'bolt-1018352' for execution since there are no available threads to serve it at the moment. You can retry at a later time or consider increasing max thread pool size for bolt connector(s).
2019-12-02 08:29:42.682+0000 ERROR Unable to schedule bolt session 'bolt-1018243' for execution since there are no available threads to serve it at the moment. You can retry at a later time or consider increasing max thread pool size for bolt connector(s).
```

Apparently the default is 400 threads. So we must have a leak somewhere.
2019-12-02 18:12:11 +01:00
mattwr18
4ac3f92989 Fix lint 2019-12-02 15:54:51 +01:00
mattwr18
e4aba5d4df Add test case/Fix message
- Test that the rule is automatically created for new reviews
- Improve English message
2019-12-02 13:56:44 +01:00
mattwr18
c05065f684 Refactor backend
- update script
- use readTxResult for validateReview
- favor more verbose variables
- do not set review.closed as we close the report and the rule at the
moment is set to 'latestReviewUpdatedAtRules' rule, so it's clear the
last review must have been the one that closed the report
2019-12-02 13:38:35 +01:00
mattwr18
c088c6eac4 Refactor test to avoid unneccessary http request
- Set up/tear down should not needlessly run http requests. These tests
are not designed to test that the report/review process works as
expected. that is the job of their respective unit tests/e2e tests.
2019-11-29 20:48:11 +01:00
mattwr18
7441dbf28c Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1710-list-and-protocol-moderation 2019-11-29 20:43:09 +01:00
mattwr18
bbd80fbc23 Add test cases for review workflow 2019-11-29 19:45:52 +01:00
mattwr18
b7f0bc7164
Merge pull request #2375 from Human-Connection/keep_dots_in_emails
Don't remove sub-addresses in emails
2019-11-29 14:14:25 +01:00
mattwr18
2e54a43417
Merge pull request #2333 from Human-Connection/remove_obsolete_invitation_code
refactor: Remove obsolete code about invitation codes
2019-11-29 13:45:46 +01:00
roschaefer
76414dbec7 Fix lint 2019-11-28 18:07:00 +01:00
mattwr18
89daa3356c Return reviews with reports, rename variables
- Instead of just returning the moderator who reviewed, we return the
review as well
2019-11-28 16:10:33 +01:00
roschaefer
973d3f899a Remove dots of gmail addresses
I had a chat with our moderator Daniel. He asks us to remove dots from
gmail accounts. He finds it more consistent and he has no problem to
write a mail to a gmail address without dots. He is OK to save the
email address different from how a user memorizes it.
2019-11-28 14:02:11 +01:00
roschaefer
7146e0a9b2 Fix lint 2019-11-28 13:48:09 +01:00
mattwr18
21be2c08ba Update to return resource instead of to
- more verbose makes it easier to understand
2019-11-28 13:44:00 +01:00
roschaefer
9e2baf25d2 Don't remove dots in emails 2019-11-28 11:22:09 +01:00
mattwr18
e6fdb70a07 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1710-list-and-protocol-moderation 2019-11-27 18:09:24 +01:00