gotosocial/internal/transport/delivery
kim 7b1ccbd65a
[feature] add worker task serialization logic (#2989)
* improved server shutdown with more precise shutdown of modules + deferring of ALL of it

* move delivery and workers into separate files

* add worker task model and Serialize() / Deserialize() methods for message types

* start adding message serialize / deserialize tests

* start adding test cases

* update body rewinding to rely on standard library mechanism of r.GetBody()

* remove request rewinding (http.Client{} should already handle this)

* standard library already handles rewinding

* improved code comment

* move the newPOST() function contents to prepare(), fits better with current API

* add Serialize() / Deserialize() implementations for Delivery{} type

* finish writing FromClientAPI sserialize / deserialize tests

* start adding FromFediAPI{} serialize / deserialize test cases

* fix FromFediAPI{} tests

* add tests for delivery message type

* fix repeat code

* missing license header

* use testrig status and accounts for marshal / unmarshaling tests

* add a specific test for checking account RSA keys are preserved
2024-06-20 17:06:20 +00:00
..
delivery_test.go [feature] add worker task serialization logic (#2989) 2024-06-20 17:06:20 +00:00
delivery.go [feature] add worker task serialization logic (#2989) 2024-06-20 17:06:20 +00:00
worker_test.go [feature] add worker task serialization logic (#2989) 2024-06-20 17:06:20 +00:00
worker.go [feature] add worker task serialization logic (#2989) 2024-06-20 17:06:20 +00:00