Comments (4)
Excelente! Gracias por la explicación!
Nuestra idea es que cada módulo tenga sus propios tests, así que me hice una carpeta tests y me copie el makefile y el src del test de ejemplo en nuestra carpeta Kernel. Corrí make start
estando en kernel/test y eso me levantó bien el test de ejemplo, voy a seguir por ese camino por ahora, cuando pueda me aplico el patch y te aviso si tengo algún problema.
Por otro lado, dejé PROJECT_PATH vacío en mi prueba inicial y anduvo igual, al menos corriendo los tests de esta forma.
Gracias por todo el laburo metido en este template, nos vino como anillo al dedo! 🚀
from so-project-template.
Hola Agustín! Me gustaría testear esto, debería poder poner la carpeta test en cada project folder? o debería tener un project test en el root del repositorio?
Usamos los pasos de tu repo para armar el template de nuestro tp, muchas gracias!
from so-project-template.
︎¡Buenas @lalvarez-utn-frba ! ¿Cómo va?
Para probar lo que está en #17 primero hace falta cambiar todos los makefiles que estén en el repo (hice un refactor bastante groso xq me había quedado muy desordenado todo 😕). Te los podés traer descargando la branch como zip:
wget https://github.com/RaniAgus/so-project-template/archive/refs/heads/v2.5-patch.zip
unzip v2.5-patch.zip
Luego, en cuanto a la carpeta en donde dejar los tests, la idea es que lo definan ustedes seteando PROJECT_PATH
:
so-project-template/tests/makefile
Line 1 in afb0d7a
Por ejemplo, si lo quieren poner en cada project folder sería ..
, y si lo quieren poner en el root sería ../nombre-del-proyecto
.
¡Saludos!
from so-project-template.
¡Me alegra que les sirva!
Me olvidaba de algo: en el makefile de project
hay una variable ENTRYPOINT
en la que hay que especificar en qué archivo está el main()
:
so-project-template/project/makefile
Lines 12 to 17 in afb0d7a
Lo puse porque como CSpec es un framework (que tiene su propio main()
para ejecutar los tests) hay que excluir esa función al compilar el proyecto de testing, sino va a fallar.
También, aclaro, el test de ejemplo funciona por sí solo porque puse esto para que vaya a buscar los *.c
del proyecto original solo si PROJECT_PATH
no está vacío (o sea, el ejemplo no va ir a buscar nada):
so-project-template/tests/makefile
Lines 27 to 39 in afb0d7a
Son varios cambios respecto a la versión actual y tengo que tener tiempo para documentarlos bien antes de mergearlo 😅
Saludos
from so-project-template.
Related Issues (20)
- Fixear includes en el makefile de utils
- Agregarle un timestamp al nombre de los logs de valgrind
- Agregar regla `make start`
- Motivación para simular un Watch HOT 2
- Mudar docu a la wiki
- Hacer un proyecto que compile todos los srcs como archivos individuales
- Biblioteca compartida no reconoce a una función de una biblioteca estática HOT 3
- Testear modulos - Posibilidad de integrar funciones de los modulos a los Tests HOT 1
- Makefile + Git - Compilación de módulos según rama de git HOT 3
- Agregar `--track-origins=yes` a Valgrind
- Pruebas varias a la fecha HOT 1
- Static Lib referenciable como Shared Lib HOT 3
- error al importar las commons HOT 7
- Agregar includes
- Ver cómo generar prerrequisitos automáticamente
- Obtener SRCDIR y BINDIR en el proyecto
- Aceptar otras estructuras de carpetas HOT 1
- Agregar una regla 'help'
- Permitir que memcheck y helgrind reciban parámetros
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from so-project-template.