diff options
Diffstat (limited to '__e2e__/tests')
-rw-r--r-- | __e2e__/tests/home-screen.test.ts | 6 | ||||
-rw-r--r-- | __e2e__/tests/mute-lists.test.ts | 31 | ||||
-rw-r--r-- | __e2e__/tests/profile-screen.test.ts | 28 | ||||
-rw-r--r-- | __e2e__/tests/self-labeling.test.ts | 34 | ||||
-rw-r--r-- | __e2e__/tests/thread-screen.test.ts | 12 |
5 files changed, 90 insertions, 21 deletions
diff --git a/__e2e__/tests/home-screen.test.ts b/__e2e__/tests/home-screen.test.ts index d0eeb6703..7bad3c19a 100644 --- a/__e2e__/tests/home-screen.test.ts +++ b/__e2e__/tests/home-screen.test.ts @@ -56,12 +56,12 @@ describe('Home screen', () => { .atIndex(0) .tap() await element(by.text('Report post')).tap() - await expect(element(by.id('reportPostModal'))).toBeVisible() + await expect(element(by.id('reportModal'))).toBeVisible() await element( - by.id('reportPostRadios-com.atproto.moderation.defs#reasonSpam'), + by.id('reportReasonRadios-com.atproto.moderation.defs#reasonSpam'), ).tap() await element(by.id('sendReportBtn')).tap() - await expect(element(by.id('reportPostModal'))).not.toBeVisible() + await expect(element(by.id('reportModal'))).not.toBeVisible() }) it('Can swipe between feeds', async () => { diff --git a/__e2e__/tests/mute-lists.test.ts b/__e2e__/tests/mute-lists.test.ts index 8d3b15b1f..870e7ced2 100644 --- a/__e2e__/tests/mute-lists.test.ts +++ b/__e2e__/tests/mute-lists.test.ts @@ -114,7 +114,7 @@ describe('Mute lists', () => { it('Shows the mutelist on my profile', async () => { await element(by.id('bottomBarProfileBtn')).tap() - await element(by.id('selector-2')).tap() + await element(by.id('selector-3')).tap() await element(by.id('list-Bad Ppl')).tap() }) @@ -138,4 +138,33 @@ describe('Mute lists', () => { await element(by.id('saveBtn')).tap() await expect(element(by.id('listAddRemoveUserModal'))).not.toBeVisible() }) + + it('Can report a mute list', async () => { + await element(by.id('bottomBarHomeBtn')).tap() + // Last test leaves us in the list view so we are going back 1 screen to the lists list screen + await element(by.id('viewHeaderDrawerBtn')).tap() + // then to the moderation screen + await element(by.id('viewHeaderDrawerBtn')).tap() + // then to the home screen + await element(by.id('viewHeaderDrawerBtn')).tap() + // then open the drawer to go to settings + await element(by.id('viewHeaderDrawerBtn')).tap() + await element(by.id('menuItemButton-Settings')).tap() + await element(by.id('signOutBtn')).tap() + await expect(element(by.id('signInButton'))).toBeVisible() + await login(service, 'bob.test', 'hunter2') + await element(by.id('bottomBarSearchBtn')).tap() + await element(by.id('searchTextInput')).typeText('alice') + await element(by.id('searchAutoCompleteResult-alice.test')).tap() + await element(by.id('selector-3')).tap() + await element(by.id('list-Bad Ppl')).tap() + await element(by.id('reportListBtn')).tap() + await expect(element(by.id('reportModal'))).toBeVisible() + await expect(element(by.text('Report List'))).toBeVisible() + await element( + by.id('reportReasonRadios-com.atproto.moderation.defs#reasonRude'), + ).tap() + await element(by.id('sendReportBtn')).tap() + await expect(element(by.id('reportModal'))).not.toBeVisible() + }) }) diff --git a/__e2e__/tests/profile-screen.test.ts b/__e2e__/tests/profile-screen.test.ts index 6c6d6db9c..da7980094 100644 --- a/__e2e__/tests/profile-screen.test.ts +++ b/__e2e__/tests/profile-screen.test.ts @@ -5,7 +5,7 @@ import {openApp, login, createServer, sleep} from '../util' describe('Profile screen', () => { let service: string beforeAll(async () => { - service = await createServer('?users&posts') + service = await createServer('?users&posts&feeds') await openApp({ permissions: {notifications: 'YES', medialibrary: 'YES', photos: 'YES'}, }) @@ -17,6 +17,12 @@ describe('Profile screen', () => { await element(by.id('bottomBarProfileBtn')).tap() }) + it('Can see feeds', async () => { + await element(by.id('selector-3')).tap() + await expect(element(by.id('feed-alices feed'))).toBeVisible() + await element(by.id('selector-0')).tap() + }) + it('Open and close edit profile modal', async () => { await element(by.id('profileHeaderEditProfileButton')).tap() await expect(element(by.id('editProfileModal'))).toBeVisible() @@ -53,7 +59,7 @@ describe('Profile screen', () => { await expect(element(by.id('profileHeaderDisplayName'))).toHaveText( 'alice.test', ) - await expect(element(by.id('profileHeaderDescription'))).toHaveText('') + await expect(element(by.id('profileHeaderDescription'))).not.toExist() }) it('Set avi and banner via the edit profile modal', async () => { @@ -107,24 +113,24 @@ describe('Profile screen', () => { }) it('Can mute/unmute another user', async () => { - await expect(element(by.id('profileHeaderMutedNotice'))).not.toExist() + await expect(element(by.id('profileHeaderAlert'))).not.toExist() await element(by.id('profileHeaderDropdownBtn')).tap() await element(by.text('Mute Account')).tap() - await expect(element(by.id('profileHeaderMutedNotice'))).toBeVisible() + await expect(element(by.id('profileHeaderAlert'))).toBeVisible() await element(by.id('profileHeaderDropdownBtn')).tap() await element(by.text('Unmute Account')).tap() - await expect(element(by.id('profileHeaderMutedNotice'))).not.toExist() + await expect(element(by.id('profileHeaderAlert'))).not.toExist() }) it('Can report another user', async () => { await element(by.id('profileHeaderDropdownBtn')).tap() await element(by.text('Report Account')).tap() - await expect(element(by.id('reportAccountModal'))).toBeVisible() + await expect(element(by.id('reportModal'))).toBeVisible() await element( - by.id('reportAccountRadios-com.atproto.moderation.defs#reasonSpam'), + by.id('reportReasonRadios-com.atproto.moderation.defs#reasonSpam'), ).tap() await element(by.id('sendReportBtn')).tap() - await expect(element(by.id('reportAccountModal'))).not.toBeVisible() + await expect(element(by.id('reportModal'))).not.toBeVisible() }) it('Can like posts', async () => { @@ -167,11 +173,11 @@ describe('Profile screen', () => { const posts = by.id('feedItem-by-bob.test') await element(by.id('postDropdownBtn').withAncestor(posts)).atIndex(0).tap() await element(by.text('Report post')).tap() - await expect(element(by.id('reportPostModal'))).toBeVisible() + await expect(element(by.id('reportModal'))).toBeVisible() await element( - by.id('reportPostRadios-com.atproto.moderation.defs#reasonSpam'), + by.id('reportReasonRadios-com.atproto.moderation.defs#reasonSpam'), ).tap() await element(by.id('sendReportBtn')).tap() - await expect(element(by.id('reportPostModal'))).not.toBeVisible() + await expect(element(by.id('reportModal'))).not.toBeVisible() }) }) diff --git a/__e2e__/tests/self-labeling.test.ts b/__e2e__/tests/self-labeling.test.ts new file mode 100644 index 000000000..70164cb85 --- /dev/null +++ b/__e2e__/tests/self-labeling.test.ts @@ -0,0 +1,34 @@ +/* eslint-env detox/detox */ + +import {openApp, login, createServer, sleep} from '../util' + +describe('Self-labeling', () => { + let service: string + beforeAll(async () => { + service = await createServer('?users') + await openApp({ + permissions: {notifications: 'YES', medialibrary: 'YES', photos: 'YES'}, + }) + }) + + it('Login', async () => { + await login(service, 'alice', 'hunter2') + await element(by.id('homeScreenFeedTabs-Following')).tap() + }) + + it('Post an image with the porn label', async () => { + await element(by.id('composeFAB')).tap() + await element(by.id('composerTextInput')).typeText('Post with an image') + await element(by.id('openGalleryBtn')).tap() + await sleep(1e3) + await element(by.id('labelsBtn')).tap() + await element(by.id('pornLabelBtn')).tap() + await element(by.id('confirmBtn')).tap() + await element(by.id('composerPublishBtn')).tap() + await expect(element(by.id('composeFAB'))).toBeVisible() + const posts = by.id('feedItem-by-alice.test') + await expect( + element(by.id('contentHider-embed').withAncestor(posts)).atIndex(0), + ).toExist() + }) +}) diff --git a/__e2e__/tests/thread-screen.test.ts b/__e2e__/tests/thread-screen.test.ts index 081282a36..0964988e9 100644 --- a/__e2e__/tests/thread-screen.test.ts +++ b/__e2e__/tests/thread-screen.test.ts @@ -105,23 +105,23 @@ describe('Thread screen', () => { const post = by.id('postThreadItem-by-bob.test') await element(by.id('postDropdownBtn').withAncestor(post)).atIndex(0).tap() await element(by.text('Report post')).tap() - await expect(element(by.id('reportPostModal'))).toBeVisible() + await expect(element(by.id('reportModal'))).toBeVisible() await element( - by.id('reportPostRadios-com.atproto.moderation.defs#reasonSpam'), + by.id('reportReasonRadios-com.atproto.moderation.defs#reasonSpam'), ).tap() await element(by.id('sendReportBtn')).tap() - await expect(element(by.id('reportPostModal'))).not.toBeVisible() + await expect(element(by.id('reportModal'))).not.toBeVisible() }) it('Can report a reply post', async () => { const post = by.id('postThreadItem-by-carla.test') await element(by.id('postDropdownBtn').withAncestor(post)).atIndex(0).tap() await element(by.text('Report post')).tap() - await expect(element(by.id('reportPostModal'))).toBeVisible() + await expect(element(by.id('reportModal'))).toBeVisible() await element( - by.id('reportPostRadios-com.atproto.moderation.defs#reasonSpam'), + by.id('reportReasonRadios-com.atproto.moderation.defs#reasonSpam'), ).tap() await element(by.id('sendReportBtn')).tap() - await expect(element(by.id('reportPostModal'))).not.toBeVisible() + await expect(element(by.id('reportModal'))).not.toBeVisible() }) }) |