summaryrefslogtreecommitdiff
path: root/testrig
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2024-07-24 13:27:42 +0200
committerLibravatar GitHub <noreply@github.com>2024-07-24 12:27:42 +0100
commitc9b6220fef01dce80a31436660cd06b4e1db030f (patch)
tree5fbade865a920a5ea04fdd63763eca1880d60c5d /testrig
parent[chore] renames the `GTS` caches to `DB` caches (#3127) (diff)
downloadgotosocial-c9b6220fef01dce80a31436660cd06b4e1db030f.tar.xz
[chore] Add interaction filter to complement existing visibility filter (#3111)
* [chore] Add interaction filter to complement existing visibility filter * pass in ptr to visibility and interaction filters to Processor{} to ensure shared * use int constants for for match type, cache db calls in filterctx * function name typo :innocent: --------- Co-authored-by: kim <grufwub@gmail.com>
Diffstat (limited to 'testrig')
-rw-r--r--testrig/federator.go11
-rw-r--r--testrig/processor.go14
-rw-r--r--testrig/testmodels.go23
-rw-r--r--testrig/util.go6
4 files changed, 49 insertions, 5 deletions
diff --git a/testrig/federator.go b/testrig/federator.go
index f90aa99ab..cd4f38b10 100644
--- a/testrig/federator.go
+++ b/testrig/federator.go
@@ -19,6 +19,7 @@ package testrig
import (
"github.com/superseriousbusiness/gotosocial/internal/federation"
+ "github.com/superseriousbusiness/gotosocial/internal/filter/interaction"
"github.com/superseriousbusiness/gotosocial/internal/filter/visibility"
"github.com/superseriousbusiness/gotosocial/internal/media"
"github.com/superseriousbusiness/gotosocial/internal/state"
@@ -28,5 +29,13 @@ import (
// NewTestFederator returns a federator with the given database and (mock!!) transport controller.
func NewTestFederator(state *state.State, tc transport.Controller, mediaManager *media.Manager) *federation.Federator {
- return federation.NewFederator(state, NewTestFederatingDB(state), tc, typeutils.NewConverter(state), visibility.NewFilter(state), mediaManager)
+ return federation.NewFederator(
+ state,
+ NewTestFederatingDB(state),
+ tc,
+ typeutils.NewConverter(state),
+ visibility.NewFilter(state),
+ interaction.NewFilter(state),
+ mediaManager,
+ )
}
diff --git a/testrig/processor.go b/testrig/processor.go
index a1bab4f9a..e098de33a 100644
--- a/testrig/processor.go
+++ b/testrig/processor.go
@@ -21,6 +21,8 @@ import (
"github.com/superseriousbusiness/gotosocial/internal/cleaner"
"github.com/superseriousbusiness/gotosocial/internal/email"
"github.com/superseriousbusiness/gotosocial/internal/federation"
+ "github.com/superseriousbusiness/gotosocial/internal/filter/interaction"
+ "github.com/superseriousbusiness/gotosocial/internal/filter/visibility"
"github.com/superseriousbusiness/gotosocial/internal/media"
"github.com/superseriousbusiness/gotosocial/internal/processing"
"github.com/superseriousbusiness/gotosocial/internal/state"
@@ -31,5 +33,15 @@ import (
// The passed in state will have its worker functions set appropriately,
// but the state will not be initialized.
func NewTestProcessor(state *state.State, federator *federation.Federator, emailSender email.Sender, mediaManager *media.Manager) *processing.Processor {
- return processing.NewProcessor(cleaner.New(state), typeutils.NewConverter(state), federator, NewTestOauthServer(state.DB), mediaManager, state, emailSender)
+ return processing.NewProcessor(
+ cleaner.New(state),
+ typeutils.NewConverter(state),
+ federator,
+ NewTestOauthServer(state.DB),
+ mediaManager,
+ state,
+ emailSender,
+ visibility.NewFilter(state),
+ interaction.NewFilter(state),
+ )
}
diff --git a/testrig/testmodels.go b/testrig/testmodels.go
index 87f8c7054..218668a69 100644
--- a/testrig/testmodels.go
+++ b/testrig/testmodels.go
@@ -1436,6 +1436,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGXQRHYF5QPMTMXP78QC2F",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"admin_account_status_2": {
ID: "01F8MHAAY43M6RJ473VQFCVH37",
@@ -1459,6 +1460,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGXQRHYF5QPMTMXP78QC2F",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"admin_account_status_3": {
ID: "01FF25D5Q0DH7CHD57CTRS6WK0",
@@ -1483,6 +1485,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGXQRHYF5QPMTMXP78QC2F",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"admin_account_status_4": {
ID: "01G36SF3V6Y6V5BF9P4R7PQG7G",
@@ -1504,6 +1507,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGXQRHYF5QPMTMXP78QC2F",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_1_status_1": {
ID: "01F8MHAMCHF6Y650WCRSCP4WMY",
@@ -1526,6 +1530,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGY43H3N2C8EWPR2FPYEXG",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_1_status_2": {
ID: "01F8MHAYFKS4KMXF8K5Y1C0KRN",
@@ -1548,6 +1553,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGY43H3N2C8EWPR2FPYEXG",
Federated: util.Ptr(false),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_1_status_3": {
ID: "01F8MHBBN8120SYH7D5S050MGK",
@@ -1581,6 +1587,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
},
},
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_1_status_4": {
ID: "01F8MH82FYRXD2RC6108DAJ5HB",
@@ -1604,6 +1611,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGY43H3N2C8EWPR2FPYEXG",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_1_status_5": {
ID: "01FCTA44PW9H1TB328S9AQXKDS",
@@ -1627,6 +1635,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGY43H3N2C8EWPR2FPYEXG",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_1_status_6": {
ID: "01HEN2RZ8BG29Y5Z9VJC73HZW7",
@@ -1651,6 +1660,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
Federated: util.Ptr(true),
ActivityStreamsType: ap.ActivityQuestion,
PollID: "01HEN2RKT1YTEZ80SA8HGP105F",
+ PendingApproval: util.Ptr(false),
},
"local_account_1_status_7": {
ID: "01HH9KYNQPA416TNJ53NSATP40",
@@ -1673,6 +1683,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGY43H3N2C8EWPR2FPYEXG",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_1_status_8": {
ID: "01J2M1HPFSS54S60Y0KYV23KJE",
@@ -1720,6 +1731,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGYG9E893WRHW0TAEXR8GJ",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_2_status_2": {
ID: "01F8MHC0H0A7XHTVH5F596ZKBM",
@@ -1753,6 +1765,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
},
},
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_2_status_3": {
ID: "01F8MHC8VWDRBQR0N1BATDDEM5",
@@ -1787,6 +1800,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
},
},
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_2_status_4": {
ID: "01F8MHCP5P2NWYQ416SBA0XSEV",
@@ -1820,6 +1834,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
},
},
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_2_status_5": {
ID: "01FCQSQ667XHJ9AV9T27SJJSX5",
@@ -1845,6 +1860,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGYG9E893WRHW0TAEXR8GJ",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_2_status_6": {
ID: "01FN3VJGFH10KR7S2PB0GFJZYG",
@@ -1870,6 +1886,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGYG9E893WRHW0TAEXR8GJ",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_2_status_7": {
ID: "01G20ZM733MGN8J344T4ZDDFY1",
@@ -1894,6 +1911,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "01F8MGYG9E893WRHW0TAEXR8GJ",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"local_account_2_status_8": {
ID: "01HEN2PRXT0TF4YDRA64FZZRN7",
@@ -1918,6 +1936,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
Federated: util.Ptr(true),
ActivityStreamsType: ap.ActivityQuestion,
PollID: "01HEN2QB5NR4NCEHGYC3HN84K6",
+ PendingApproval: util.Ptr(false),
},
"remote_account_1_status_1": {
ID: "01FVW7JHQFSFK166WWKR8CBA6M",
@@ -1942,6 +1961,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
"remote_account_1_status_2": {
ID: "01HEN2QRFA8H3C6QPN7RD4KSR6",
@@ -1966,6 +1986,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
Federated: util.Ptr(true),
ActivityStreamsType: ap.ActivityQuestion,
PollID: "01HEN2R65468ZG657C4ZPHJ4EX",
+ PendingApproval: util.Ptr(false),
},
"remote_account_1_status_3": {
ID: "01HEWV37MHV8BAC8ANFGVRRM5D",
@@ -1990,6 +2011,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
Federated: util.Ptr(true),
ActivityStreamsType: ap.ActivityQuestion,
PollID: "01HEWV1GW2D49R919NPEDXPTZ5",
+ PendingApproval: util.Ptr(false),
},
"remote_account_2_status_1": {
ID: "01HE7XJ1CG84TBKH5V9XKBVGF5",
@@ -2014,6 +2036,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
CreatedWithApplicationID: "",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
+ PendingApproval: util.Ptr(false),
},
}
}
diff --git a/testrig/util.go b/testrig/util.go
index abc94bf02..31312f0af 100644
--- a/testrig/util.go
+++ b/testrig/util.go
@@ -91,10 +91,10 @@ func StopWorkers(state *state.State) {
state.Workers.Dereference.Stop()
}
-func StartTimelines(state *state.State, filter *visibility.Filter, converter *typeutils.Converter) {
+func StartTimelines(state *state.State, visFilter *visibility.Filter, converter *typeutils.Converter) {
state.Timelines.Home = timeline.NewManager(
tlprocessor.HomeTimelineGrab(state),
- tlprocessor.HomeTimelineFilter(state, filter),
+ tlprocessor.HomeTimelineFilter(state, visFilter),
tlprocessor.HomeTimelineStatusPrepare(state, converter),
tlprocessor.SkipInsert(),
)
@@ -104,7 +104,7 @@ func StartTimelines(state *state.State, filter *visibility.Filter, converter *ty
state.Timelines.List = timeline.NewManager(
tlprocessor.ListTimelineGrab(state),
- tlprocessor.ListTimelineFilter(state, filter),
+ tlprocessor.ListTimelineFilter(state, visFilter),
tlprocessor.ListTimelineStatusPrepare(state, converter),
tlprocessor.SkipInsert(),
)