25
1
mirror of https://github.com/processone/ejabberd.git synced 2024-12-22 17:28:25 +01:00
Commit Graph

391 Commits

Author SHA1 Message Date
Paweł Chmielowski
eff70951c5 Add tests for offline with mam storage 2019-04-29 16:40:47 +02:00
Paweł Chmielowski
b716b835c4 Add tests for offline use_mam_for_storage 2019-04-29 11:35:18 +02:00
Evgeny Khramtsov
63259f5cc9 Improve private and MAM tests in order to reflect
database backends with limited capabilities
2019-01-14 19:33:23 +03:00
Christophe Romain
67cfdf1d20 Fix typo in comment 2019-01-10 11:07:24 +01:00
Paweł Chmielowski
aee53332bf Change a way that tests start ejabberd 2019-01-09 18:33:39 +01:00
Badlop
55417dfb37 Update copyright to 2019 (#2756) 2019-01-08 22:53:27 +01:00
Badlop
f0cf63de15 Manually update 2017 copyright dates (#2756) 2019-01-08 22:52:26 +01:00
Paweł Chmielowski
51cbbf313f Remove elixir tests
Our regular suite cover most of those cases, and it get trickier and
tricker to keep those working after changes in ejabberd.
2018-12-21 15:58:02 +01:00
Evgeny Khramtsov
000621114d Remove outdated MIX tests 2018-12-11 17:14:51 +03:00
Evgeny Khramtsov
207c0eebe4 Improve tests for mod_private 2018-11-23 16:24:44 +03:00
Evgeny Khramtsov
a84be928ef Fix test case for invalid language 2018-11-23 14:11:14 +03:00
Paweł Chmielowski
d43d9ff0e2 Fix mod_http_apt_test 2018-11-09 14:55:19 +01:00
Paweł Chmielowski
4ddee2d89b Increase validity of generated test ca cert and regenerate all certs 2018-09-24 15:19:19 +02:00
Paweł Chmielowski
fb367469d4 Add ability to configure test to use new sql schema 2018-09-18 09:44:54 +02:00
Paweł Chmielowski
78dae4036e Reintroduce change removed by mistake in 'Improve match macro' 2018-09-17 09:34:15 +02:00
Paweł Chmielowski
d4579d2a20 [test] Improve match macro 2018-09-14 20:27:59 +02:00
Paweł Chmielowski
410ac9b966 [tests] Update stream_id from stream:stream after auth 2018-09-14 20:27:33 +02:00
Paweł Chmielowski
66132353df Sign certs used by tests with sha256
Seems that openssl1.1.1 (at least debian version) rejects certs signed with
md5 or sha1, so lets use something that works.
2018-08-28 11:27:44 +02:00
Badlop
6cd70947be Third attempt to fix the typo! 2018-08-15 12:56:41 +02:00
Badlop
8cefe58a89 Fix typo from commit 0bf93eefc 2018-08-15 12:40:39 +02:00
Badlop
0bf93eefcb Try to update tests to handle recent MUC subscriptions change (#2272) 2018-08-13 15:26:40 +02:00
Evgeniy Khramtsov
2dfb5a6a5c Note about Redis requirement in the test suite README 2018-07-15 10:14:47 +03:00
Holger Weiss
5b3af9d4cd Fix compiler warnings regarding test cases 2018-07-11 00:07:57 +02:00
Holger Weiss
7e5d766a02 pubsub_tests: Fix race condition 2018-07-10 21:25:06 +02:00
Paweł Chmielowski
b2b29269ec Remove cyrsasl elixir tests, we no longer have it 2018-07-06 09:49:30 +02:00
Evgeniy Khramtsov
0bb14d16c7 Move XMPP stream and SASL processing to xmpp repo 2018-07-06 01:07:36 +03:00
Evgeniy Khramtsov
59f5a098b5 Use p1_rand in the test suite 2018-07-05 11:53:04 +03:00
Paweł Chmielowski
62cb398734 Convert test that used moka, and drop that dependancy 2018-06-29 10:52:47 +02:00
Evgeniy Khramtsov
3a5d2dbed8 Move mod_irc to ejabberd-contrib 2018-06-20 12:27:44 +03:00
Holger Weiss
aea6166efe Omit summary form for push tests 2018-06-20 00:15:56 +02:00
Evgeniy Khramtsov
7b04a625be Get rid of jlib.hrl/jlib.erl 2018-06-14 19:11:43 +03:00
Evgeniy Khramtsov
141be53c21 Get rid of ejabberd.hrl reference from the test suite 2018-06-14 14:24:15 +03:00
Holger Weiss
8e1a13b259 upload_tests: Make size error check stricter 2018-06-04 23:29:24 +02:00
Holger Weiss
ba30ac8ce8 Return detailed error if HTTP upload is too large
If the file size specified in an HTTP upload slot request exceeds the
the configured maximum size, include the limit with the stanza error.
2018-06-04 22:18:56 +02:00
Evgeniy Khramtsov
82c42051c3 Correctly resolve upload.localhost for the test suite 2018-05-17 13:24:23 +03:00
Evgeniy Khramtsov
e4c106e0dd Add tests for mod_http_upload 2018-05-17 12:02:00 +03:00
Holger Weiss
638f2d2e67 mod_blocking: Use #block_item{} record 2018-05-02 22:17:32 +02:00
Evgeniy Khramtsov
56ee6f0518 Ignore any policy when signing a certificate for the test suite 2018-05-02 10:52:46 +03:00
Evgeniy Khramtsov
4e83fc41d4 Also generate CA certificates for the test suite 2018-05-02 10:28:22 +03:00
Evgeniy Khramtsov
ec819b4002 Update MUC MAM tests 2018-04-16 16:10:44 +03:00
Evgeniy Khramtsov
a5284229cb Merge branch 'muc-self-presence' 2018-04-14 18:32:12 +03:00
Paweł Chmielowski
95244c3b6f Fix csi tests 2018-04-12 17:08:27 +02:00
a-iv
89d91b609a New schema support for tests. (#2355) 2018-04-12 15:42:43 +02:00
Evgeniy Khramtsov
63dba3fd64 Merge branch 'master' into muc-self-presence 2018-03-03 21:09:27 +03:00
Evgeniy Khramtsov
f5d208441d Improve example extauth script 2018-02-16 20:34:09 +03:00
Paweł Chmielowski
71a856deaa Handle gracefully that mnesia is already loaded when starting tests 2018-02-16 16:49:48 +01:00
Evgeniy Khramtsov
ffe02c46e4 Let a MUC room to route presences from its bare JID
The goal for this is to provide entity capabilities (XEP-0115) and
vCard-based avatar hash (XEP-0153)
2018-02-12 17:37:36 +03:00
Evgeniy Khramtsov
66fc1bf3b6 Remove 'iqdisc' option
Since we got rid of all bottle-neck processes and we have
a connection pool for every database, the option is no longer
needed and in fact is detrimental: in practice what you get
is just a bunch of overloaded processes in the IQ handlers pool
no matter how much you increase the `iqdisc` value.

Given that there are close to zero operators understanding
the meaning of the option and, hence, not using it all,
it's not simply deprecated but completely removed.

The commit also deprecates the following functions:
- gen_iq_handler:add_iq_handler/6
- gen_iq_handler:handle/5
- gen_iq_handler:iqdisc/1
2018-02-11 12:54:15 +03:00
Paweł Chmielowski
2a77805072 Print something when doing tests in travis, as not doing that get us killed 2018-01-31 17:03:18 +01:00
Paweł Chmielowski
485f8e48e5 Fix mod_roster start invocation in elixir tests 2018-01-31 09:34:54 +01:00
Paweł Chmielowski
51f652a1e1 Fix elixir tests 2018-01-30 19:45:12 +01:00
Paweł Chmielowski
ad4ffce788 Start ejabberd_config earlier 2018-01-30 18:24:47 +01:00
Paweł Chmielowski
3b646cc2ec Run tests only on backends enabled by configure 2018-01-30 15:30:37 +01:00
Paweł Chmielowski
ddf6076328 Fix elixir tests 2018-01-29 18:28:02 +01:00
Paweł Chmielowski
7e561dd20a Fix more tests 2018-01-25 18:43:34 +01:00
Paweł Chmielowski
2afdde84ea Adopt tests to changes in xmpp 2018-01-25 18:24:05 +01:00
Evgeniy Khramtsov
aa9f2e5b88 Ignore result of sending stream trailer in test suite 2018-01-08 13:45:08 +03:00
Evgeniy Khramtsov
23c5fd9a4f Return send() result to the caller 2017-12-28 14:01:34 +03:00
Paweł Chmielowski
d59d4e27ec Adopt tests to changes introduced by b54e1e49ba 2017-12-27 16:16:15 +01:00
Evgeniy Khramtsov
812acf0688 Update the test suite to support new XMPP socket API 2017-12-27 08:55:14 +03:00
Paweł Chmielowski
32ad7d3761 Disable test for now 2017-12-21 11:49:33 +01:00
Paweł Chmielowski
7f073fbcd8 Update expected error type in test 2017-12-21 11:43:09 +01:00
Paweł Chmielowski
b072342aa9 Adapt test to changed error 2017-11-27 11:12:46 +01:00
Paweł Chmielowski
b67a114ef5 Fix elixir tests 2017-11-17 12:19:26 +01:00
Evgeniy Khramtsov
675a1e0b0f Fix a test related to mod_caps 2017-11-10 20:58:13 +03:00
Evgeniy Khramtsov
902c6d476b Prepare version 0.6.1 of XEP-0313 (MAM) support 2017-11-08 15:15:39 +03:00
Paweł Chmielowski
7d8ad17fa1 Remove code left from debugging 2017-11-03 16:11:34 +01:00
Paweł Chmielowski
ec3ea61585 Don't start hosts for disabled backends from CT_BACKENDS passed to make test 2017-11-03 14:44:13 +01:00
Evgeniy Khramtsov
db57394399 Add SQL support for mod_push 2017-10-26 20:11:43 +03:00
Christophe Romain
7c1b4d0fcd Fix pubsub test, title not mandatory 2017-10-25 11:41:45 +02:00
Evgeniy Khramtsov
47175adc74 Explicitly match against <domain/resource>
Fixes #1958
2017-08-23 09:00:13 +03:00
Holger Weiss
ba9a79c89c Apply cosmetic changes to previous commit 2017-08-18 16:50:08 +02:00
Holger Weiss
13ad754ecc Suppress push notifications for online clients
When a client enabled push notifications during the current session,
notifications should be suppressed as long as the client is online.
Suppressing the notification didn't work for the case where the
notification was triggered by MAM, but this is now fixed.
2017-08-18 16:44:32 +02:00
Christophe Romain
52525eb76d Fix tests for 8679cfd2f 2017-08-07 15:38:17 +02:00
Christophe Romain
766b7c65a6 Merge pull request #1881 from weiss/push
Support XEP-0357: Push Notifications
2017-08-04 12:58:06 +02:00
Christophe Romain
f65492e27f Merge pull request #1837 from marcphilipp/feature/set_room_affiliation_test
Add integration test for set_room_affiliation
2017-08-02 14:34:30 +02:00
Badlop
67918b17d3 Fix extauth.py so support : in passwords (thanks to jmberg)(#1676) 2017-07-31 22:51:31 +02:00
Holger Weiss
66510c1d78 Add mod_push_keepalive
This module tries to keep pending stream management sessions of push
clients alive (as long as the disconnected clients are reachable via
push notifications).
2017-07-21 01:07:36 +02:00
Holger Weiss
d6f1d3df5b Support XEP-0357: Push Notifications
Closes #1379.
2017-07-20 20:22:50 +02:00
Paweł Chmielowski
88ab787ba6 Start gen_mod from elixir tests 2017-07-06 17:57:46 +02:00
Paweł Chmielowski
eb9faffadd Improve elixir tests 2017-07-06 17:19:22 +02:00
Paweł Chmielowski
5ef542a638 Remove tests for old commands interface 2017-07-06 17:19:22 +02:00
Marc Philipp
c69720a1ab Add integration test for set_room_affiliation 2017-07-06 13:33:13 +02:00
Paweł Chmielowski
960cf495c6 Don't use asn1rt:decode, it's not available on R20 2017-06-28 14:51:45 +02:00
Paweł Chmielowski
6353a06a5d Catch exception from Elixir.ExUnit.Server.cases_loaded 2017-06-14 14:56:59 +02:00
Paweł Chmielowski
115cb23bd8 Fix elixir tests on elixir 1.4 2017-06-09 12:59:47 +02:00
Evgeniy Khramtsov
35d19b32f4 Implement cache for mod_privacy/mod_blocking 2017-05-20 22:36:32 +03:00
Evgeniy Khramtsov
5bdc6c0822 Get rid of deprecated option 'resume_timeout' in test config 2017-05-17 17:21:59 +03:00
Evgeniy Khramtsov
1925b94131 Implement cache for mod_vcard and mod_vcard_xupdate 2017-05-17 17:13:34 +03:00
Evgeniy Khramtsov
f782955c06 Implement cache for roster 2017-05-17 14:47:35 +03:00
Evgeniy Khramtsov
81d9770d4f Update Elixir tests for using new auth API 2017-05-11 16:15:18 +03:00
Evgeniy Khramtsov
633b68db11 Use cache for authentication backends
The commit introduces the following API incompatibilities:

In ejabberd_auth.erl:
* dirty_get_registered_users/0 is renamed to get_users/0
* get_vh_registered_users/1 is renamed to get_users/1
* get_vh_registered_users/2 is renamed to get_users/2
* get_vh_registered_users_number/1 is renamed to count_users/1
* get_vh_registered_users_number/2 is renamed to count_users/2

In ejabberd_auth callbacks
* plain_password_required/0 is replaced by plain_password_required/1
  where the argument is a virtual host
* store_type/0 is replaced by store_type/1 where the argument is
  a virtual host
* set_password/3 is now an optional callback
* remove_user/3 callback is no longer needed
* remove_user/2 now should return `ok | {error, atom()}`
* is_user_exists/2 now must only be implemented for backends
  with `external` store type
* check_password/6 is no longer needed
* check_password/4 now must only be implemented for backends
  with `external` store type
* try_register/3 is now an optional callback and should return
  `ok | {error, atom()}`
* dirty_get_registered_users/0 is no longer needed
* get_vh_registered_users/1 is no longer needed
* get_vh_registered_users/2 is renamed to get_users/2
* get_vh_registered_users_number/1 is no longer needed
* get_vh_registered_users_number/2 is renamed to count_users/2
* get_password_s/2 is no longer needed
* get_password/2 now must only be implemented for backends with
  `plain` or `scram` store type

Additionally, the commit introduces two new callbacks:
* use_cache/1 where the argument is a virtual host
* cache_nodes/1 where the argument is a virtual host

New options are also introduced: `auth_use_cache`, `auth_cache_missed`,
`auth_cache_life_time` and `auth_cache_size`.
2017-05-11 14:37:21 +03:00
Paweł Chmielowski
e790e66f47 Fix elixir tests 2017-05-04 12:17:41 +02:00
Evgeniy Khramtsov
fddd6110e0 Don't validate an option in gen_mod:get*opt() functions
The changes are very similar to those from previous commit:
* Now there is no need to pass validating function in
  gen_mod:get_opt() and gen_mod:get_module_opt() functions,
  because the modules' configuration keeps already validated values.
* New functions gen_mod:get_opt/2 and gen_mod:get_module_opt/3 are
  introduced.
* Functions gen_mod:get_opt/4 and get_module_opt/5 are deprecated.
  If the functions are still called, the "function" argument is
  simply ignored.
* Validating callback Mod:listen_opt_type/1 is introduced to validate
  listening options at startup.
2017-04-30 19:01:47 +03:00
Paweł Chmielowski
2988d84cfb Don't check result of jid.start 2017-04-26 09:50:49 +02:00
Paweł Chmielowski
a67b3dc6a6 Don't check result of jid.start 2017-04-25 16:54:01 +02:00
Paweł Chmielowski
f4c98f635b Don't check result of jid.start 2017-04-25 16:46:00 +02:00
Paweł Chmielowski
44ae6bcc83 Fix elixir tests 2017-04-21 12:17:23 +02:00
Evgeniy Khramtsov
f9c24ab16d Add Riak as mod_carboncopy RAM backend 2017-04-15 14:41:14 +03:00
Evgeniy Khramtsov
fcb978248f Add Riak as session manager RAM backend 2017-04-15 10:02:32 +03:00