spb/cancerindex
Public
TypeScript 97.2%
SQL 1.5%
CSS 0.6%
JavaScript 0.5%
1import { describe, expect, it } from 'vitest';2import { isQualifiedState, baseDiseaseLabel } from '../src/qualifiers.js';34describe('isQualifiedState', () => {5 it('flags stage / recurrence / resectability concepts', () => {6 for (const n of [7 'Stage IV Pancreatic Cancer AJCC v8',8 'Stage IIIA Lung Cancer AJCC v7',9 'Recurrent Glioblastoma',10 'Refractory Acute Myeloid Leukemia',11 'Relapsed Multiple Myeloma',12 'Unresectable Hepatocellular Carcinoma',13 'Locally Advanced Rectal Carcinoma',14 'Metastatic Breast Carcinoma',15 'Newly Diagnosed Glioblastoma',16 'Pancreatic Adenocarcinoma Stage II',17 'Bilateral Breast Carcinoma',18 'Recurrent Childhood Acute Lymphoblastic Leukemia',19 'Stage 4S Neuroblastoma',20 'Stage D Prostate Cancer',21 'Cervical Cancer FIGO 2023',22 ])23 expect(isQualifiedState(n), n).toBe(true);24 });25 it('keeps recognized diseases whose names start with a qualifier-like word', () => {26 for (const n of [27 'Anaplastic Astrocytoma',28 'Anaplastic Large Cell Lymphoma',29 'Undifferentiated Pleomorphic Sarcoma',30 'Invasive Breast Carcinoma',31 'Childhood Acute Lymphoblastic Leukemia',32 'Adult T-Cell Leukemia/Lymphoma',33 'Primary Myelofibrosis',34 'Primary Central Nervous System Lymphoma',35 'Therapy-Related Acute Myeloid Leukemia',36 'Triple-Negative Breast Carcinoma',37 'EGFR-Mutant Lung Adenocarcinoma',38 'KRAS G12C-Mutant Non-Small Cell Lung Carcinoma',39 'High Grade Serous Ovarian Carcinoma',40 'Low Grade Glioma',41 'Castration-Resistant Prostate Carcinoma',42 'Pancreatic Ductal Adenocarcinoma',43 'Glioblastoma',44 'Diffuse Large B-Cell Lymphoma',45 'Acute Myeloid Leukemia with NPM1 Mutation',46 'Secondary Acute Myeloid Leukemia',47 ])48 expect(isQualifiedState(n), n).toBe(false);49 });50});5152describe('baseDiseaseLabel', () => {53 it('strips stage and recurrence qualifiers', () => {54 expect(baseDiseaseLabel('Stage IV Pancreatic Cancer AJCC v8')).toBe('Pancreatic Cancer');55 expect(baseDiseaseLabel('Recurrent Metastatic Breast Carcinoma')).toBe('Breast Carcinoma');56 expect(baseDiseaseLabel('Glioblastoma')).toBe('Glioblastoma');57 });58});59