Skip to content
This repository was archived by the owner on Nov 15, 2021. It is now read-only.
Merged
Changes from 1 commit
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
44dd0a8
add image [skip ci]
sawilde Sep 20, 2015
fa1b7e3
use Resharper C++ suggestions - thanks again to JetBrains for support…
sawilde Sep 20, 2015
4d09d75
Merge branch 'master' of github.com:sawilde/opencover
sawilde Sep 20, 2015
002b89a
Merge branch 'master' of https://github.com/OpenCover/opencover
sawilde Sep 20, 2015
7ad7e07
update wix installer to include symbols by default - improve crash re…
sawilde Sep 22, 2015
ec46832
prep for talk
sawilde Sep 27, 2015
17983ae
housekeeping
sawilde Nov 8, 2015
b918e21
Add line feed to traces
lanfeust69 Nov 10, 2015
f6e0330
Fix incorrect concurrent use of collections
lanfeust69 Nov 10, 2015
18b62d4
update message #372 [skipci]
sawilde Dec 1, 2015
23f0268
update readme #372 [skipci]
sawilde Dec 1, 2015
f463cc2
#335 allow short wait time to be configured
sawilde Dec 1, 2015
59c8534
#335 extract communication timeout value
sawilde Dec 1, 2015
9638573
update dogfood.cmd
sawilde Dec 1, 2015
9e78fd3
Merge remote-tracking branch 'refs/remotes/OpenCover/master'
Dec 6, 2015
fefb9ea
Fix compile on VS 2013 Community Edition
Dec 6, 2015
31a11aa
Change outputXml64 name
Dec 6, 2015
ae32ac0
Fix xml-result file double dot extension (..xml)
Dec 6, 2015
c920a07
If method has no sequences -> remove branches
Dec 6, 2015
a07b482
Select only branches within sequence offset
Dec 6, 2015
f7cd8ce
Exclude some compiler generated branches?
Dec 6, 2015
84efecc
Revert "Exclude some compiler generated branches?"
Dec 7, 2015
ea8fa08
Merge branch 'master' of https://github.com/OpenCover/opencover
sawilde Dec 7, 2015
c36eb67
#335 pass connection timeout value through
sawilde Dec 7, 2015
2f1b63b
Merge pull request #377 from ddur/NewBranchTest
Dec 8, 2015
e60009d
Source connection
Dec 11, 2015
939d8d1
Add CrashReporter to zip distribution
Dec 14, 2015
e274d40
Add Signed CrashReporter
Dec 14, 2015
dbf4d54
Regex Filter Valid Branch Points
Dec 15, 2015
757e9ea
More regex matches
Dec 15, 2015
136b381
Merge branch 'master' of https://github.com/lanfeust69/opencover into…
sawilde Dec 15, 2015
73e7325
#376 only lock on buffer allocation if failed initially (performance)
sawilde Dec 15, 2015
62cbb49
#246 add missing assemblies
sawilde Dec 15, 2015
4ec44f8
update temp
sawilde Dec 15, 2015
9db3624
Cannot match include
Dec 16, 2015
635e99e
Enable Contract.EnsuresOnThrow, add comments
Dec 16, 2015
34fdc4a
Merge pull request #380 from ddur/Build&CrashReporter
Dec 16, 2015
1aa5512
Echo date&time (for local use)
Dec 16, 2015
a54647a
Merge pull request #381 from ddur/Filter-Valid-BranchPoints
Dec 16, 2015
542224a
Merge branch 'master' of https://github.com/OpenCover/opencover
Dec 16, 2015
f4aff5e
Merge pull request #382 from ddur/master
Dec 16, 2015
f905078
Remove all Contract branches
Dec 17, 2015
2748eed
Merge pull request #383 from ddur/master
Dec 17, 2015
47874d5
Remove Regex Match, Exclude BP's by Offset
Dec 17, 2015
b057f57
Merge pull request #384 from ddur/master
Dec 17, 2015
685bfdb
add sleep if yielding the thread fails (avoids spinning the CPU)
molnargab Dec 20, 2015
27f7f48
Merge branch 'master' of https://github.com/OpenCover/opencover
sawilde Dec 21, 2015
9f2bc78
#376 use concurrent map
sawilde Dec 21, 2015
1370d04
fix spelling mistake
sawilde Dec 21, 2015
9772367
Merge pull request #385 from molnargab/sleep_if_yield_fails
sawilde Dec 21, 2015
bdc4cc2
Merge branch 'master' of https://github.com/OpenCover/opencover
sawilde Dec 21, 2015
f7aa165
update notes
sawilde Dec 21, 2015
54c551b
#366 add lock protection over around Module.Alias access by base pers…
sawilde Dec 21, 2015
d87319e
Merge pull request #386 from sawilde/master
sawilde Dec 21, 2015
b57bdda
Remove duplicate empty SequencePoint & Refactored
Dec 23, 2015
e0a3292
Merge Resolve Conflicts
Dec 23, 2015
1acf3f4
Merge pull request #388 from ddur/master
ddur Dec 23, 2015
db4d463
Disable problematic code
Dec 23, 2015
df37d58
Merge branch 'master' of https://github.com/OpenCover/opencover into …
Dec 23, 2015
f63bc88
Enable Remove Unvisited SequencePoint Duplicates
Dec 23, 2015
acd4178
Merge pull request #389 from ddur/master
ddur Dec 23, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Remove all Contract branches
AFAIK so far, no Contract.* method contains user branches that can be
covered by test!
  • Loading branch information
