0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-03-25 02:31:59 -05:00

🐛 Fixed missing benefits from signup page

- tiers api structure changed how benefits data is returned
- transformation of tier benefits was missing a return
This commit is contained in:
Rishabh 2022-05-23 18:24:46 +05:30
parent 950cb73c1d
commit f529ad3df6
3 changed files with 36 additions and 4 deletions

View file

@ -732,7 +732,7 @@ function createYearlyPrice({tier, priceId}) {
}
function createBenefits({tier}) {
tier?.benefits?.map((benefit) => {
return tier?.benefits?.map((benefit) => {
return {
name: benefit
};

View file

@ -1,6 +1,6 @@
import {getCurrencySymbol, getFreeProduct, getMemberName, getMemberSubscription, getPriceFromSubscription, getPriceIdFromPageQuery, getSupportAddress, hasMultipleProducts, isActiveOffer, isInviteOnlySite, isPaidMember, isSameCurrency} from './helpers';
import {getCurrencySymbol, getFreeProduct, getMemberName, getMemberSubscription, getPriceFromSubscription, getPriceIdFromPageQuery, getSupportAddress, hasMultipleProducts, isActiveOffer, isInviteOnlySite, isPaidMember, isSameCurrency, transformApiTiersData} from './helpers';
import * as Fixtures from './fixtures-generator';
import {site as FixturesSite, member as FixtureMember, offer as FixtureOffer} from '../utils/test-fixtures';
import {site as FixturesSite, member as FixtureMember, offer as FixtureOffer, transformTierFixture as TransformFixtureTiers} from '../utils/test-fixtures';
import {isComplimentaryMember} from '../utils/helpers';
describe('Helpers - ', () => {
@ -236,4 +236,13 @@ describe('Helpers - ', () => {
expect(value).toBe(expectedPriceId);
});
});
describe('transformApiTiersData - ', () => {
test('can correctly transform tiers data ', () => {
const transformedTiers = transformApiTiersData({tiers: TransformFixtureTiers});
expect(transformedTiers[0].benefits).toHaveLength(2);
expect(transformedTiers[1].benefits).toHaveLength(3);
});
});
});

View file

@ -1,7 +1,30 @@
/* eslint-disable no-unused-vars*/
import {getFreeProduct, getMemberData, getOfferData, getPriceData, getProductData, getSiteData, getSubscriptionData, getTestSite} from './fixtures-generator';
const singleSiteTier = [
export const transformTierFixture = [
getFreeProduct({
name: 'Free',
description: 'Free tier description',
numOfBenefits: 2
})
,
getProductData({
name: 'Bronze',
// description: 'Access to all members articles',
description: '',
monthlyPrice: getPriceData({
interval: 'month',
amount: 700
}),
yearlyPrice: getPriceData({
interval: 'year',
amount: 7000
}),
numOfBenefits: 3
})
];
export const singleSiteTier = [
getFreeProduct({
name: 'Free',
description: 'Free tier description',