From 2d3c805fb9023459776367c86d8522f983f06e37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=A5=E6=B5=A9?= Date: Tue, 15 Jul 2025 23:34:03 +0800 Subject: [PATCH] Real-US-Address-Generator --- src/index.js | 816 ++++++++++++++++++++++++++++++++++++++++++++- test/index.spec.js | 10 +- 2 files changed, 816 insertions(+), 10 deletions(-) diff --git a/src/index.js b/src/index.js index de66b62..c62d02b 100644 --- a/src/index.js +++ b/src/index.js @@ -1,15 +1,815 @@ /** - * Welcome to Cloudflare Workers! This is your first worker. - * - * - Run `npm run dev` in your terminal to start a development server - * - Open a browser tab at http://localhost:8787/ to see your worker in action - * - Run `npm run deploy` to publish your worker - * - * Learn more at https://developers.cloudflare.com/workers/ + * https://github.com/chatgptuk/Real-US-Address-Generator/blob/main/worker.js + * https://us.chatgpt.org.uk/ + * pnpm create cloudflare@latest real-us-address-generator-api + * http://localhost:8787/ */ +// addEventListener('fetch', (event) => { +// event.respondWith(handleRequest(event.request)); +// }); export default { async fetch(request, env, ctx) { - return new Response('Hello World!'); + return handleRequest(request); }, }; + +async function handleRequest(request) { + const { searchParams } = new URL(request.url); + const state = searchParams.get('state') || getRandomState(); + let address, name, gender, phone, country; + + const remoteProvinces = ['NL', 'NT', 'NU', 'YT']; // Remote Canadian Provinces/Territories + + for (let i = 0; i < 20; i++) { + // Try up to 20 times to get a detailed address + const location = getRandomLocationInState(state); + const apiUrl = `https://nominatim.openstreetmap.org/reverse?format=json&lat=${location.lat}&lon=${location.lng}&zoom=18&addressdetails=1`; + + const response = await fetch(apiUrl, { + headers: { 'User-Agent': 'Cloudflare Worker' }, + }); + const data = await response.json(); + + if (data && data.address) { + if (data.address.country_code === 'us') { + if (data.address.house_number && data.address.road && data.address.city) { + country = 'US'; + address = formatAddress(data.address, state, country); + break; + } + } else if (data.address.country_code === 'ca') { + if (remoteProvinces.includes(state)) { + // For remote provinces, allow partial addresses + country = 'CA'; + address = formatAddress(data.address, state, country); + break; + } else { + // For other provinces, require detailed address + if (data.address.house_number && data.address.road && data.address.city) { + country = 'CA'; + address = formatAddress(data.address, state, country); + break; + } + } + } + } + } + + if (!address) { + return new Response('Failed to retrieve detailed address', { status: 500 }); + } + + const userResp = await fetch('https://fakerapi.it/api/v1/persons?_quantity=1&_locale=en_US'); + const userJson = await userResp.json(); + if (userJson && userJson.data && userJson.data.length > 0) { + const user = userJson.data[0]; + name = `${user.firstname} ${user.lastname}`; + gender = user.gender.charAt(0).toUpperCase() + user.gender.slice(1); + phone = getRandomPhoneNumber(country, state); + } else { + name = getRandomName(); + gender = 'Unknown'; + phone = getRandomPhoneNumber(country, state); + } + + const html = ` + + + + Real US & Canadian Address Generator + + + + +
Real US & Canadian Address Generator
+
+
Copied!
+
${name}
+
${gender}
+
${phone}
+
${address}
+ +
+ + +
+ +
+ + + + + `; + + return new Response(html, { + headers: { 'content-type': 'text/html;charset=UTF-8' }, + }); +} + +function getRandomLocationInState(state) { + const stateCoordinates = { + // US States + AL: [ + { lat: 32.377716, lng: -86.300568 }, + { lat: 33.520661, lng: -86.80249 }, + ], + AK: [ + { lat: 61.216583, lng: -149.899597 }, + { lat: 58.301598, lng: -134.419998 }, + ], + AZ: [ + { lat: 33.448376, lng: -112.074036 }, + { lat: 34.048927, lng: -111.093735 }, + ], + AR: [ + { lat: 34.746483, lng: -92.289597 }, + { lat: 36.082157, lng: -94.171852 }, + ], + CA: [ + { lat: 36.778259, lng: -119.417931 }, + { lat: 34.052235, lng: -118.243683 }, + ], + CO: [ + { lat: 39.739235, lng: -104.99025 }, + { lat: 38.833881, lng: -104.821365 }, + ], + CT: [ + { lat: 41.76371, lng: -72.685097 }, + { lat: 41.308273, lng: -72.927887 }, + ], + DE: [ + { lat: 39.739072, lng: -75.539787 }, + { lat: 38.774055, lng: -75.139351 }, + ], + FL: [ + { lat: 30.332184, lng: -81.655647 }, + { lat: 25.761681, lng: -80.191788 }, + ], + GA: [ + { lat: 33.749001, lng: -84.387985 }, + { lat: 32.083541, lng: -81.099831 }, + ], + HI: [ + { lat: 21.306944, lng: -157.858337 }, + { lat: 19.896767, lng: -155.582779 }, + ], + ID: [ + { lat: 43.615021, lng: -116.202316 }, + { lat: 47.677683, lng: -116.780466 }, + ], + IL: [ + { lat: 41.878113, lng: -87.629799 }, + { lat: 40.633125, lng: -89.398529 }, + ], + IN: [ + { lat: 39.768402, lng: -86.158066 }, + { lat: 41.593369, lng: -87.346427 }, + ], + IA: [ + { lat: 41.586834, lng: -93.625 }, + { lat: 42.5, lng: -94.166672 }, + ], + KS: [ + { lat: 39.099728, lng: -94.578568 }, + { lat: 37.687176, lng: -97.330055 }, + ], + KY: [ + { lat: 38.252666, lng: -85.758453 }, + { lat: 37.839333, lng: -84.27002 }, + ], + LA: [ + { lat: 30.695366, lng: -91.187393 }, + { lat: 29.951065, lng: -90.071533 }, + ], + ME: [ + { lat: 44.310623, lng: -69.77949 }, + { lat: 43.661471, lng: -70.255325 }, + ], + MD: [ + { lat: 38.978447, lng: -76.49218 }, + { lat: 39.290386, lng: -76.61219 }, + ], + MA: [ + { lat: 42.360081, lng: -71.058884 }, + { lat: 42.313373, lng: -71.057083 }, + ], + MI: [ + { lat: 42.732536, lng: -84.555534 }, + { lat: 42.331429, lng: -83.045753 }, + ], + MN: [ + { lat: 44.953703, lng: -93.089958 }, + { lat: 44.977753, lng: -93.265015 }, + ], + MS: [ + { lat: 32.298756, lng: -90.184807 }, + { lat: 32.366806, lng: -88.703705 }, + ], + MO: [ + { lat: 38.576702, lng: -92.173516 }, + { lat: 38.627003, lng: -90.199402 }, + ], + MT: [ + { lat: 46.878717, lng: -113.996586 }, + { lat: 45.783287, lng: -108.50069 }, + ], + NE: [ + { lat: 41.256538, lng: -95.934502 }, + { lat: 40.813618, lng: -96.702595 }, + ], + NV: [ + { lat: 39.163914, lng: -119.767403 }, + { lat: 36.114647, lng: -115.172813 }, + ], + NH: [ + { lat: 43.208137, lng: -71.538063 }, + { lat: 42.99564, lng: -71.454789 }, + ], + NJ: [ + { lat: 40.058323, lng: -74.405663 }, + { lat: 39.364285, lng: -74.422928 }, + ], + NM: [ + { lat: 35.084385, lng: -106.650421 }, + { lat: 32.319939, lng: -106.763653 }, + ], + NY: [ + { lat: 40.712776, lng: -74.005974 }, + { lat: 43.299427, lng: -74.217933 }, + ], + NC: [ + { lat: 35.779591, lng: -78.638176 }, + { lat: 35.227085, lng: -80.843124 }, + ], + ND: [ + { lat: 46.825905, lng: -100.778275 }, + { lat: 46.877186, lng: -96.789803 }, + ], + OH: [ + { lat: 39.961178, lng: -82.998795 }, + { lat: 41.499321, lng: -81.694359 }, + ], + OK: [ + { lat: 35.46756, lng: -97.516426 }, + { lat: 36.15398, lng: -95.992775 }, + ], + OR: [ + { lat: 44.046236, lng: -123.022029 }, + { lat: 45.505917, lng: -122.675049 }, + ], + PA: [ + { lat: 40.273191, lng: -76.886701 }, + { lat: 39.952583, lng: -75.165222 }, + ], + RI: [ + { lat: 41.824009, lng: -71.412834 }, + { lat: 41.580095, lng: -71.477429 }, + ], + SC: [ + { lat: 34.00071, lng: -81.034814 }, + { lat: 32.776474, lng: -79.931051 }, + ], + SD: [ + { lat: 44.366787, lng: -100.35376 }, + { lat: 43.544595, lng: -96.731103 }, + ], + TN: [ + { lat: 36.162663, lng: -86.781601 }, + { lat: 35.149532, lng: -90.048981 }, + ], + TX: [ + { lat: 30.267153, lng: -97.743057 }, + { lat: 29.760427, lng: -95.369804 }, + ], + UT: [ + { lat: 40.76078, lng: -111.891045 }, + { lat: 37.774929, lng: -111.920414 }, + ], + VT: [ + { lat: 44.260059, lng: -72.575386 }, + { lat: 44.475883, lng: -73.212074 }, + ], + VA: [ + { lat: 37.540726, lng: -77.43605 }, + { lat: 36.852924, lng: -75.977982 }, + ], + WA: [ + { lat: 47.606209, lng: -122.332069 }, + { lat: 47.252876, lng: -122.44429 }, + ], + WV: [ + { lat: 38.34982, lng: -81.632622 }, + { lat: 39.629527, lng: -79.955896 }, + ], + WI: [ + { lat: 43.073051, lng: -89.40123 }, + { lat: 43.038902, lng: -87.906471 }, + ], + WY: [ + { lat: 41.140259, lng: -104.820236 }, + { lat: 44.276569, lng: -105.507391 }, + ], + // Canadian Provinces and Territories + AB: [ + { lat: 51.044733, lng: -114.071883 }, + { lat: 53.546124, lng: -113.493823 }, + ], + BC: [ + { lat: 49.282729, lng: -123.120738 }, + { lat: 48.428421, lng: -123.365644 }, + ], + MB: [ + { lat: 49.895137, lng: -97.138374 }, + { lat: 50.445211, lng: -96.823611 }, + ], + NB: [ + { lat: 45.963589, lng: -66.643115 }, + { lat: 46.510712, lng: -67.255044 }, + ], + NL: [ + { lat: 53.135509, lng: -57.660435 }, + { lat: 50.445211, lng: -57.1 }, + ], + NS: [ + { lat: 44.648862, lng: -63.57532 }, + { lat: 45.010474, lng: -63.416817 }, + ], + ON: [ + { lat: 51.253775, lng: -85.323214 }, + { lat: 43.653225, lng: -79.383186 }, + ], + PE: [ + { lat: 46.23824, lng: -63.131074 }, + { lat: 46.492424, lng: -63.793013 }, + ], + QC: [ + { lat: 46.813878, lng: -71.20798 }, + { lat: 45.501689, lng: -73.567256 }, + ], + SK: [ + { lat: 52.939915, lng: -106.450863 }, + { lat: 50.445211, lng: -104.618896 }, + ], + NT: [ + { lat: 64.825544, lng: -115.82534 }, + { lat: 61.251955, lng: -114.352482 }, + ], + NU: [ + { lat: 64.282327, lng: -76.614813 }, + { lat: 70.299598, lng: -83.107562 }, + ], + YT: [ + { lat: 64.282327, lng: -135.0 }, + { lat: 64.0, lng: -138.0 }, + ], + }; + const coordsArray = stateCoordinates[state]; + if (!coordsArray) { + // Fallback to a default location if state/province not found + return { lat: 39.8283, lng: -98.5795 }; // Geographic center of the contiguous US + } + const randomCity = coordsArray[Math.floor(Math.random() * coordsArray.length)]; + const lat = randomCity.lat + (Math.random() - 0.5) * 0.1; // Smaller random offset + const lng = randomCity.lng + (Math.random() - 0.5) * 0.1; + return { lat, lng }; +} + +function formatAddress(address, state, country) { + const stateAbbreviations = { + // US States + Alabama: 'AL', + Alaska: 'AK', + Arizona: 'AZ', + Arkansas: 'AR', + California: 'CA', + Colorado: 'CO', + Connecticut: 'CT', + Delaware: 'DE', + Florida: 'FL', + Georgia: 'GA', + Hawaii: 'HI', + Idaho: 'ID', + Illinois: 'IL', + Indiana: 'IN', + Iowa: 'IA', + Kansas: 'KS', + Kentucky: 'KY', + Louisiana: 'LA', + Maine: 'ME', + Maryland: 'MD', + Massachusetts: 'MA', + Michigan: 'MI', + Minnesota: 'MN', + Mississippi: 'MS', + Missouri: 'MO', + Montana: 'MT', + Nebraska: 'NE', + Nevada: 'NV', + 'New Hampshire': 'NH', + 'New Jersey': 'NJ', + 'New Mexico': 'NM', + 'New York': 'NY', + 'North Carolina': 'NC', + 'North Dakota': 'ND', + Ohio: 'OH', + Oklahoma: 'OK', + Oregon: 'OR', + Pennsylvania: 'PA', + 'Rhode Island': 'RI', + 'South Carolina': 'SC', + 'South Dakota': 'SD', + Tennessee: 'TN', + Texas: 'TX', + Utah: 'UT', + Vermont: 'VT', + Virginia: 'VA', + Washington: 'WA', + 'West Virginia': 'WV', + Wisconsin: 'WI', + Wyoming: 'WY', + // Canadian Provinces and Territories + Alberta: 'AB', + 'British Columbia': 'BC', + Manitoba: 'MB', + 'New Brunswick': 'NB', + 'Newfoundland and Labrador': 'NL', + 'Nova Scotia': 'NS', + Ontario: 'ON', + 'Prince Edward Island': 'PE', + Quebec: 'QC', + Saskatchewan: 'SK', + 'Northwest Territories': 'NT', + Nunavut: 'NU', + Yukon: 'YT', + }; + const stateAbbr = stateAbbreviations[address.state] || state; + let formattedAddress = ''; + + if (address.house_number && address.road && address.city) { + if (country === 'US') { + formattedAddress = `${address.house_number} ${address.road}, ${address.city}, ${stateAbbr} ${address.postcode}, United States`; + } else if (country === 'CA') { + formattedAddress = `${address.house_number} ${address.road}, ${address.city}, ${stateAbbr} ${address.postcode}, Canada`; + } + } else { + // For partial addresses in remote provinces + formattedAddress = `${address.city}, ${stateAbbr} ${address.postcode}, ${country === 'US' ? 'United States' : 'Canada'}`; + } + + return formattedAddress; +} + +function getRandomPhoneNumber(country, state) { + const areaCodesUS = { + AL: ['205', '251', '256', '334', '938'], + AK: ['907'], + AZ: ['480', '520', '602', '623', '928'], + AR: ['479', '501', '870'], + CA: [ + '209', + '213', + '310', + '323', + '408', + '415', + '424', + '510', + '530', + '559', + '562', + '619', + '626', + '650', + '661', + '707', + '714', + '760', + '805', + '818', + '831', + '858', + '909', + '916', + '925', + '949', + ], + CO: ['303', '719', '720', '970'], + CT: ['203', '475', '860', '959'], + DE: ['302'], + FL: ['239', '305', '321', '352', '386', '407', '561', '727', '754', '772', '786', '813', '850', '863', '904', '941', '954'], + GA: ['229', '404', '470', '478', '678', '706', '762', '770', '912'], + HI: ['808'], + ID: ['208', '986'], + IL: ['217', '224', '309', '312', '331', '618', '630', '708', '773', '779', '815', '847', '872'], + IN: ['219', '260', '317', '463', '574', '765', '812', '930'], + IA: ['319', '515', '563', '641', '712'], + KS: ['316', '620', '785', '913'], + KY: ['270', '364', '502', '606', '859'], + LA: ['225', '318', '337', '504', '985'], + ME: ['207'], + MD: ['240', '301', '410', '443', '667'], + MA: ['339', '351', '413', '508', '617', '774', '781', '857', '978'], + MI: ['231', '248', '269', '313', '517', '586', '616', '734', '810', '906', '947', '989'], + MN: ['218', '320', '507', '612', '651', '763', '952'], + MS: ['228', '601', '662', '769'], + MO: ['314', '417', '573', '636', '660', '816', '975'], + MT: ['406'], + NE: ['308', '402', '531'], + NV: ['702', '725', '775'], + NH: ['603'], + NJ: ['201', '551', '609', '732', '848', '856', '862', '908', '973'], + NM: ['505', '575'], + NY: [ + '212', + '315', + '332', + '347', + '516', + '518', + '585', + '607', + '631', + '646', + '680', + '716', + '718', + '838', + '845', + '914', + '917', + '929', + '934', + ], + NC: ['252', '336', '704', '743', '828', '910', '919', '980', '984'], + ND: ['701'], + OH: ['216', '234', '283', '330', '380', '419', '440', '513', '567', '614', '740', '937'], + OK: ['405', '539', '580', '918'], + OR: ['458', '503', '541', '971'], + PA: ['215', '267', '272', '412', '484', '570', '610', '717', '724', '814', '835', '878'], + RI: ['401'], + SC: ['803', '839', '843', '854', '864'], + SD: ['605'], + TN: ['423', '615', '629', '731', '865', '901', '931'], + TX: [ + '210', + '214', + '254', + '281', + '325', + '346', + '409', + '430', + '432', + '469', + '512', + '682', + '713', + '737', + '806', + '817', + '830', + '832', + '903', + '915', + '936', + '940', + '956', + '972', + '979', + ], + UT: ['385', '435', '801'], + VT: ['802'], + VA: ['276', '434', '540', '571', '703', '757', '804'], + WA: ['206', '253', '360', '425', '509'], + WV: ['304', '681'], + WI: ['262', '414', '534', '608', '715', '920'], + WY: ['307'], + }; + + const areaCodesCanada = { + AB: ['403', '587', '825'], + BC: ['236', '250', '604', '672', '778'], + MB: ['204', '431'], + NB: ['506'], + NL: ['709'], + NS: ['782', '902'], + ON: ['226', '249', '289', '343', '365', '416', '437', '519', '548', '613', '639', '647', '705', '807', '905'], + PE: ['902'], + QC: ['418', '438', '450', '514', '579', '581', '819', '873'], + SK: ['306', '639'], + NT: ['867'], + NU: ['867'], + YT: ['867'], + }; + + let areaCodeList = []; + if (country === 'US') { + areaCodeList = areaCodesUS[state] || ['000']; + } else if (country === 'CA') { + areaCodeList = areaCodesCanada[state] || ['000']; + } + const areaCode = areaCodeList[Math.floor(Math.random() * areaCodeList.length)]; + const exchangeCode = Math.floor(200 + Math.random() * 700) + .toString() + .padStart(3, '0'); + const lineNumber = Math.floor(1000 + Math.random() * 9000) + .toString() + .padStart(4, '0'); + return `(${areaCode}) ${exchangeCode}-${lineNumber}`; +} + +function getRandomState() { + const states = [ + // US States + "AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "FL", "GA", + "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", + "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", + "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", + "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", + "VT", "VA", "WA", "WV", "WI", "WY", + // Canadian Provinces and Territories + "AB", "BC", "MB", "NB", "NL", "NS", "ON", "PE", "QC", "SK", + "NT", "NU", "YT" + ] + return states[Math.floor(Math.random() * states.length)]; +} + +function getStateOptions(selectedState) { + const states = [ + // US States + { full: 'Alabama', abbr: 'AL', country: 'US' }, + { full: 'Alaska', abbr: 'AK', country: 'US' }, + { full: 'Arizona', abbr: 'AZ', country: 'US' }, + { full: 'Arkansas', abbr: 'AR', country: 'US' }, + { full: 'California', abbr: 'CA', country: 'US' }, + { full: 'Colorado', abbr: 'CO', country: 'US' }, + { full: 'Connecticut', abbr: 'CT', country: 'US' }, + { full: 'Delaware', abbr: 'DE', country: 'US' }, + { full: 'Florida', abbr: 'FL', country: 'US' }, + { full: 'Georgia', abbr: 'GA', country: 'US' }, + { full: 'Hawaii', abbr: 'HI', country: 'US' }, + { full: 'Idaho', abbr: 'ID', country: 'US' }, + { full: 'Illinois', abbr: 'IL', country: 'US' }, + { full: 'Indiana', abbr: 'IN', country: 'US' }, + { full: 'Iowa', abbr: 'IA', country: 'US' }, + { full: 'Kansas', abbr: 'KS', country: 'US' }, + { full: 'Kentucky', abbr: 'KY', country: 'US' }, + { full: 'Louisiana', abbr: 'LA', country: 'US' }, + { full: 'Maine', abbr: 'ME', country: 'US' }, + { full: 'Maryland', abbr: 'MD', country: 'US' }, + { full: 'Massachusetts', abbr: 'MA', country: 'US' }, + { full: 'Michigan', abbr: 'MI', country: 'US' }, + { full: 'Minnesota', abbr: 'MN', country: 'US' }, + { full: 'Mississippi', abbr: 'MS', country: 'US' }, + { full: 'Missouri', abbr: 'MO', country: 'US' }, + { full: 'Montana', abbr: 'MT', country: 'US' }, + { full: 'Nebraska', abbr: 'NE', country: 'US' }, + { full: 'Nevada', abbr: 'NV', country: 'US' }, + { full: 'New Hampshire', abbr: 'NH', country: 'US' }, + { full: 'New Jersey', abbr: 'NJ', country: 'US' }, + { full: 'New Mexico', abbr: 'NM', country: 'US' }, + { full: 'New York', abbr: 'NY', country: 'US' }, + { full: 'North Carolina', abbr: 'NC', country: 'US' }, + { full: 'North Dakota', abbr: 'ND', country: 'US' }, + { full: 'Ohio', abbr: 'OH', country: 'US' }, + { full: 'Oklahoma', abbr: 'OK', country: 'US' }, + { full: 'Oregon', abbr: 'OR', country: 'US' }, + { full: 'Pennsylvania', abbr: 'PA', country: 'US' }, + { full: 'Rhode Island', abbr: 'RI', country: 'US' }, + { full: 'South Carolina', abbr: 'SC', country: 'US' }, + { full: 'South Dakota', abbr: 'SD', country: 'US' }, + { full: 'Tennessee', abbr: 'TN', country: 'US' }, + { full: 'Texas', abbr: 'TX', country: 'US' }, + { full: 'Utah', abbr: 'UT', country: 'US' }, + { full: 'Vermont', abbr: 'VT', country: 'US' }, + { full: 'Virginia', abbr: 'VA', country: 'US' }, + { full: 'Washington', abbr: 'WA', country: 'US' }, + { full: 'West Virginia', abbr: 'WV', country: 'US' }, + { full: 'Wisconsin', abbr: 'WI', country: 'US' }, + { full: 'Wyoming', abbr: 'WY', country: 'US' }, + // Canadian Provinces and Territories + { full: 'Alberta', abbr: 'AB', country: 'CA' }, + { full: 'British Columbia', abbr: 'BC', country: 'CA' }, + { full: 'Manitoba', abbr: 'MB', country: 'CA' }, + { full: 'New Brunswick', abbr: 'NB', country: 'CA' }, + { full: 'Newfoundland and Labrador', abbr: 'NL', country: 'CA' }, + { full: 'Nova Scotia', abbr: 'NS', country: 'CA' }, + { full: 'Ontario', abbr: 'ON', country: 'CA' }, + { full: 'Prince Edward Island', abbr: 'PE', country: 'CA' }, + { full: 'Quebec', abbr: 'QC', country: 'CA' }, + { full: 'Saskatchewan', abbr: 'SK', country: 'CA' }, + { full: 'Northwest Territories', abbr: 'NT', country: 'CA' }, + { full: 'Nunavut', abbr: 'NU', country: 'CA' }, + { full: 'Yukon', abbr: 'YT', country: 'CA' }, + ]; + return states + .map( + (state) => + `` + ) + .join(''); +} + +function getRandomName() { + const firstNames = ['John', 'Jane', 'Alex', 'Emily', 'Chris', 'Katie', 'Mike', 'Laura', 'David', 'Sarah']; + const lastNames = ['Smith', 'Johnson', 'Brown', 'Williams', 'Jones', 'Garcia', 'Miller', 'Davis', 'Rodriguez', 'Martinez']; + const firstName = firstNames[Math.floor(Math.random() * firstNames.length)]; + const lastName = lastNames[Math.floor(Math.random() * lastNames.length)]; + return `${firstName} ${lastName}`; +} diff --git a/test/index.spec.js b/test/index.spec.js index e2807ff..b378a77 100644 --- a/test/index.spec.js +++ b/test/index.spec.js @@ -3,7 +3,7 @@ import { describe, it, expect } from 'vitest'; import worker from '../src'; describe('Hello World worker', () => { - it('responds with Hello World! (unit style)', async () => { + it.skip('responds with Hello World! (unit style)', async () => { const request = new Request('http://example.com'); // Create an empty context to pass to `worker.fetch()`. const ctx = createExecutionContext(); @@ -13,8 +13,14 @@ describe('Hello World worker', () => { expect(await response.text()).toMatchInlineSnapshot(`"Hello World!"`); }); - it('responds with Hello World! (integration style)', async () => { + it.skip('responds with Hello World! (integration style)', async () => { const response = await SELF.fetch('http://example.com'); expect(await response.text()).toMatchInlineSnapshot(`"Hello World!"`); }); + + it('_', async () => { + const response = await SELF.fetch('http://example.com'); + const responseText = await response.text(); + console.debug(`responseText :>> `, responseText); + }); });