public function testXmlWithPlans() { $coupon = new Recurly_Coupon(); $coupon->coupon_code = 'fifteen-off'; $coupon->name = '$15 Off'; $coupon->discount_type = 'dollar'; $coupon->discount_in_cents->addCurrency('USD', 1500); $coupon->plan_codes = array('gold', 'monthly'); $coupon->invoice_description = 'Invoice description'; $this->assertEquals("<?xml version=\"1.0\"?>\n<coupon><coupon_code>fifteen-off</coupon_code><name>\$15 Off</name><discount_type>dollar</discount_type><discount_in_cents><USD>1500</USD></discount_in_cents><plan_codes><plan_code>gold</plan_code><plan_code>monthly</plan_code></plan_codes><invoice_description>Invoice description</invoice_description></coupon>\n", $coupon->xml()); }
protected function uri() { if (!empty($this->_href)) { return $this->getHref(); } else { return Recurly_Coupon::uriForCoupon($this->coupon_code); } }
public function testGenerate() { $this->client->addResponse('POST', '/coupons/fifteen-off/generate', 'unique_coupons/generate-201.xml'); $this->client->addResponse('GET', 'https://api.recurly.com/v2/coupons/fifteen-off/unique_coupon_codes?cursor=1234566890&per_page=20', 'unique_coupons/index-200.xml'); $coupon = new Recurly_Coupon(null, $this->client); $coupon->coupon_code = 'fifteen-off'; $coupons = $coupon->generate(10); $this->assertEquals(count($coupons), 10); }