mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-17 06:37:23 +01:00
Fix mystery set award to new subscribers (#7586)
* fix(mystery): flip da sign * test(subscription): check mystery box
This commit is contained in:
@@ -9,8 +9,17 @@ describe('payments/index', () => {
|
|||||||
let user;
|
let user;
|
||||||
|
|
||||||
describe('#createSubscription', () => {
|
describe('#createSubscription', () => {
|
||||||
|
const MYSTERY_AWARD_COUNT = 2;
|
||||||
|
const MYSTERY_AWARD_UNIX_TIME = 1464725113000;
|
||||||
|
let fakeClock;
|
||||||
|
|
||||||
beforeEach(async () => {
|
beforeEach(async () => {
|
||||||
user = new User();
|
user = new User();
|
||||||
|
fakeClock = sinon.useFakeTimers(MYSTERY_AWARD_UNIX_TIME);
|
||||||
|
});
|
||||||
|
|
||||||
|
afterEach(() => {
|
||||||
|
fakeClock.restore();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('succeeds', async () => {
|
it('succeeds', async () => {
|
||||||
@@ -19,6 +28,12 @@ describe('payments/index', () => {
|
|||||||
await api.createSubscription(data);
|
await api.createSubscription(data);
|
||||||
expect(user.purchased.plan.planId).to.exist;
|
expect(user.purchased.plan.planId).to.exist;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('awards mystery items', async () => {
|
||||||
|
data = { user, sub: { key: 'basic_3mo' } };
|
||||||
|
await api.createSubscription(data);
|
||||||
|
expect(user.purchased.plan.mysteryItems.length).to.eql(MYSTERY_AWARD_COUNT);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('#cancelSubscription', () => {
|
describe('#cancelSubscription', () => {
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ function revealMysteryItems (user) {
|
|||||||
moment().isAfter(shared.content.mystery[item.mystery].start) &&
|
moment().isAfter(shared.content.mystery[item.mystery].start) &&
|
||||||
moment().isBefore(shared.content.mystery[item.mystery].end) &&
|
moment().isBefore(shared.content.mystery[item.mystery].end) &&
|
||||||
!user.items.gear.owned[item.key] &&
|
!user.items.gear.owned[item.key] &&
|
||||||
user.purchased.plan.mysteryItems.indexOf(item.key) !== -1
|
user.purchased.plan.mysteryItems.indexOf(item.key) === -1
|
||||||
) {
|
) {
|
||||||
user.purchased.plan.mysteryItems.push(item.key);
|
user.purchased.plan.mysteryItems.push(item.key);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user