Evitar raise del read_for_view cuando y_range="auto" está activado y no hay datos - #42
Conversation
giscebot
left a comment
There was a problem hiding this comment.
El canvi de producció és coherent: amb final_data buit manté yAxisOpts.mode = "auto", omet uns límits que no es poden calcular i evita el ValueError de get_min_max([]).
Cal afegir un test de regressió per al cas que motiva la PR. Ara mateix spec/graph/graph_spec.py només comprova y_range="auto" amb dades, de manera que eliminar accidentalment el and final_data continuaria deixant la suite verda. El test hauria de processar una gràfica lineal amb y_range="auto" i values=[], comprovar que no llança, que data == [] i que yAxisOpts == {"mode": "auto"}.
He revisat el diff complet, el contracte documentat de yAxisOpts, la implementació de get_min_max i el check build (verd).
|
@giscebot podries afegir un test de regressió per comprovar el funcionament de la PR? Gràcies |
Co-authored-by: fcapallera <36483261+fcapallera@users.noreply.github.com>
|
Afegit el test de regressió al commit |
giscebot
left a comment
There was a problem hiding this comment.
El bloqueig del review anterior queda resolt. El nou test reprodueix exactament el cas y_range="auto" amb values=[], valida tant data == [] com l’absència de límits inventats (yAxisOpts == {"mode": "auto"}), i queda acoblat al guard de producció: si es retira, torna a aparèixer el ValueError esperat.
He revisat el diff complet i la interacció amb get_min_max; el canvi conserva el comportament existent quan hi ha dades i només evita calcular mínim/màxim quan final_data és buit. El check build passa amb els 149 exemples. No he pogut repetir la suite localment perquè aquest entorn no té mamba ni les dependències (lxml) instal·lades, però no és un problema atribuïble al PR.
|
Revisió tancada: el bloqueig del test de regressió va quedar resolt abans del merge. El commit de merge |
Objetivos
read_for_viewcuandoy_range="auto"está activado y no hay datos.Funcionamiento anterior
Funcionamiento nuevo
Tests
mamba— 149 examplesValueErrorwhen thefinal_dataguard is removed.