#develop (short for SharpDevelop) is a free IDE for .NET programming languages.
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.
 
 
 
 
 
 
Daniel Grunwald ce2e5281e1 Documentation update. 14 years ago
..
Properties Use GlobalAssemblyInfo.cs for all projects. 14 years ago
Xml Add StringBuilderDocument to NR.Editor. 14 years ago
.gitignore Added ResolverTest to consistency check and fixed some crashing bugs in the resolver. 14 years ago
CSharpProject.cs Add FindReferencesConsistencyCheck. 14 years ago
FindReferencesConsistencyCheck.cs Fixed finding references to method group conversions. 14 years ago
ICSharpCode.NRefactory.ConsistencyCheck.csproj Add StringBuilderDocument to NR.Editor. 14 years ago
IDStringConsistencyCheck.cs * ICSharpCode.NRefactory.csproj: 14 years ago
Program.cs Add AXmlObject.CreateReader() method. 14 years ago
RandomizedOrderResolverTest.cs Fixed bug in CSharpAstResolver.GetExpectedType(). 14 years ago
Readme.txt Documentation update. 14 years ago
ResolverTest.cs CSharpAstResolver: add cancellation support 14 years ago
RoundtripTest.cs Ignore AssemblyInfo in RoundtripTest. 14 years ago
Solution.cs
app.config

Readme.txt

This is an automatic consistency check for NRefactory.
It loads a solution file and parses all the source code and referenced libraries,
and then performs a set of consistency checks.
These checks assume that the code is valid C# without any compilation errors,
so make sure to only pass in compilable source code.

Checks currently being performed:
- IDStringConsistencyCheck: Checks that ID strings are unique and refer back to the correct entity
- RoundtripTest: parses C# code and outputs it again using CSharpOutputVisitor, checking that only whitespace is changing
- ResolverTest: fully resolves all ASTs and validates that no errors are detected (no false positives in semantic error checking)
- RandomizedOrderResolverTest: checks that the order of Resolve()/GetResolverState() calls has no effect on the result
- FindReferencesConsistencyCheck: checks that FindReferences is the inverse of FindReferencedEntities

XML Tests:
- IncrementalXmlParserTests: tests that incremental parsing produces results identical to a full reparse
- XmlReaderTests: compares AXmlParser.Parse().CreateReader() with new XmlTextReader()



Ideas for further tests:
- Test token positions (see AstVerifier)
- Compare resolve results with csc compiler output (using Cecil)
- Randomly mutate a C# file (e.g. remove tokens) and verify that the parser does not crash