Gestión de dependencias de Cargo en Rust

Beginner

This tutorial is from open-source community. Access the source code

Introducción

En este laboratorio, se explica el concepto de dependencias de desarrollo. Las dependencias de desarrollo se agregan en la sección [dev-dependencias] del archivo Cargo.toml y se utilizan para pruebas, ejemplos o benchmarks. Un ejemplo de dependencia de desarrollo es pretty_assertions, que extiende macros estándar como assert_eq! y assert_ne! para proporcionar diferencias en color.

Nota: Si el laboratorio no especifica un nombre de archivo, puede usar cualquier nombre de archivo que desee. Por ejemplo, puede usar main.rs, compilar y ejecutarlo con rustc main.rs &&./main.

Dependencias de desarrollo

A veces es necesario tener dependencias solo para las pruebas (o ejemplos, o benchmarks). Tales dependencias se agregan a Cargo.toml en la sección [dev-dependencias]. Estas dependencias no se propagan a otros paquetes que dependen de este paquete.

Un ejemplo de esto es pretty_assertions, que extiende las macros estándar assert_eq! y assert_ne!, para proporcionar diferencias en color.
Archivo Cargo.toml:

## se omite la información estándar del crat
[dev-dependencias]
pretty_assertions = "1"

Archivo src/lib.rs:

pub fn add(a: i32, b: i32) -> i32 {
    a + b
}

#[cfg(test)]
mod tests {
    use super::*;
    use pretty_assertions::assert_eq; // crat solo para uso en pruebas. No se puede usar en código no de prueba.

    #[test]
    fn test_add() {
        assert_eq!(add(2, 3), 5);
    }
}

Resumen

¡Felicidades! Has completado el laboratorio de Dependencias de Desarrollo. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.