ddur committed Dec 17, 2015
commit f905078e106252bf70adad2c5ae47c930ebb2cc0
21 changes: 7 additions & 14 deletions main/OpenCover.Framework/Persistance/BasePersistance.cs
Original file line number Diff line number Diff line change
Expand Up @@ -240,14 +240,10 @@ private void RemoveUnreferencedFiles()
// Dictionary with stored source files per module
private Dictionary<uint, CodeCoverageStringTextSource> sourceRepository = new Dictionary<uint, CodeCoverageStringTextSource>();

// match Contract.Requires<*> (
private static Regex cRequiresThrowMatch = new Regex (@"Contract\s*\.\s*Requires\s*<.+>\s*\(", RegexOptions.Compiled);
// match Contract.Invariant (
private static Regex cInvariantMatch = new Regex (@"Contract\s*\.\s*Invariant\s*\(", RegexOptions.Compiled);
// match Contract.Ensures[OnThrow<*>] (
private static Regex cEnsuresMatch = new Regex (@"Contract\s*\.\s*Ensures\s*<.+>\s*\(", RegexOptions.Compiled);
// match Contract.EnsuresOnThrow<*>] (
private static Regex cEnsuresOnThrowMatch = new Regex (@"Contract\s*\.\s*EnsuresOnThrow\s*<.+>\s*\(", RegexOptions.Compiled);
private static RegexOptions regexOptions = RegexOptions.Compiled | RegexOptions.Singleline | RegexOptions.ExplicitCapture;

// Match any Contract (Contract){1}(\s*\.\s*.+?){1}(\s*<.+>){1}?(\s*\(){1}
private static Regex contractMatch = new Regex (@"\A(Contract){1}(\s*\.\s*.+?){1}(\s*<.+>){1}?(\s*\(){1}", regexOptions);

private const bool doRemove = true;
private const bool preserve = false;
Expand Down Expand Up @@ -305,12 +301,9 @@ private bool doRemoveBranches (SequencePoint sp) {
// ensures(x);
// ensuresOnThrow<T>(x);
// 12345678901234567890
if (spSource.Length >= 20 && spSource.Substring(0, 8) == "Contract" && spSource.Last() == ';') {
// Requires<Exception> and EnsuresOnThrow<Exception> branches are testable
// Requires sometimes has too much branches?
if (cInvariantMatch.IsMatch (spSource))
return doRemove;
if (cEnsuresMatch.IsMatch (spSource))
if (spSource.Length >= 20 && spSource.Substring(0, 8) == "Contract") {
// No Contract.* method contains user branches that can be covered by test!
if (contractMatch.IsMatch (spSource))
return doRemove;
}
break;
Expand Down