meetup-web-mocks
Version:
Meetup Web Mocks
545 lines (511 loc) • 15.8 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
exports.getMockMemberList = getMockMemberList;
var MOCK_MEMBER = exports.MOCK_MEMBER = {
name: 'mocky mcmockerson',
id: 1243,
photo: {
photo_link: 'http://placekitten.com/g/400/400',
thumb_link: 'http://placekitten.com/g/200/200'
}
};
var MOCK_SELF = exports.MOCK_SELF = _extends({}, MOCK_MEMBER, { lang: 'en_US' });
var MOCK_SELF_FR = exports.MOCK_SELF_FR = _extends({}, MOCK_MEMBER, { lang: 'fr_FR' });
var MOCK_GROUP = exports.MOCK_GROUP = {
id: 1234,
urlname: 'fake-hq-faff',
organizer: {
id: 164510652,
name: 'Grayson Cheese',
bio: 'Org bio lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eu tellus sit amet erat blandit volutpat.',
photo: {
id: 257204155,
highres_link: 'http://photos1.dev.meetupstatic.com/photos/member/a/c/7/b/highres_257204155.jpeg',
photo_link: 'http://photos1.dev.meetupstatic.com/photos/member/a/c/7/b/member_257204155.jpeg',
thumb_link: 'http://photos1.dev.meetupstatic.com/photos/member/a/c/7/b/thumb_257204155.jpeg',
type: 'member',
base_url: 'http://photos1.dev.meetupstatic.com'
}
},
plain_text_description: 'Plain text description lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eu tellus sit amet erat blandit volutpat. Suspendisse tincidunt pulvinar vehicula. Mauris eget tristique mi. Ut tincidunt, ante eget aliquet eleifend, ligula lorem elementum felis, quis consectetur sapien justo ut eros. Maecenas tempus lacus metus, eu pretium massa convallis vitae. Donec id fringilla orci. Nunc eget elementum massa. Pellentesque pulvinar ipsum porta finibus laoreet. Donec pharetra quis nunc in auctor. Interdum et malesuada fames ac ante ipsum primis in faucibus. Suspendisse potenti. Nulla eget nibh quis nisi commodo accumsan. Donec sed suscipit justo. Aliquam erat volutpat. Nunc a nulla massa. Curabitur at elit eu neque congue fermentum',
key_photo: {
id: 1234,
photo_link: 'http://placekitten.com/400/300',
thumb_link: 'http://placekitten.com/400/300'
},
group_photo: {
id: 1234,
photo_link: 'http://placekitten.com/400/300',
thumb_link: 'http://placekitten.com/400/300'
},
name: 'fake HQ FAFF',
link: 'http://example.com/fake-hq-faff',
who: 'Faffers',
members: 999,
event_sample: [{
id: 1234,
name: 'Sample event',
time: 1515625071128,
yes_rsvp_count: 50
}],
timezone: 'Europe/London'
};
/* Updated shape for members list re-platform */
var MOCK_MEMBER_LIST_MEMBER = exports.MOCK_MEMBER_LIST_MEMBER = {
name: 'Thomas Shelby',
last_visited: '2018-10-12T15:15:35.000Z',
joined: '2017-03-20T11:07:29.000Z',
id: '1',
self: {
actions: ['message']
},
status: 'active',
photo: {
id: '255539096',
thumb_link: 'https://static.spin.com/files/2016/07/cillian-murphy-peaky-blinders-loves-radiohead-interview-640x426.jpg'
},
role: 'coorganizer',
dues: {
status: 'paid',
paid_end_date: '2020-03-20T11:07:29.000Z'
}
};
var MOCK_MEMBER_LIST_MEMBER_2 = exports.MOCK_MEMBER_LIST_MEMBER_2 = _extends({}, MOCK_MEMBER_LIST_MEMBER, {
name: 'Arthur Shelby',
last_visited: '2017-10-12T15:15:35.000Z',
joined: '2016-03-20T11:07:29.000Z',
id: '12',
photo: {
id: '458585',
thumb_link: 'https://ichef.bbci.co.uk/images/ic/480xn/p05mk5c6.jpg'
},
dues: {
status: 'exempt'
},
role: null
});
var MOCK_MEMBER_LIST_MEMBER_3 = exports.MOCK_MEMBER_LIST_MEMBER_3 = _extends({}, MOCK_MEMBER_LIST_MEMBER, {
name: 'John Shelby',
last_visited: '2017-12-12T15:15:35.000Z',
joined: '2016-06-20T11:07:29.000Z',
id: '123',
photo: {
id: '992929',
thumb_link: 'https://vignette.wikia.nocookie.net/peaky-blinders/images/f/f0/John2.jpg/revision/latest?cb=20171102225430'
},
dues: {
status: 'trial',
trial_end_date: '2019-03-20T11:07:29.000Z'
},
role: null
});
var MOCK_MEMBER_LIST_MEMBER_4 = exports.MOCK_MEMBER_LIST_MEMBER_4 = _extends({}, MOCK_MEMBER_LIST_MEMBER, {
name: 'Polly Grey',
last_visited: '2017-12-12T15:15:35.000Z',
joined: '2016-06-20T11:07:29.000Z',
id: '1234',
photo: {
id: '12222',
thumb_link: 'https://ichef.bbci.co.uk/images/ic/480xn/p01g4m2n.jpg'
},
dues: {
status: 'unpaid'
},
role: 'event_organizer'
});
var MOCK_MEMBER_LIST_MEMBER_5 = exports.MOCK_MEMBER_LIST_MEMBER_5 = _extends({}, MOCK_MEMBER_LIST_MEMBER, {
name: 'Alfie Solomons',
last_visited: null,
joined: null,
id: '12345',
photo: {
id: '124124',
thumb_link: 'https://i.pinimg.com/originals/e7/70/73/e770734b59f8184f08565214c170bf53.jpg'
},
role: null,
dues: null,
status: 'banned'
});
var MOCK_MEMBER_LIST_MEMBER_6 = exports.MOCK_MEMBER_LIST_MEMBER_6 = _extends({}, MOCK_MEMBER_LIST_MEMBER, {
name: 'Ada Shelby',
last_visited: null,
joined: null,
id: '123456',
photo: {
id: '124124',
thumb_link: 'https://ichef.bbci.co.uk/images/ic/480xn/p05mk5w9.jpg'
},
role: null,
dues: null,
status: 'pending'
});
var MOCK_MEMBERS_LIST_ALL = exports.MOCK_MEMBERS_LIST_ALL = [MOCK_MEMBER_LIST_MEMBER, MOCK_MEMBER_LIST_MEMBER_2, MOCK_MEMBER_LIST_MEMBER_3, MOCK_MEMBER_LIST_MEMBER_4];
var MOCK_MEMBERS_LIST_LEADERSHIP = exports.MOCK_MEMBERS_LIST_LEADERSHIP = [MOCK_MEMBER_LIST_MEMBER, MOCK_MEMBER_LIST_MEMBER_4];
var MOCK_MEMBERS_LIST_PENDING = exports.MOCK_MEMBERS_LIST_PENDING = [MOCK_MEMBER_LIST_MEMBER_6];
var MOCK_MEMBERS_LIST_BANNED = exports.MOCK_MEMBERS_LIST_BANNED = [MOCK_MEMBER_LIST_MEMBER_5];
function getMockMemberList(selectedFilter) {
if (selectedFilter === 'all') {
return MOCK_MEMBERS_LIST_ALL;
}
if (selectedFilter === 'leaders') {
return MOCK_MEMBERS_LIST_LEADERSHIP;
}
if (selectedFilter === 'pending') {
return MOCK_MEMBERS_LIST_PENDING;
}
return MOCK_MEMBERS_LIST_BANNED;
}
var MOCK_CHAPTER_MEMBER = exports.MOCK_CHAPTER_MEMBER = {
id: 82159492,
name: 'Grayson Cheese',
status: 'active',
joined: 1361806241000,
city: 'new york',
country: 'us',
lat: 40,
lon: -72,
photo: {
photo_link: 'http://placekitten.com/g/400/400'
},
group_profile: {
status: 'active',
visited: 1396285003000,
created: 1395768492000,
updated: 1478880527000,
group: MOCK_GROUP,
intro: 'cheese is the best!'
}
};
var MOCK_CHAPTER_MEMBER_2 = exports.MOCK_CHAPTER_MEMBER_2 = {
id: 234322,
name: 'Chesterton Gordidason',
status: 'active',
joined: 1361806241020,
city: 'new york',
country: 'us',
lat: 40,
lon: -72,
photo: {
photo_link: 'http://placekitten.com/g/400/400'
},
group_profile: {
status: 'active',
visited: 1396285003000,
created: 1395768492000,
updated: 1478880527000,
group: MOCK_GROUP,
intro: 'cheese is the best!'
}
};
var MOCK_CHAPTER_MEMBER_3 = exports.MOCK_CHAPTER_MEMBER_3 = {
id: 23222,
name: 'Simon Cheddar',
status: 'active',
joined: 1361806541020,
city: 'new york',
country: 'us',
lat: 40,
lon: -72,
photo: {
photo_link: 'http://placekitten.com/g/400/400'
},
group_profile: {
status: 'active',
visited: 1396285003000,
created: 1395768492000,
updated: 1478880527000,
group: MOCK_GROUP,
intro: 'cheese is the best!'
}
};
var MOCK_VENUE = exports.MOCK_VENUE = {
address_1: 'address 1',
address_2: 'address 2',
address_3: 'address 3',
city: 'city name',
state: 'NY',
zip: '00000'
};
var MOCK_COMMENT = exports.MOCK_COMMENT = {
id: '1234',
comment: 'comment 1',
created: 1479838415,
like_count: 6,
member: MOCK_CHAPTER_MEMBER,
deleted: false,
visible: true,
updated: 1479838415,
utc_offset: -18000000,
self: {
liked: false,
actions: ['like', 'delete', 'flag_spam']
}
};
var MOCK_COMMENTS_LIST = exports.MOCK_COMMENTS_LIST = {
0: MOCK_COMMENT,
1: _extends({}, MOCK_COMMENT, {
id: '12345',
comment: 'comment 2, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam tincidunt facilisis dui ac tincidunt. Duis rutrum bibendum odio nec tincidunt. Suspendisse sagittis blandit venenatis.',
created: 1478879940,
like_count: 3,
self: {
liked: false,
actions: ['like', 'delete', 'flag_spam']
}
}),
2: _extends({}, MOCK_COMMENT, {
id: 21234,
comment: 'Morbi vel purus eu neque ultricies maximus. Nunc sollicitudin maximus justo sed fringilla.',
created: 1478879939,
like_count: 22,
self: {
liked: false,
actions: ['like', 'flag_spam']
}
}),
3: _extends({}, MOCK_COMMENT, {
id: 23423,
comment: 'Sed odio tortor, vulputate ut tincidunt vitae, dignissim eget felis.',
created: 1478879939,
like_count: 0,
self: {
liked: false,
actions: ['like', 'delete', 'flag_spam']
}
}),
4: _extends({}, MOCK_COMMENT, {
id: 234,
comment: 'Curabitur elit nisi, porta et elit non, efficitur sodales augue. Phasellus volutpat, lectus ac tempor laoreet, diam urna commodo lacus, eget bibendum risus augue a sem.',
created: 1478879939,
like_count: 0,
self: {
liked: false,
actions: ['like', 'delete', 'flag_spam']
}
})
};
var oneMonthAgo = new Date();
oneMonthAgo.setMonth(oneMonthAgo.getMonth() - 1);
var oneMonthFuture = new Date();
oneMonthFuture.setMonth(oneMonthFuture.getMonth() + 1);
var MOCK_EVENT = exports.MOCK_EVENT = {
id: '123456',
comment_count: 5,
created: oneMonthAgo.getTime(),
description: 'The coolest event in the world during which we will run and dance and sing\n\t<script>alert("bad time")</script>, \uD83D\uDE0A, <blink>what what<blink> this is getting\n\tlonger than it needs to be why am I still typing omg',
duration: 3600000,
name: 'So much fun',
rsvp_sample: [{
created: 1462833255609,
id: 1234,
member: MOCK_MEMBER,
updated: 1462833255610
}, {
created: 1462833255609,
id: 2345,
member: _extends({}, MOCK_MEMBER, { id: 8912894 }),
updated: 1462833255610
}, {
created: 1462833255609,
id: 3456,
member: _extends({}, MOCK_MEMBER, { id: 899828 }),
updated: 1462833255610
}],
venue: MOCK_VENUE,
how_to_find_us: 'how to find us',
event_hosts: [MOCK_CHAPTER_MEMBER, MOCK_CHAPTER_MEMBER_2, MOCK_CHAPTER_MEMBER_3],
fee: {
amount: 10,
currency: 'USD'
},
rsvpable: true,
group: MOCK_GROUP,
self: {
actions: ['rsvp'],
pay_status: 'none',
rsvp: {}
},
status: 'upcoming',
time: oneMonthFuture.getTime(),
utc_offset: 0,
visibility: 'public',
yes_rsvp_count: 23,
link: 'https://www.meetup.com/group/events/123456'
};
// Mock category sourced from https://www.meetup.com/meetup_api/docs/find/topic_categories/
var MOCK_CATEGORY = exports.MOCK_CATEGORY = {
id: 552,
shortname: 'movements',
name: 'Movements',
sort_name: 'Movements',
photo: {
id: 450131941,
highres_link: 'http://photos1.meetupstatic.com/photos/event/2/e/a/5/highres_450131941.jpeg',
photo_link: 'http://photos1.meetupstatic.com/photos/event/2/e/a/5/600_450131941.jpeg',
thumb_link: 'http://photos1.meetupstatic.com/photos/event/2/e/a/5/thumb_450131941.jpeg',
type: 'event',
base_url: 'http://photos1.meetupstatic.com'
},
category_ids: [4, 13],
best_topics: [{
id: 16645,
name: 'Volunteering',
urlkey: 'volunteering',
lang: 'en_US'
}]
};
var MOCK_CATEGORIES = exports.MOCK_CATEGORIES = [MOCK_CATEGORY];
var MOCK_EVENT_SCHEDULE_RESPONSE = exports.MOCK_EVENT_SCHEDULE_RESPONSE = {
ref: 'eventSchedule',
value: {
created: 1505337385000,
duration: 7200000,
id: 'cgpwfnywmbsb',
name: 'A Weekly Hike',
status: 'upcoming',
time: 1505430000000,
updated: 1505337385000,
utc_offset: -14400000,
waitlist_count: 0,
yes_rsvp_count: 0,
group: {
created: 1401198587000,
name: 'Managing Meetup',
id: 14705172,
join_mod: 'approval',
lat: 40.720001220703125,
lon: -74,
urlname: 'ManagingMeetup',
who: 'Managers',
localized_location: 'New York, NY',
region: 'en_US'
},
link: 'https://www.dev.meetup.com/ManagingMeetup/events/cgpwfnywmbsb/',
description: "<p>• What we'll do<br/>Hiking often! Mountains Forests all types of trails</p> <p>• What to bring<br/>Shoes and water</p>",
visibility: 'public_limited'
},
meta: {
server: 'ivy',
requestId: 'c0ae499a-a473-43c5-94f8-f457c66f6c05',
endpoint: 'ManagingMeetup/events/',
statusCode: 201
}
};
var MOCK_EVENT_SCHEDULE_RESPONSE_ERRORS = exports.MOCK_EVENT_SCHEDULE_RESPONSE_ERRORS = {
ref: 'eventSchedule',
value: {
errors: [{
code: 'name_error',
message: 'A title is required to post your Meetup',
field: 'name'
}]
},
error: 'Bad Request',
meta: {
server: 'ivy',
requestId: 'a6d2f9d3-9c98-416e-8f51-5753384c8de2',
endpoint: 'ManagingMeetup/events/',
statusCode: 400
}
};
/*
* Shallow mocks that don't include dynamic dates
* for ease of use with snapshots.
*/
var MOCK_SHALLOW_GROUP = exports.MOCK_SHALLOW_GROUP = {
id: MOCK_GROUP.id,
key_photo: MOCK_GROUP.key_photo,
name: MOCK_GROUP.name,
urlname: MOCK_GROUP.urlname,
members: MOCK_GROUP.members,
organizer: MOCK_GROUP.organizer,
link: MOCK_GROUP.link,
group_photo: MOCK_GROUP.group_photo,
plain_text_description: MOCK_GROUP.plain_text_description,
who: MOCK_GROUP.who,
timezone: MOCK_GROUP.timezone
};
var MOCK_TIME = exports.MOCK_TIME = 1508279299118;
var MOCK_SHALLOW_MEMBER = exports.MOCK_SHALLOW_MEMBER = { id: MOCK_CHAPTER_MEMBER.id };
var MOCK_SHALLOW_EVENT = exports.MOCK_SHALLOW_EVENT = {
id: '123456',
comment_count: 5,
created: MOCK_TIME,
description: 'The coolest event in the world during which we will run and dance and sing\n\t<script>alert("bad time")</script>, \uD83D\uDE0A, <blink>what what<blink> this is getting\n\tlonger than it needs to be why am I still typing omg',
duration: 3600000,
name: 'So much fun',
rsvp_sample: [{
created: 1462833255609,
id: 1234,
member: MOCK_SHALLOW_MEMBER,
updated: 1462833255610
}, {
created: 1462833255609,
id: 2345,
member: _extends({}, MOCK_SHALLOW_MEMBER, { id: 8912894 }),
updated: 1462833255610
}, {
created: 1462833255609,
id: 3456,
member: _extends({}, MOCK_SHALLOW_MEMBER, { id: 899828 }),
updated: 1462833255610
}],
venue: MOCK_VENUE,
how_to_find_us: 'how to find us',
event_hosts: [],
fee: {
amount: 10,
currency: 'USD'
},
rsvpable: true,
group: MOCK_SHALLOW_GROUP,
self: {
actions: ['rsvp'],
pay_status: 'none',
rsvp: {}
},
status: 'upcoming',
time: MOCK_TIME,
utc_offset: 0,
visibility: 'public',
yes_rsvp_count: 23
};
var MOCK_EVENTS = exports.MOCK_EVENTS = [_extends({}, MOCK_SHALLOW_EVENT, { id: '1111', status: 'upcoming' }), _extends({}, MOCK_SHALLOW_EVENT, { id: '2222', status: 'upcoming' }), _extends({}, MOCK_SHALLOW_EVENT, { id: '3333', status: 'upcoming' }), _extends({}, MOCK_SHALLOW_EVENT, { id: '4444', status: 'upcoming' })];
var MOCK_PAST_EVENTS = exports.MOCK_PAST_EVENTS = [_extends({}, MOCK_SHALLOW_EVENT, { id: '5555', status: 'past' }), _extends({}, MOCK_SHALLOW_EVENT, { id: '6666', status: 'past' }), _extends({}, MOCK_SHALLOW_EVENT, { id: '7777', status: 'past' }), _extends({}, MOCK_SHALLOW_EVENT, { id: '8888', status: 'past' })];
var UPCOMING_EVENT = exports.UPCOMING_EVENT = _extends({}, MOCK_EVENTS[0], { status: 'upcoming' });
var PROPOSED_EVENT = exports.PROPOSED_EVENT = _extends({}, MOCK_EVENTS[1], { status: 'proposed' });
var PAST_EVENT = exports.PAST_EVENT = _extends({}, MOCK_EVENTS[2], { status: 'past' });
var MOCK_FEEDBACK_SUMMARY_RESPONSE = exports.MOCK_FEEDBACK_SUMMARY_RESPONSE = {
eventId: '241470859',
summary: [{
questionId: 'wouldYouGo',
answers: [{
answerId: 'wouldYouGoYes',
value: 5
}, {
answerId: 'wouldYouGoNo',
value: 3
}]
}, {
questionId: 'whatsWorthwhile',
answers: [{
answerId: 'people',
value: 3
}, {
answerId: 'purpose',
value: 2
}]
}, {
questionId: 'whyNot',
answers: [{
answerId: 'hardToFind',
value: 2
}, {
answerId: 'badVenue',
value: 1
}]
}]
};