chore: update tested mastodon to v3.1.3 (#1760)

* chore: update tested mastodon to v3.1.3

* fix tests

* fixup

* fix test
This commit is contained in:
Nolan Lawson 2020-05-02 18:02:29 -07:00 committed by GitHub
parent 4fe7a818ab
commit 00b9b1c216
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 1002 additions and 252 deletions

View file

@ -121,11 +121,12 @@ or
1. Run `rm -fr mastodon` to clear out all Mastodon data
1. Comment out `await restoreMastodonData()` in `run-mastodon.js` to avoid actually populating the database with statuses/favorites/etc.
2. Update the `GIT_TAG_OR_BRANCH` in `run-mastodon.js` to whatever you want
3. Run `yarn run run-mastodon`
4. Run `yarn run backup-mastodon-data` to overwrite the data in `fixtures/`
5. Uncomment `await restoreMastodonData()` in `run-mastodon.js`
6. Commit all changed files
7. Run `rm -fr mastodon/` and `yarn run run-mastodon` to confirm everything's working
3. If the Ruby version changed, install it and update `setup-mastodon-in.travis.sh`
4. Run `yarn run-mastodon`
5. Run `yarn backup-mastodon-data` to overwrite the data in `fixtures/`
6. Uncomment `await restoreMastodonData()` in `run-mastodon.js`
7. Commit all changed files
8. Run `rm -fr mastodon/` and `yarn run run-mastodon` to confirm everything's working
Check `mastodon.log` if you have any issues.

View file

@ -12,9 +12,9 @@ const stat = promisify(fs.stat)
const writeFile = promisify(fs.writeFile)
const dir = __dirname
const GIT_URL = 'https://github.com/nolanlawson/mastodon.git'
const GIT_TAG_OR_COMMIT = '824ddcdbe'
const GIT_BRANCH = 'v2.9.2-with-fuubar-fix'
const GIT_URL = 'https://github.com/tootsuite/mastodon.git'
const GIT_TAG_OR_COMMIT = 'v3.1.3'
const GIT_BRANCH = 'master'
const DB_NAME = 'pinafore_development'
const DB_USER = 'pinafore'

View file

@ -8,8 +8,8 @@ fi
# install ruby
source "$HOME/.rvm/scripts/rvm"
rvm install 2.6.1
rvm use 2.6.1
rvm install 2.6.6
rvm use 2.6.6
# check versions
ruby --version

1209
tests/fixtures/dump.sql vendored

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -23,10 +23,10 @@ test('converts external links in statuses', async t => {
.expect(getAnchor(0, 1).getAttribute('href')).eql('/accounts/3')
.expect(getAnchor(1, 0).getAttribute('href')).eql('https://joinmastodon.org')
.expect(getAnchor(1, 0).getAttribute('title')).eql('https://joinmastodon.org')
.expect(getAnchor(1, 0).getAttribute('rel')).eql('nofollow noopener')
.expect(getAnchor(1, 0).getAttribute('rel')).contains('nofollow noopener')
.expect(getAnchor(1, 1).getAttribute('href')).eql('https://github.com/tootsuite/mastodon')
.expect(getAnchor(1, 1).getAttribute('title')).eql('https://github.com/tootsuite/mastodon')
.expect(getAnchor(1, 1).getAttribute('rel')).eql('nofollow noopener')
.expect(getAnchor(1, 1).getAttribute('rel')).contains('nofollow noopener')
.expect(getAnchor(2, 0).getAttribute('href')).eql('/tags/kitten')
.expect(getAnchor(2, 1).getAttribute('href')).eql('/tags/kitties')
})
@ -39,9 +39,9 @@ test('converts external links in profiles', async t => {
.expect(getUrl()).contains('/accounts/4')
.expect($('.account-profile-name').innerText).contains('External Lonk')
.expect($('.account-profile-name a').getAttribute('href')).eql('http://localhost:3000/@ExternalLinks')
.expect($('.account-profile-name a').getAttribute('rel')).eql('nofollow noopener')
.expect($('.account-profile-name a').getAttribute('rel')).contains('nofollow noopener')
.expect(getAnchorInProfile(0).getAttribute('href')).eql('https://joinmastodon.org')
.expect(getAnchorInProfile(0).getAttribute('rel')).eql('nofollow noopener')
.expect(getAnchorInProfile(0).getAttribute('rel')).contains('nofollow noopener')
.expect(getAnchorInProfile(1).getAttribute('href')).eql('http://localhost:3000/tags/cat')
.expect(getAnchorInProfile(2).getAttribute('href')).eql('http://localhost:3000/tags/mastocats')
.expect(getAnchorInProfile(3).getAttribute('href')).eql('http://localhost:3000/@quux')

View file

@ -37,22 +37,22 @@ test('External links, hashtags, and mentions have correct attributes', async t =
.expect(nthAnchor(3).getAttribute('href')).eql('/tags/tag')
.expect(nthAnchor(3).hasAttribute('rel')).notOk()
.expect(nthAnchor(3).hasAttribute('target')).notOk()
.expect(nthAnchor(4).getAttribute('href')).eql('/tags/anothertag')
.expect(nthAnchor(4).getAttribute('href')).eql('/tags/anotherTag')
.expect(nthAnchor(4).hasAttribute('rel')).notOk()
.expect(nthAnchor(4).hasAttribute('target')).notOk()
.expect(nthAnchor(5).getAttribute('href')).eql('/tags/yetanothertag')
.expect(nthAnchor(5).getAttribute('href')).eql('/tags/yetAnotherTag')
.expect(nthAnchor(5).hasAttribute('rel')).notOk()
.expect(nthAnchor(5).hasAttribute('target')).notOk()
.expect(nthAnchor(6).getAttribute('href')).eql('http://example.com')
.expect(nthAnchor(6).getAttribute('rel')).eql('nofollow noopener')
.expect(nthAnchor(6).getAttribute('rel')).contains('nofollow noopener')
.expect(nthAnchor(6).getAttribute('title')).eql('http://example.com')
.expect(nthAnchor(6).getAttribute('target')).eql('_blank')
.expect(nthAnchor(7).getAttribute('href')).eql('https://joinmastodon.org')
.expect(nthAnchor(7).getAttribute('rel')).eql('nofollow noopener')
.expect(nthAnchor(7).getAttribute('rel')).contains('nofollow noopener')
.expect(nthAnchor(7).getAttribute('title')).eql('https://joinmastodon.org')
.expect(nthAnchor(7).getAttribute('target')).eql('_blank')
.expect(nthAnchor(8).getAttribute('href')).eql('https://mastodon.social')
.expect(nthAnchor(8).getAttribute('rel')).eql('nofollow noopener')
.expect(nthAnchor(8).getAttribute('rel')).contains('nofollow noopener')
.expect(nthAnchor(8).getAttribute('title')).eql('https://mastodon.social')
.expect(nthAnchor(8).getAttribute('target')).eql('_blank')
})

View file

@ -17,14 +17,12 @@ test('autosuggests hashtags', async t => {
.hover(composeInput)
await sleep(1000)
await t
.typeText(composeInput, 'hey #bl')
.typeText(composeInput, 'hey #blank')
.expect(getNthAutosuggestionResult(1).innerText).contains('blank', { timeout })
.expect(getNthAutosuggestionResult(2).innerText).contains('blanka', { timeout })
.expect(getNthAutosuggestionResult(1).find('.sr-only').innerText).contains('#blank', { timeout })
.expect(getNthAutosuggestionResult(2).find('.sr-only').innerText).contains('#blanka', { timeout })
.click(getNthAutosuggestionResult(1), { timeout })
.expect(composeInput.value).eql('hey #blank ')
.typeText(composeInput, 'and also #BL')
.typeText(composeInput, 'and also #BLANK')
.click(getNthAutosuggestionResult(1), { timeout })
.expect(composeInput.value).eql('hey #blank and also #blank ')
.typeText(composeInput, 'and also #blanka')