diff options
author | 2022-12-22 11:48:28 +0100 | |
---|---|---|
committer | 2022-12-22 11:48:28 +0100 | |
commit | 1659f75ae6e491355e1d32f0f5e8b956ef70a797 (patch) | |
tree | 0cc7aba9d8c98ee0163488121328e9cd0c6b32c2 /testrig/testmodels.go | |
parent | [bugfix] fix media create error not being checked (#1283) (diff) | |
download | gotosocial-1659f75ae6e491355e1d32f0f5e8b956ef70a797.tar.xz |
[feature] For video attachments, store + return fps, bitrate, duration (#1282)
* start messing about with different mp4 metadata extraction
* heyyooo it works
* add test cow
* move useful multierror to gtserror package
* error out if video doesn't seem to be a real mp4
* test parsing mkv in disguise as mp4
* tidy up error handling
* remove extraneous line
* update framerate formatting
* use float32 for aspect
* fixy mctesterson
Diffstat (limited to 'testrig/testmodels.go')
-rw-r--r-- | testrig/testmodels.go | 72 |
1 files changed, 68 insertions, 4 deletions
diff --git a/testrig/testmodels.go b/testrig/testmodels.go index 1f61d0b81..01676d517 100644 --- a/testrig/testmodels.go +++ b/testrig/testmodels.go @@ -60,6 +60,14 @@ func StringPtr(in string) *string { return &in } +func Float32Ptr(in float32) *float32 { + return &in +} + +func Uint64Ptr(in uint64) *uint64 { + return &in +} + // NewTestTokens returns a map of tokens keyed according to which account the token belongs to. func NewTestTokens() map[string]*gtsmodel.Token { tokens := map[string]*gtsmodel.Token{ @@ -772,6 +780,58 @@ func NewTestAttachments() map[string]*gtsmodel.MediaAttachment { Header: FalseBool(), Cached: TrueBool(), }, + "local_account_1_status_4_attachment_2": { + ID: "01CDR64G398ADCHXK08WWTHEZ5", + StatusID: "01F8MH82FYRXD2RC6108DAJ5HB", + URL: "http://localhost:8080/fileserver/01F8MH1H7YV1Z7D2C8K2730QBF/attachment/original/01CDR64G398ADCHXK08WWTHEZ5.mp4", + RemoteURL: "", + CreatedAt: TimeMustParse("2022-06-09T13:12:00Z"), + UpdatedAt: TimeMustParse("2022-06-09T13:12:00Z"), + Type: gtsmodel.FileTypeVideo, + FileMeta: gtsmodel.FileMeta{ + Original: gtsmodel.Original{ + Width: 720, + Height: 404, + Size: 290880, + Aspect: 1.78217821782178, + Duration: Float32Ptr(15.033334), + Framerate: Float32Ptr(30.0), + Bitrate: Uint64Ptr(1206522), + }, + Small: gtsmodel.Small{ + Width: 720, + Height: 404, + Size: 290880, + Aspect: 1.78217821782178, + }, + Focus: gtsmodel.Focus{ + X: 0, + Y: 0, + }, + }, + AccountID: "01F8MH1H7YV1Z7D2C8K2730QBF", + Description: "A cow adorably licking another cow!", + ScheduledStatusID: "", + Blurhash: "", + Processing: 2, + File: gtsmodel.File{ + Path: "01F8MH1H7YV1Z7D2C8K2730QBF/attachment/original/01CDR64G398ADCHXK08WWTHEZ5.gif", + ContentType: "video/mp4", + FileSize: 2273532, + UpdatedAt: TimeMustParse("2022-06-09T13:12:00Z"), + }, + Thumbnail: gtsmodel.Thumbnail{ + Path: "01F8MH1H7YV1Z7D2C8K2730QBF/attachment/small/01CDR64G398ADCHXK08WWTHEZ5.jpeg", + ContentType: "image/jpeg", + FileSize: 5272, + UpdatedAt: TimeMustParse("2022-06-09T13:12:00Z"), + URL: "http://localhost:8080/fileserver/01F8MH1H7YV1Z7D2C8K2730QBF/attachment/small/01CDR64G398ADCHXK08WWTHEZ5.jpeg", + RemoteURL: "", + }, + Avatar: FalseBool(), + Header: FalseBool(), + Cached: TrueBool(), + }, "local_account_1_unattached_1": { ID: "01F8MH8RMYQ6MSNY3JM2XT1CQ5", StatusID: "", // this attachment isn't connected to a status YET @@ -1209,6 +1269,10 @@ func newTestStoredAttachments() map[string]filenames { Original: "trent-original.gif", Small: "trent-small.jpeg", }, + "local_account_1_status_4_attachment_2": { + Original: "cowlick-original.mp4", + Small: "cowlick-small.jpeg", + }, "local_account_1_unattached_1": { Original: "ohyou-original.jpeg", Small: "ohyou-small.jpeg", @@ -1434,9 +1498,9 @@ func NewTestStatuses() map[string]*gtsmodel.Status { ID: "01F8MH82FYRXD2RC6108DAJ5HB", URI: "http://localhost:8080/users/the_mighty_zork/statuses/01F8MH82FYRXD2RC6108DAJ5HB", URL: "http://localhost:8080/@the_mighty_zork/statuses/01F8MH82FYRXD2RC6108DAJ5HB", - Content: "here's a little gif of trent", - Text: "here's a little gif of trent", - AttachmentIDs: []string{"01F8MH7TDVANYKWVE8VVKFPJTJ"}, + Content: "here's a little gif of trent.... and also a cow", + Text: "here's a little gif of trent.... and also a cow", + AttachmentIDs: []string{"01F8MH7TDVANYKWVE8VVKFPJTJ", "01CDR64G398ADCHXK08WWTHEZ5"}, CreatedAt: TimeMustParse("2021-10-20T12:40:37+02:00"), UpdatedAt: TimeMustParse("2021-10-20T12:40:37+02:00"), Local: TrueBool(), @@ -1444,7 +1508,7 @@ func NewTestStatuses() map[string]*gtsmodel.Status { AccountID: "01F8MH1H7YV1Z7D2C8K2730QBF", InReplyToID: "", BoostOfID: "", - ContentWarning: "eye contact, trent reznor gif", + ContentWarning: "eye contact, trent reznor gif, cow", Visibility: gtsmodel.VisibilityMutualsOnly, Sensitive: FalseBool(), Language: "en", |