¿Cómo puedo probar que un método devuelve un hash que contiene claves específicas y que los valores para esas claves no son nulos utilizando RSpec?Compruebe que el hash contiene claves específicas y que los valores para esas claves no son nulos
9
A
Respuesta
8
algo como esto:
test_method.values_at("key1", "key2").should_not include(nil)
9
que escribiría:
describe MyObject do
describe "#my_method" do
subject(:my_method) { MyObject.new.my_method }
it { is_expected.to be_a_kind_of(Hash) }
specify { expect(my_method.keys).to include(:key1, :key2) }
specify { expect(my_method.values).not_to include(nil) }
end
end
Puede suceder que usted tiene que utilizar claves entre comillas "key1", "clave2". De lo contrario, puede arrojar un error.
Cuestiones relacionadas
- 1. Claves compuestas MySql y valores nulos
- 2. ¿Cómo encontrar todas las tablas que tienen claves foráneas que hacen referencia a table.column particular y tienen valores para esas claves foráneas?
- 3. Hash de Perl cuando las claves y los valores son referencias de matriz
- 4. Comparar diccionarios ignorando claves específicas
- 5. Intercambio de claves y valores en un hash
- 6. array_walk_recursive - modificar las claves y los valores
- 7. deserializar que no son cadenas claves mapa con Jackson
- 8. ¿Cómo encontrar si los valores de una matriz son las claves de hash en Perl?
- 9. Eliminar claves en el hash no en el conjunto
- 10. Almacén de valores/claves persistentes distribuido más simple que admite consultas de rango de claves primarias
- 11. ¿Cómo uso los elementos de un marco de datos como claves hash/claves del diccionario/claves principales?
- 12. reconociendo "tipo" de claves hash
- 13. contiene valores de titularidad que no son compatibles
- 14. Regex para cadena que no contiene varias palabras específicas
- 15. claves encontrar que no caduca en Redis
- 16. Error en CF9: valores para las claves struct únicas referenciadas y sobreescritas por otras claves
- 17. Actualice los valores de varias claves
- 18. ¿Cómo obtener valores de Redis usando claves que contienen espacios?
- 19. ¿Las claves públicas y privadas son intercambiables?
- 20. ConfigParser Python no aceptará claves sin valores
- 21. ¿Las claves y los valores de% INC dependen de la plataforma o no?
- 22. SQLAlchemy y se une, que no tienen las claves externas
- 23. Cómo concatenar claves con valores?
- 24. Obtener claves y valores comunes de los dos diccionarios
- 25. contraseñas con algoritmo hash o cifrado no son compatibles con las claves generadas automáticamente
- 26. Claves/valores de registro ocultos
- 27. Reflexión: compruebe que todas las propiedades que admiten nulos tienen valores
- 28. PHP remove empty, null Clave/valores de la matriz manteniendo las claves/valores de lo contrario no vacíos/nulos
- 29. tabla hash optimizado para la plena iteración + sustitución de claves
- 30. Crear un diccionario de Python que contiene pares de valores clave específicas de otro diccionario
esto no funcionará si uno de los valores del hash es realmente 'nil'. 'hash.keys.should = ~ [: key1,: key2]' debería hacer el truco. –