ExcludeFromCodeCoverage for interface with default implementations
@fhnaseer ya está trabajando en esto.
Desde el 18/11/2024.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Currently the ExcludeFromCodeCoverage attribute can only be placed on classes, constructors, methods, structs, properties, events and assemblies. However, now that C# 8.0 introduced interfaces with default implementations it could be useful to be able to be able to use the attribute on these as well.
As an example, in the visitor pattern I'm using an interface with default implementation so that visitors don't have to override every method:
public interface IVisitor
{
void Visit(FullName fullName) => throw new NotImplementedException();
void Visit(Address address) => throw new NotImplementedException();
void Visit(PhoneInfo phoneInfo) => throw new NotImplementedException();
}
Since testing these concrete methods (in my case) is not necessary, I would like to tag the interface with the ExcludeFromCodeCoverage attribute which is currently not possible. While I've got a few workarounds (adding the ExcludeFromCodeCoverage attribute to every single method declaration in the interface or using an abstract class and tagging the class itself) it might be worth letting the attribute be placed directly on interfaces.
- Lenguaje dominante
- C#
- Estrellas
- 125
- Forks
- 17
- Merge medio
- 1 h 32 min
- PR fusionados (30 d)
- 1
Preparar el entorno
Aún no hemos revisado los archivos de configuración de este proyecto. Empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de microsoft/codecoverage
-
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
microsoft/codecoverage#246 · 6 comentarios ·
-
Forward SIGTERM to child processAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
microsoft/codecoverage#237 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
microsoft/codecoverage#234 · 1 comentario · 2 reacciones ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
microsoft/codecoverage#233 · 2 reacciones ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 28/100
microsoft/codecoverage#232 · 6 comentarios ·
Todos los issues de microsoft/codecoverage
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
fluentassertions/fluentassertions#3353 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
Dificultad 2/5 Medio día Aptitud para principiantes 78/100
unoplatform/uno#24769 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
AvaloniaUI/Avalonia#22323 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
microsoft/onnxruntime-genai#2633 ·
Los mantenedores suelen responder en 1 día