Chciałbym skonfigurować szybki i łatwy sposób testowania funkcji w Angular, gdzie po prostu wkładał nazwa funkcji raz w konstruktora i przetestował je. np.:
constructor() {
this.test(this.FucntionName) <= logs function name and output
}
Problem w tym, że jeśli nie spróbuję przekazać funkcję jako argument, nie powodując jej, dostanę błąd this. scope. Jak mogę uzyskać jak nazwa funkcji, jak i jej wartość zwracana, gdy zostawiam go w funkcji test (), bez konieczności wprowadzania dwa argumenty?
Czy najlepszym rozwiązaniem, może być, niektóre platformy testów jednostkowych zapewniają to?
Mój obecny podejście działa, ale jest niezdarna, i chciałbym wyeliminować konieczność w drugim argumencie:
export class AuthService {
constructor(
...
) {
this.test(this.FunctionName(), 'FunctionName')// I would like to remove the need to repeat the name as string
}
test(sub: any, name) {
sub.subscribe(
data => {
console.group("==========", name, "() TEST ===============")
console.log("Output Type:", typeof data)
typeof data == 'object' ? console.table(data) : console.log(data);
console.groupEnd()
}
)
}