[chore] Update bun / sqlite versions; update gtsmodels (#754)

* upstep bun and sqlite versions

* allow specific columns to be updated in the db

* only update necessary columns for user

* bit tidier

* only update necessary fields of media_attachment

* only update relevant instance fields

* update tests

* update only specific account columns

* use bool pointers on gtsmodels
includes attachment, status, account, user

* update columns more selectively

* test all default fields on new account insert

* updating remaining bools on gtsmodels

* initialize pointer fields when extracting AP emoji

* copy bools properly

* add copyBoolPtr convenience function + test it

* initialize false bool ptrs a bit more neatly
This commit is contained in:
tobi
2022-08-15 12:35:05 +02:00
committed by GitHub
parent 52fe681ba2
commit ac6ed3d939
376 changed files with 337942 additions and 298092 deletions

View File

@@ -72,6 +72,32 @@ func (suite *StatusCacheTestSuite) TestStatusCache() {
}
}
func (suite *StatusCacheTestSuite) TestBoolPointerCopying() {
originalStatus := suite.data["local_account_1_status_1"]
// mark the status as pinned + cache it
pinned := true
originalStatus.Pinned = &pinned
suite.cache.Put(originalStatus)
// retrieve it
cachedStatus, ok := suite.cache.GetByID(originalStatus.ID)
if !ok {
suite.FailNow("status wasn't retrievable from cache")
}
// we should be able to change the original status values + cached
// values independently since they use different pointers
suite.True(*cachedStatus.Pinned)
*originalStatus.Pinned = false
suite.False(*originalStatus.Pinned)
suite.True(*cachedStatus.Pinned)
*originalStatus.Pinned = true
*cachedStatus.Pinned = false
suite.True(*originalStatus.Pinned)
suite.False(*cachedStatus.Pinned)
}
func TestStatusCache(t *testing.T) {
suite.Run(t, &StatusCacheTestSuite{})
}