@@ -35,39 +35,31 @@ test('it renders correctly', function(assert) {
35
35
assert . ok ( page . creditCardIsRendered , 'Credit card component is rendered.' ) ;
36
36
} ) ;
37
37
38
- test ( 'it handles clicking card submit button correctly' , function ( assert ) {
39
- assert . expect ( 1 ) ;
40
-
41
- this . set ( 'amount' , 100 ) ;
42
- this . set ( 'projectTitle' , 'CodeCorps' ) ;
38
+ test ( 'properly renders card list and donation button' , function ( assert ) {
39
+ assert . expect ( 2 ) ;
43
40
44
- let expectedProps = {
45
- cardNumber : '1234-5678-9012-3456' ,
46
- cvc : '123' ,
47
- month : '12' ,
48
- year : '2020'
49
- } ;
41
+ let cards = [ { foo : 'bar ' } , { foo : 'baz' } ] ;
50
42
51
- function donateHandler ( actualProps ) {
52
- assert . deepEqual ( actualProps , expectedProps , 'Card parameters were passed correctly.' ) ;
53
- }
43
+ this . set ( 'cards' , cards ) ;
44
+ page . render ( hbs `{{donation/donation-container donate=(action donateHandler) cards=cards}}` ) ;
45
+ assert . ok ( page . cardListIsRendered , 'credit card list is rendered' ) ;
46
+ assert . ok ( page . donateButtonRendered , 'donation button is rendered' ) ;
47
+ } ) ;
54
48
55
- stubService ( this , 'stripe' , {
56
- card : {
57
- validateCardNumber : ( ) => true ,
58
- validateCVC : ( ) => true ,
59
- validateExpiry : ( ) => true
60
- }
61
- } ) ;
49
+ test ( 'properly hides card list and donation button' , function ( assert ) {
50
+ assert . expect ( 3 ) ;
62
51
63
- setHandler ( this , 'donate' , donateHandler ) ;
52
+ this . set ( 'cards' , [ ] ) ;
53
+ page . render ( hbs `{{donation/donation-container donate=(action donateHandler) cards=cards}}` ) ;
54
+ assert . notOk ( page . cardListIsRendered , 'credit card list is rendered' ) ;
55
+ assert . ok ( page . creditCardIsRendered , 'Credit card component is rendered.' ) ;
56
+ assert . notOk ( page . donateButtonRendered , 'donation button is hidden' ) ;
57
+ } ) ;
64
58
65
- page . render ( hbs `{{donation/donation-container donate=(action donateHandler) donationAmount=amount projectTitle=projectTitle}}` ) ;
59
+ test ( 'properly hides card list' , function ( assert ) {
60
+ assert . expect ( 1 ) ;
66
61
67
- page . creditCard
68
- . cardNumber ( expectedProps . cardNumber )
69
- . cardMonth ( expectedProps . month )
70
- . cardYear ( expectedProps . year )
71
- . cardCVC ( expectedProps . cvc )
72
- . clickSubmit ( ) ;
62
+ this . set ( 'responseError' , { message : 'foo' } ) ;
63
+ page . render ( hbs `{{donation/donation-container donate=(action donateHandler) responseError=responseError}}` ) ;
64
+ assert . ok ( page . errorsRendered , 'response error is properly shown' ) ;
73
65
} ) ;
0 commit comments