@@ -2,13 +2,14 @@ import { currentURL } from '@ember/test-helpers';
22import { module , test } from 'qunit' ;
33
44import percySnapshot from '@percy/ember' ;
5+ import { http , HttpResponse } from 'msw' ;
56
67import { setupApplicationTest } from 'crates-io/tests/helpers' ;
78
89import { visit } from '../helpers/visit-ignoring-abort' ;
910
1011module ( 'Acceptance | /accept-invite/:token' , function ( hooks ) {
11- setupApplicationTest ( hooks ) ;
12+ setupApplicationTest ( hooks , { msw : true } ) ;
1213
1314 test ( 'visiting to /accept-invite shows 404 page' , async function ( assert ) {
1415 await visit ( '/accept-invite' ) ;
@@ -25,6 +26,9 @@ module('Acceptance | /accept-invite/:token', function (hooks) {
2526 } ) ;
2627
2728 test ( 'shows error for unknown token' , async function ( assert ) {
29+ let error = HttpResponse . json ( { } , { status : 404 } ) ;
30+ this . worker . use ( http . put ( '/api/v1/me/crate_owner_invitations/accept/:token' , ( ) => error ) ) ;
31+
2832 await visit ( '/accept-invite/unknown' ) ;
2933 assert . strictEqual ( currentURL ( ) , '/accept-invite/unknown' ) ;
3034 assert . dom ( '[data-test-error-message]' ) . hasText ( 'You may want to visit crates.io/me/pending-invites to try again.' ) ;
@@ -34,20 +38,21 @@ module('Acceptance | /accept-invite/:token', function (hooks) {
3438 let errorMessage =
3539 'The invitation to become an owner of the demo_crate crate expired. Please reach out to an owner of the crate to request a new invitation.' ;
3640 let payload = { errors : [ { detail : errorMessage } ] } ;
37- this . server . put ( '/api/v1/me/crate_owner_invitations/accept/:token' , payload , 410 ) ;
41+ let error = HttpResponse . json ( payload , { status : 410 } ) ;
42+ this . worker . use ( http . put ( '/api/v1/me/crate_owner_invitations/accept/:token' , ( ) => error ) ) ;
3843
3944 await visit ( '/accept-invite/secret123' ) ;
4045 assert . strictEqual ( currentURL ( ) , '/accept-invite/secret123' ) ;
4146 assert . dom ( '[data-test-error-message]' ) . hasText ( errorMessage ) ;
4247 } ) ;
4348
4449 test ( 'shows success for known token' , async function ( assert ) {
45- let inviter = this . server . create ( 'user' ) ;
46- let invitee = this . server . create ( 'user' ) ;
50+ let inviter = this . db . user . create ( ) ;
51+ let invitee = this . db . user . create ( ) ;
4752
48- let crate = this . server . create ( 'crate' , { name : 'nanomsg' } ) ;
49- this . server . create ( 'version' , { crate } ) ;
50- let invite = this . server . create ( 'crate-owner-invitation' , { crate, invitee, inviter } ) ;
53+ let crate = this . db . crate . create ( { name : 'nanomsg' } ) ;
54+ this . db . version . create ( { crate } ) ;
55+ let invite = this . db . crateOwnerInvitation . create ( { crate, invitee, inviter } ) ;
5156
5257 await visit ( `/accept-invite/${ invite . token } ` ) ;
5358 assert . strictEqual ( currentURL ( ) , `/accept-invite/${ invite . token } ` ) ;
0 commit comments