feat: add custom parameter based on a map of values
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- cpp
- Ambito
- testing-qa
Direzione di ricerca
Inizia dalla definizione esistente della macro PARAMETER e segui come vengono implementati il relativo comportamento di regex e conversione. Definisci il comportamento dei parametri basato su map descritto nell’issue, inclusa la trasformazione delle chiavi della map in una regex corrispondente e la ricerca della stringa catturata nella map; il lavoro è completato quando le map di tipo enum possono essere utilizzate come parametri personalizzati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Currently the PARAMETER macro only accepts a regex string. But there are quite some occasions where a custom parameter is nothing more than mapping a string to values. This can for example be used to create a custom parameter based on enums:
// somewhere
enum class State{
connected,
disconnected,
standby,
shutdown
}
namespace{
const std::map<std::string, State> stateMap{
{"connected", State::connected},
{"disconnected", State::disconnected},
{"standby", State::standby},
{"shutdown", State::shutdown},
};
}
PARAMETER_MAP("state", stateMap, true);
// PARAMETER_MAP does the heavy lifting of transforming all the keys from the provided
// map in to a regex that would look like: `(connected|disconnected|standby|shutdown)`
// it also takes care of creating a simple implementation that takes a string
// and uses the .at function on the provided map using the captured argument
// it could potentially look something like this (pseudo-code-ish)
#define PARAMETER_MAP(name, map, snippet) \
PARAMETER(decltype(map)::value_type, (name, transformKeysToRegex(map), snippet), (const std::string& key)) \
{ \
return map.at(key); \
}
- Lingua principale
- C++
- Stelle
- 22
- Fork
- 7
- Merge medio
- 1g 17h
- PR unite (30g)
- 15
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi 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.
Altre issue di philips-software/amp-cucumber-cpp-runner
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
philips-software/amp-cucumber-cpp-runner#342 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
philips-software/amp-cucumber-cpp-runner#341 ·
I maintainer di solito rispondono entro 1 giorno
-
missing CMake install targetAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
philips-software/amp-cucumber-cpp-runner#339 ·
I maintainer di solito rispondono entro 1 giorno
-
FetchContent usage requires CCR_FETCH_DEPS to resolve dependencies (not documented)Forse di nuovo libera @daantimmer l’ha presa 157 giorni fa e non c’è nessuna pull request aperta. Aperta
philips-software/amp-cucumber-cpp-runner#326 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 52/100
philips-software/amp-cucumber-cpp-runner#317 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di philips-software/amp-cucumber-cpp-runner
Issue simili
-
Eval bug: minimax-m3: build_moe_ffn() drops the per-expert NVFP4 scale → garbled output (M3.1 Flash)Apertabug-unconfirmed
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Status: Needs confirmation Status: Needs triage
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 70/100
I maintainer di solito rispondono entro 1 giorno
-
[BUG] Failed archive extraction deletes the dataset cacheForse già presa @dajiaohuang l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
alibaba/GraphScope#4674 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 93/100
webarkit/WebARKitLib#107 ·
I maintainer di solito rispondono entro 1 giorno