RecurlySubscriptionUpdateTests.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. const { expect } = require('chai')
  2. const async = require('async')
  3. const User = require('./helpers/User')
  4. const RecurlySubscription = require('./helpers/RecurlySubscription')
  5. require('./helpers/MockV1Api')
  6. describe('Subscriptions', function() {
  7. describe('update', function() {
  8. beforeEach(function(done) {
  9. this.recurlyUser = new User()
  10. async.series(
  11. [
  12. cb => this.recurlyUser.ensureUserExists(cb),
  13. cb => {
  14. this.recurlySubscription = new RecurlySubscription({
  15. adminId: this.recurlyUser._id,
  16. account: {
  17. email: 'stale-recurly@email.com'
  18. }
  19. })
  20. this.recurlySubscription.ensureExists(cb)
  21. },
  22. cb => this.recurlyUser.login(cb)
  23. ],
  24. done
  25. )
  26. })
  27. it('updates the email address for the account', function(done) {
  28. let url = '/user/subscription/account/email'
  29. this.recurlyUser.request.post({ url }, (error, { statusCode }) => {
  30. if (error) {
  31. return done(error)
  32. }
  33. expect(statusCode).to.equal(200)
  34. // the actual email update is not tested as the mocked Recurly API
  35. // doesn't handle it
  36. done()
  37. })
  38. })
  39. })
  40. })