Mercurial > prosody-hg
annotate spec/net_http_server_spec.lua @ 13903:4af7d00a2966
MUC: occupant: refactor to allow storing more than just presence for a session
Previously a "session" (i.e. a full JID joined to a MUC) was stored as simply
a mapping of full JIDs->presence, contained within occupant objects (an
occupant object groups all sessions behind a certain nick in the MUC).
To enable developing GC3 and other features, it would be helpful if we can
store additional metadata when a client joins a room, for example, whether it
has opted out of receiving presence stanzas (a GC3 feature).
This changes the internal data structure, which shouldn't be used outside this
module, it adds a new :get_session() method, and modifies the :each_session()
iterator to return the session as an additional result (which should be
backwards compatible with code that just consumes the existing two results).
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Mon, 11 Nov 2024 12:47:01 +0000 |
| parents | ee01578c67cb |
| children |
| rev | line source |
|---|---|
|
8413
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 describe("net.http.server", function () |
|
8687
ee01578c67cb
net.http.server: Prevent loading of net.server in tests (breaks unrelated tests for some reason)
Kim Alvefur <zash@zash.se>
parents:
8413
diff
changeset
|
2 package.loaded["net.server"] = {} |
|
8413
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 local server = require "net.http.server"; |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 describe("events", function () |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 it("should work with util.helpers", function () |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 -- See #1044 |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 server.add_handler("GET host/foo/*", function () end, 0); |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 server.add_handler("GET host/foo/bar", function () end, 0); |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 local helpers = require "util.helpers"; |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 assert.is.string(helpers.show_events(server._events)); |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 end); |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 end); |
|
9a234e25b35b
spec/net.http.server: Add test for #1044
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 end); |
