testcontainers / testcontainers/testcontainers-java
[Enhancement]: ScriptUtils::runInitScript should load script also from local directory
Nessuno ha ancora preso questa issue.
- Lingua principale
- Java
- Stelle
- 8.7k
- Fork
- 1.9k
- Merge medio
- 2g 17h
- PR unite (30g)
- 9
Descrizione
Module
Core
Proposal
The ScriptUtils::runInitScript only accepts paths from the classpath. This isn't as powerful as I would have expected given:
- Absolute paths or relative paths local to the maven module, for example, are useful as well
- Being on the classpath means the Maven
compile(ortest-compile) phase must have run, but what if I want to use testcontainers in thegenerate-sources(orgenerate-test-sources) phase, e.g. to generate jOOQ code? In that case, the init scripts aren't available on the classpath yet, unless I create a separate module just for this, which is overkill
Additionally, there are many cases where the script doesn't have to be a file. An inline script in String form would suffice, e.g.
container.initScript("""
create schema test;
create table test.test (test int);
""");
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia da ScriptUtils::runInitScript e dall’API container.initScript menzionata nella proposta. Segui il modo in cui vengono risolti gli script del classpath, quindi determina come devono essere accettati i percorsi locali assoluti o relativi e gli script String inline. Il lavoro è completato quando ogni forma di input supportata funziona e i test coprono i percorsi locali e l’SQL inline.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- java
- Ambito
- testing
- Tipo di issue
- Funzionalità
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100