Collection Membership operator can return unintuitive results if collection has mix of types
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
Comienza con CollectionMembershipOperator.java, especialmente las líneas 34-47, y rastrea cómo las operaciones de membership y “is containing” convierten colecciones de tipos mixtos. Reproduce los ejemplos del issue y establece después el comportamiento de comparación previsto antes de identificar la cobertura de regresión necesaria para demostrar que los valores null, numéricos, de tipo string y booleanos se gestionan de forma coherente.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Since the CollectionMembershipOperator coerces the type of the item being tested to the first (or first non-null) element in the list, it can lead to unexpected/unintuitive results.
{{ null in [null, 1, 2] }} {# true #}
{{ null in [1, null, 2] }} {# false - null converted to 0; no 0 in list #}
{{ null in [1, null, 2, 0] }} {# true - because of the 0 in the list, not the null #}
{{ null in [0, 1, 2] }} {# true #}
{{ 1 in ['1', 2 ] }} {# true - 1 converted to '1' #}
{{ 2 in ['1', 2 ] }} {# false - 2 is converted to '2', no '2' in list #}
{{ 1 in [false, 1] }} {# false - 1 converted to true #}
{{ 1 in [true, 0] }} {# true #}
{{ 1 in [null, 'abc', 1] }} {# false #}
{{ '' in [1, '', 2] }} {# false #}
{{ '' in [0, 1, 2] }} {# true #}
(The same applies to is containing, e.g. [false, 1] is containing 1 is false)
- Lenguaje dominante
- Java
- Estrellas
- 785
- Forks
- 184
- Merge medio
- 6 d 22 h
- PR fusionados (30 d)
- 1
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de HubSpot/jinjava
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
-
Jinjava 3.0 Abierto
-
Upgrade to Jackson 3.0.0 Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
Todos los issues de HubSpot/jinjava
Issues similares
-
awaiting triage bug Causes friction Hop Gui P1 P2 Transforms
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
apache/flink-agents#1152 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
jenkinsci/blueocean-plugin#5417 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
objectionary/eo-graphs#75 ·