|
| 1 | +export interface DrugData { |
| 2 | + name: string |
| 3 | + isInjected: boolean |
| 4 | + hasTreatment: boolean |
| 5 | +} |
| 6 | + |
| 7 | +export const drugs: DrugData[] = [ |
| 8 | + { name: 'Amphetamines', isInjected: true, hasTreatment: false }, |
| 9 | + { name: 'Benzodiazepines', isInjected: true, hasTreatment: false }, |
| 10 | + { name: 'Cannabis', isInjected: false, hasTreatment: false }, |
| 11 | + { name: 'Cocaine hydrochloride', isInjected: true, hasTreatment: false }, |
| 12 | + { name: 'Crack or cocaine', isInjected: true, hasTreatment: false }, |
| 13 | + { name: 'Ecstasy (also known as MDMA)', isInjected: false, hasTreatment: false }, |
| 14 | + { name: 'Hallucinogenics', isInjected: false, hasTreatment: false }, |
| 15 | + { name: 'Heroin', isInjected: true, hasTreatment: true }, |
| 16 | + { name: 'Methadone (not prescribed)', isInjected: true, hasTreatment: false }, |
| 17 | + { name: 'Misused prescribed drugs', isInjected: true, hasTreatment: false }, |
| 18 | + { name: 'Other opiates', isInjected: true, hasTreatment: false }, |
| 19 | + { name: 'Solvents (including gases and glues)', isInjected: false, hasTreatment: false }, |
| 20 | + { name: 'Spice', isInjected: false, hasTreatment: false }, |
| 21 | + { name: 'Steroids', isInjected: true, hasTreatment: false }, |
| 22 | + { name: 'Other', isInjected: true, hasTreatment: false }, |
| 23 | +] |
| 24 | + |
| 25 | +const chunkSize = Math.ceil(drugs.length / 5) |
| 26 | +const chunks = Array.from({ length: 5 }, (_, i) => drugs.slice(i * chunkSize, (i + 1) * chunkSize)) |
| 27 | + |
| 28 | +export const drugsPart1 = chunks[0] |
| 29 | +export const drugsPart2 = chunks[1] |
| 30 | +export const drugsPart3 = chunks[2] |
| 31 | +export const drugsPart4 = chunks[3] |
| 32 | +export const drugsPart5 = chunks[4] |
| 33 | + |
| 34 | +expect([drugsPart1, drugsPart2, drugsPart3, drugsPart4, drugsPart5].flat()).to.deep.eq( |
| 35 | + drugs, |
| 36 | + 'Data loss from array split', |
| 37 | +) |
0 commit comments