Olá! Reparei que depois de adicionarmos o parâmetro "taxa" ao longo do curso, geramos uma incompatibilidade no comportamento transferir, pois ele deposita o valor na conta indicada com a taxa incluída (em valorSacado):
_sacar(valor, taxa) {
const valorSacado = taxa * valor;
if (this._saldo >= valorSacado) {
this._saldo -= valorSacado;
return valorSacado;
}
return 0;
}
tranferir(valor, conta) {
const valorSacado = this.sacar(valor);
conta.depositar(valorSacado);
}
Para evitarmos essa falha, sugiro a alteração do código de maneira que o valor depositado não seja afetado pela taxa do comportamento "sacar":
transferir(valor, conta) {
this.sacar(valor);
conta.depositar(valor);
}