.NET Decompiler with support for PDB generation, ReadyToRun, Metadata (&more) - cross-platform!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Siegfried Pammer 04f9603768 Fix #2140: ILSpy 6.2p1 no longer respects "use discards" setting 5 years ago
..
.gitignore Move UnsafeCode tests to pretty-tests (except for those that are not yet successful). 8 years ago
AnonymousTypes.cs Fix #538: Give higher priority to out parameters when naming variables 7 years ago
AssemblyCustomAttributes.cs Rearrange pretty tests, so that they work with Roslyn compilers as well. 7 years ago
Async.cs #2128: Reformat the whole code base. 5 years ago
AsyncForeach.cs #2128: Reformat the whole code base. 5 years ago
AsyncMain.cs Fix lines starting with spaces 7 years ago
AsyncStreams.cs #2128: Reformat the whole code base. 5 years ago
AsyncUsing.cs #2128: Reformat the whole code base. 5 years ago
AutoProperties.cs Fix #2100: 'value'-named auto property could not be recognized correctly. 5 years ago
CS6_StringInterpolation.cs Fix #1497: do not insert newlines inside string interpolation expressions. 6 years ago
CS72_PrivateProtected.cs Add C# 7.2 private protected unit tests 8 years ago
CS73_StackAllocInitializers.cs Fix #2103: Support for `Stackalloc initializers` not working for `byte` 5 years ago
CheckedUnchecked.cs #2128: Reformat the whole code base. 5 years ago
CompoundAssignmentTest.cs #2128: Reformat the whole code base. 5 years ago
ConstantsTests.cs Fix #1552: user-defined and decimal increments 6 years ago
ConstructorInitializers.cs Fix #1743: Add pattern for struct constructor initializers. 6 years ago
CustomAttributeConflicts.cs #2128: Reformat the whole code base. 5 years ago
CustomAttributeSamples.cs Upgrade Roslyn for tests to 3.0.0-beta3. 6 years ago
CustomAttributes.cs Add ununsed CustomAttributes test. 6 years ago
CustomAttributes2.cs Atributes -> Attributes 6 years ago
CustomShortCircuitOperators.cs #2128: Reformat the whole code base. 5 years ago
CustomTaskType.cs #2128: Reformat the whole code base. 5 years ago
DeconstructionTests.cs #2128: Reformat the whole code base. 5 years ago
DelegateConstruction.cs #2128: Reformat the whole code base. 5 years ago
Discards.cs Fix #2140: ILSpy 6.2p1 no longer respects "use discards" setting 5 years ago
DynamicTests.cs Fix #2140: ILSpy 6.2p1 no longer respects "use discards" setting 5 years ago
EnumTests.cs Rename TypeTests to EnumTests and merge old EnumTests into new pretty tests. 6 years ago
ExceptionHandling.cs #2128: Reformat the whole code base. 5 years ago
ExpressionTrees.cs Fix #2140: ILSpy 6.2p1 no longer respects "use discards" setting 5 years ago
FixProxyCalls.cs #2128: Reformat the whole code base. 5 years ago
Generics.cs #2128: Reformat the whole code base. 5 years ago
HelloWorld.cs Move test projects to their own directory in \ 8 years ago
IndexRangeTest.cs Handle the special cases where the range does not have a start or endpoint. 5 years ago
InitializerTests.cs #2128: Reformat the whole code base. 5 years ago
InlineAssignmentTest.cs #2128: Reformat the whole code base. 5 years ago
InterfaceTests.cs Enable tests for await using and DIM. 6 years ago
Issue1080.cs #2128: Reformat the whole code base. 5 years ago
LiftedOperators.cs #2128: Reformat the whole code base. 5 years ago
LocalFunctions.cs #2128: Reformat the whole code base. 5 years ago
Lock.cs #2128: Reformat the whole code base. 5 years ago
Loops.cs #2128: Reformat the whole code base. 5 years ago
MemberTests.cs Apply expression-body transform to indexers as well. 6 years ago
MultidimensionalArray.cs Add old MultidimensionalArrays test to pretty test runner. 6 years ago
NamedArguments.cs Move named arguments to its own transform. 7 years ago
NativeInts.cs Upgrade Roslyn version used for our tests (from 3.7.0 to 3.8.0-2.final) and adjust NativeInteger attribute decoding. 5 years ago
NullPropagation.cs #2128: Reformat the whole code base. 5 years ago
NullableRefTypes.cs Upgrade Roslyn version used for our tests (from 3.7.0 to 3.8.0-2.final) and adjust NativeInteger attribute decoding. 5 years ago
OptionalArguments.cs Fix #2124: Unwrap nullables when printing constant values. 5 years ago
OutVariables.cs Fix #2140: ILSpy 6.2p1 no longer respects "use discards" setting 5 years ago
PInvoke.cs #2128: Reformat the whole code base. 5 years ago
PropertiesAndEvents.cs #1837 Add combined test with tuples, dynamic and nullability 6 years ago
QualifierTests.cs #2128: Reformat the whole code base. 5 years ago
QueryExpressions.cs #2128: Reformat the whole code base. 5 years ago
Readme.txt Upgrade Roslyn for tests to 3.0.0-beta3. 6 years ago
ReduceNesting.cs #2128: Reformat the whole code base. 5 years ago
RefLocalsAndReturns.cs #2128: Reformat the whole code base. 5 years ago
ShortCircuit.cs #2128: Reformat the whole code base. 5 years ago
Switch.cs #2128: Reformat the whole code base. 5 years ago
SwitchExpressions.cs #2128: Reformat the whole code base. 5 years ago
ThrowExpressions.cs Fix #2140: ILSpy 6.2p1 no longer respects "use discards" setting 5 years ago
TupleTests.cs #2128: Fix formatting issues 5 years ago
TypeAnalysisTests.cs #2128: Reformat the whole code base. 5 years ago
TypeMemberTests.cs #2128: Reformat the whole code base. 5 years ago
UnsafeCode.cs #2128: Reformat the whole code base. 5 years ago
UserDefinedConversions.cs Fix #1574: When re-introducing an explicit cast for an implicit user-defined conversion; ensure we use a direct cast and don't go through the code path for builtin conversions. 6 years ago
Using.cs #2128: Reformat the whole code base. 5 years ago
UsingVariables.cs #2128: Reformat the whole code base. 5 years ago
ValueTypes.cs #2128: Reformat the whole code base. 5 years ago
VariableNaming.cs Fix warnings in test cases 5 years ago
VariableNamingWithoutSymbols.cs Fix #1681: Use discard assignment, if possible. 6 years ago
WellKnownConstants.cs Exclude whole numbers from "constant unfolding" for floating point literals. 6 years ago
YieldReturn.cs #2128: Reformat the whole code base. 5 years ago

Readme.txt

The files in this folder are prettiness tests for the decompiler.

The NUnit class running these tests is ../PrettyTestRunner.cs.

Each test case is a C# file.
The test runner will:
1. Compile the file into an .exe/.dll
2. Decompile the .exe/.dll
3. Compare the resulting code with the original input code.

The tests pass if the code looks exactly the same as the input code, ignoring comments, empty lines and preprocessor directives.
It also ignores disabled preprocessors sections (e.g. "#if ROSLYN") when the test runs with a compiler that does not set this symbol.
See Tester.GetPreprocessorSymbols() for the available symbols.