godotengine / godotengine/godot-cpp

Including a test project

Aperta
#413 7 commenti 1 reazione 0 assegnatari Vedi su GitHub
enhancement
Lingua principale
C++
Stelle
2.7k
Fork
809
Merge medio
1g 3h
PR unite (30g)
8

Descrizione

Currently, with this repo alone, there is no way to test wether or not changes work, create leaks or even compile. The latter is partly because some features are header-only and only get compiled when a project uses them, so when we do PRs we have to test them on our projects.

I'm considering the possibility of adding a folder to the repo, in which we'd put a Godot project with a GDNative library inside, which would run a series of simple tests. I'm not necessarily thinking of a full unit test suite right away. At least having a simple project for the CI to compile and run would be a good start, so new PRs can automatically get better test coverage on multiple platforms.

The goals of this:
- Check if the header-only parts of the project compile
- Check if it runs without crashing
- Check if it doesn't leak memory

My only concern is how much of a deal is it to have these extra files. Perhaps it's not too bad considering the size it would take (about a hundred kilobytes?), compared to build symbols which are measured in hundreds of megabytes.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Non vengono indicati file o test esistenti. Inizia esaminando la configurazione attuale di build e CI del repository, quindi determina come potrebbe integrarsi un progetto Godot con una libreria GDNative. Il lavoro è completato quando CI può compilare le funzionalità header-only, eseguire il progetto senza crash e verificare la presenza di perdite di memoria su più piattaforme.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
cpp, godot
Ambito
build-system, ci-cd, testing
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
28/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.