.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 d42cf99a8c Fix dynamic transforms because https://github.com/dotnet/roslyn/issues/27800 was fixed. 7 years ago
..
.gitignore
AnonymousTypes.cs
AssemblyCustomAttributes.cs
Async.cs Fix #1343: Extend AwaitInCatchTransform to support catch blocks that leave the block container. 7 years ago
AsyncMain.cs
AutoProperties.cs
CS6_StringInterpolation.cs Suppress warnings in "invalid" test cases. 7 years ago
CS72_PrivateProtected.cs
CS73_StackAllocInitializers.cs Add basic Span<T> stackalloc test cases. 7 years ago
CheckedUnchecked.cs Upgrade Roslyn for tests to 3.0.0-beta3. 7 years ago
CompoundAssignmentTest.cs Merge IncrementDecrement.cs into CompoundAssignmentTest 7 years ago
ConstantsTests.cs Fix test in opt and roslyn config. 7 years ago
ConstructorInitializers.cs Fix #1378: Missing unsafe modifier for static fields 7 years ago
CustomAttributeConflicts.cs Upgrade Roslyn for tests to 3.0.0-beta3. 7 years ago
CustomAttributeSamples.cs Upgrade Roslyn for tests to 3.0.0-beta3. 7 years ago
CustomAttributes.cs Add ununsed CustomAttributes test. 7 years ago
CustomAttributes2.cs Add ununsed CustomAttributes test. 7 years ago
CustomShortCircuitOperators.cs
DelegateConstruction.cs
Discards.cs Fix build break; only escape _ if it is a type name. Add basic Discards tests. 7 years ago
DynamicTests.cs Fix dynamic transforms because https://github.com/dotnet/roslyn/issues/27800 was fixed. 7 years ago
EnumTests.cs Rename TypeTests to EnumTests and merge old EnumTests into new pretty tests. 7 years ago
ExceptionHandling.cs
ExpressionTrees.cs Fix #1356: ExpressionTrees: ref parameter usage not transformed correctly. 7 years ago
FixProxyCalls.cs
Generics.cs Merge branch 'origin/master' into nullable-reference-types 7 years ago
HelloWorld.cs
InitializerTests.cs Add support for ReadOnlySpan<T> initialization pattern. 7 years ago
InlineAssignmentTest.cs
InterfaceTests.cs Add basic interface tests. 7 years ago
Issue1080.cs Upgrade Roslyn for tests to 3.0.0-beta3. 7 years ago
LiftedOperators.cs Reenable LiftedOperators tests. 7 years ago
Lock.cs
Loops.cs Fix #1395: do-while loop missing entry-point label. 7 years ago
MemberTests.cs Apply expression-body transform to indexers as well. 7 years ago
MultidimensionalArray.cs Add old MultidimensionalArrays test to pretty test runner. 7 years ago
NamedArguments.cs
NullPropagation.cs Apply expression-body transform to indexers as well. 7 years ago
NullableRefTypes.cs Add test for C# 8 nullable reference types; and fix some bugs. 7 years ago
OptionalArguments.cs Fix CallBuilder.IsPrimitiveValueThatShouldBeNamedArgument 7 years ago
PInvoke.cs
PropertiesAndEvents.cs Merge PropertiesAndEvents tests. 7 years ago
QualifierTests.cs Upgrade Roslyn for tests to 3.0.0-beta3. 7 years ago
QueryExpressions.cs Upgrade Roslyn for tests to 3.0.0-beta3. 7 years ago
Readme.txt Upgrade Roslyn for tests to 3.0.0-beta3. 7 years ago
ReduceNesting.cs
RefLocalsAndReturns.cs
ShortCircuit.cs
Switch.cs Fix part 1 of #1292: switch on string inside try-block not recognized. 7 years ago
TupleTests.cs
TypeAnalysisTests.cs Escape identifier "_" to avoid ambiguities with discard patterns. 7 years ago
TypeMemberTests.cs Upgrade Roslyn for tests to 3.0.0-beta3. 7 years ago
UnsafeCode.cs Fix #1386: MoveArrayToPointerToPinnedRegionInit: Only consider the pinned variable uses within the PinnedRegion 7 years ago
Using.cs
ValueTypes.cs Enable ValueTypes.cs pretty test 7 years ago
VariableNaming.cs
VariableNamingWithoutSymbols.cs
WellKnownConstants.cs Exclude whole numbers from "constant unfolding" for floating point literals. 7 years ago
YieldReturn.cs Upgrade Roslyn for tests to 3.0.0-beta3. 7 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.