https://github.com/gabrielgsdciuwu/dni
https://github.com/gabrielgsdciuwu/dni
dni oop python
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/gabrielgsdciuwu/dni
- Owner: GabrielgsdCIUwU
- License: unlicense
- Created: 2025-01-23T11:52:20.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-25T14:21:22.000Z (over 1 year ago)
- Last Synced: 2025-04-11T02:05:03.563Z (about 1 year ago)
- Topics: dni, oop, python
- Language: Python
- Homepage:
- Size: 26.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Validación de DNI
Este proyecto es una kata de programación orientada a objetos cuyo objetivo es comprobar la validez de un DNI (Documento Nacional de Identidad) español.
## Descripción
El proyecto consiste en una serie de clases y métodos que permiten validar un DNI. La validación se realiza comprobando que el formato del DNI es correcto y que la letra de control coincide con la calculada a partir del número.
## Estructura del Proyecto
El proyecto está organizado en los siguientes directorios y archivos:
### src
- colors.py
- dni.py
- tabla_asignacion.py
### test
- test_dni.py
- test_tabla.py
## Instalación
Para instalar las dependencias necesarias, ejecuta:
```sh
pip install -r requirements.txt
```
## Uso
Para utilizar la clase y métodos de este proyecto, puedes importar desde el módulo src. Aquí tienes un ejemplo de cómo validar un DNI:
```python
from src.dni import Dni
dni = "80117501Z"
if Dni(dni).isDniValid():
print("El DNI es válido")
else:
print("El DNI no es válido")
```
También puedes usar el `app.py` para generar DNI aleatorio o solo válido.
```sh
py app.py
```
## Tests
Para ejecutar los tests, utiliza pytest. Los tests están ubicados en el directorio test y cubren diferentes casos de uso para la validación de DNIs.
```sh
pytest
```
En caso de que quieras ver también los prints usa este otro comando:
```sh
pytest -s
```