@@ -68,4 +68,73 @@ public function testGetLocaleCanReturnNull()
68
68
69
69
$ this ->assertNull ($ result );
70
70
}
71
+
72
+ public function generatesTheCorrectPaymentDescriptionProvider ()
73
+ {
74
+ return [
75
+ ['{storename} - {ordernumber} Order ' , 'Store Name - Default - 999 Order ' ],
76
+ ['{customerCompany} Order ' , 'Acme Company Order ' ],
77
+ ['{customerName} Order ' , 'John I. Doe Order ' ],
78
+ ];
79
+ }
80
+ /**
81
+ * @dataProvider generatesTheCorrectPaymentDescriptionProvider
82
+ */
83
+ public function testGeneratesTheCorrectPaymentDescription ($ description , $ expected )
84
+ {
85
+ Mage::app ()->getStore ()->setConfig ('payment/mollie_ideal/payment_description ' , $ description );
86
+
87
+ $ order = Mage::getModel ('sales/order ' );
88
+ $ order ->setIncrementId (999 );
89
+
90
+ $ address = Mage::getModel ('sales/quote_address ' );
91
+ $ address ->setAddressType ('billing ' );
92
+ $ address ->setCompany ('Acme Company ' );
93
+ $ address ->setFirstname ('John ' );
94
+ $ address ->setMiddlename ('I. ' );
95
+ $ address ->setLastname ('Doe ' );
96
+
97
+ $ addressList = $ order ->getAddressesCollection ();
98
+ $ addressList ->addItem ($ address );
99
+
100
+ /** @var Mollie_Mpm_Helper_Data $instance */
101
+ $ instance = Mage::helper ('mpm ' );
102
+ $ result = $ instance ->getPaymentDescription ('ideal ' , $ order );
103
+
104
+ $ this ->assertEquals ($ expected , $ result );
105
+ }
106
+ public function trimsTheCustomerNameCorrectProvider ()
107
+ {
108
+ return [
109
+ 'fullname ' => [['John ' , 'I. ' , 'Doe ' ], 'John I. Doe ' ],
110
+ 'no middlename ' => [['John ' , null , 'Doe ' ], 'John Doe ' ],
111
+ 'no middle and lastname ' => [['John ' , null , null ], 'John ' ],
112
+ 'only lastname ' => [[null , null , 'Doe ' ], 'Doe ' ],
113
+ ];
114
+ }
115
+ /**
116
+ * @dataProvider trimsTheCustomerNameCorrectProvider
117
+ */
118
+ public function testTrimsTheCustomerNameCorrect ($ names , $ expected )
119
+ {
120
+ Mage::app ()->getStore ()->setConfig ('payment/mollie_ideal/payment_description ' , '{customerName} ' );
121
+
122
+ $ order = Mage::getModel ('sales/order ' );
123
+ $ order ->setIncrementId (999 );
124
+
125
+ $ address = Mage::getModel ('sales/quote_address ' );
126
+ $ address ->setAddressType ('billing ' );
127
+ $ address ->setFirstname ($ names [0 ]);
128
+ $ address ->setMiddlename ($ names [1 ]);
129
+ $ address ->setLastname ($ names [2 ]);
130
+
131
+ $ addressList = $ order ->getAddressesCollection ();
132
+ $ addressList ->addItem ($ address );
133
+
134
+ /** @var Mollie_Mpm_Helper_Data $instance */
135
+ $ instance = Mage::helper ('mpm ' );
136
+ $ result = $ instance ->getPaymentDescription ('ideal ' , $ order );
137
+
138
+ $ this ->assertEquals ($ expected , $ result );
139
+ }
71
140
}
0 commit comments