MIM-2712 Update pubsub tools - #4718
Conversation
|
CircleCI results for a646832 small_tests_legacy / small_tests / 0183d94 small_tests_latest / small_tests / 0183d94 small_tests_latest_arm64 / small_tests / 0183d94 ldap_mnesia_latest / ldap_mnesia / 0183d94 internal_mnesia_latest / internal_mnesia / 0183d94 dynamic_domains_pgsql_cets_legacy / pgsql_cets / 0183d94 dynamic_domains_pgsql_cets_latest / pgsql_cets / 0183d94 pgsql_cets_legacy / pgsql_cets / 0183d94 pgsql_redis_latest / pgsql_redis / 0183d94 pgsql_cets_latest / pgsql_cets / 0183d94 cockroachdb_cets_latest / cockroachdb_cets / 0183d94 elasticsearch_and_cassandra_mnesia_latest / elasticsearch_and_cassandra_mnesia / 0183d94 mongoose_elasticsearch_SUITE:end_per_suite{error,
{{badrpc,
{'EXIT',
{#{what => event_already_registered,
event_name => wpool_global_queue_lengths,
labels => #{pool_type => elastic,pool_tag => default}},
[{mongoose_instrument,set_up,3,
[{file,
"/home/circleci/project/src/instrument/mongoose_instrument.erl"},
{line,110}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,2641}]},
{mongoose_wpool,start,5,
[{file,
"/home/circleci/project/src/wpool/mongoose_wpool.erl"},
{line,162}]},
{mongoose_wpool,'-start_configured_pools/3-lc$^1/1-1-',1,
[{file,
"/home/circleci/project/src/wpool/mongoose_wpool.erl"},
{line,129}]},
{mongoose_wpool,start_configured_pools,1,[]}]}}},
[{distributed_helper,rpc,
[#{node => mongooseim@localhost},
mongoose_wpool,start_configured_pools,
[[#{scope => global,tag => default,type => elastic,
opts =>
#{strategy => best_worker,workers => 10,
call_timeout => 5000},
conn_opts => #{port => 9200,host => <<"localhost">>}}]]],
[{file,
"/home/circleci/project/big_tests/../test/common/distributed_helper.erl"},
{line,143}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1796}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1393}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1237}]}]}...mysql_cets_latest / mysql_cets / 0183d94 pgsql_mnesia_latest / pgsql_mnesia / 0183d94 |
60b9a42 to
6bffeb1
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## feature/pubsub #4718 +/- ##
==================================================
+ Coverage 85.87% 85.90% +0.03%
==================================================
Files 541 541
Lines 32504 32504
==================================================
+ Hits 27912 27922 +10
+ Misses 4592 4582 -10 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
- Use the updated Escalus API (escalus_pubsub_stanza) - Allow sending generic pubsub requests to test error conditions - Automatically check incoming notifications without assuming an order - Simplify creation of publish requests - Allow retrieving selected items - Add detailed error checking - Simplify form handlign by always using 2-tuples for fields (w/o type) - Allow setting custom options like subscriber_jid test corner cases Also, update existing tests to stay compatible with the helpers. Updates to old PEP/PubSub tests are minimal on purpose, because these suites will be removed.
93b187a to
3f8e7eb
Compare
pawlooss1
left a comment
There was a problem hiding this comment.
Looks good 👍 I've also merged esl/escalus#290, so you can amend the version upgrade commit and merge this PR.
3f8e7eb to
0183d94
Compare
Summary
This PR updates the big-test PubSub helpers to the newer Escalus PubSub API and aligns the affected suites with the new helper contract.
The main goal is to make the test utilities work cleanly with the newer stanza builders while keeping negative-path testing and corner-case coverage practical.
Notes:
What changed
pubsub_toolsescalus_pubsub_stanzaAPIsubscriber_jidtype) consistently for data forms - this weakens a check inpubsub_old_SUITE, but it is for the sake of simplicity.Updated suites
The following suites were adjusted to stay compatible with the helper changes:
pep_old_SUITEpubsub_old_SUITEpubsub_s2s_SUITEpush_pubsub_SUITEpush_integration_SUITEgdpr_SUITEWhy
The new PEP work depends on a more capable and less fragile PubSub test helper layer.
This PR prepares that ground by: