microsoft / vs-boost-unit-test-adapter
Unit Size

The distribution of size of units (measured in lines of code).

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 536 units with 5,744 lines of code in units (57.4% of code).
    • 0 very long units (0 lines of code)
    • 5 long units (328 lines of code)
    • 61 medium size units (1,762 lines of code)
    • 115 small units (1,723 lines of code)
    • 355 very small units (1,931 lines of code)
0% | 5% | 30% | 29% | 33%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
cs0% | 5% | 30% | 29% | 33%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
BoostTestAdapter/Boost0% | 7% | 21% | 38% | 33%
VisualStudioAdapter0% | 44% | 26% | 0% | 29%
BoostTestAdapter/Discoverers0% | 25% | 30% | 16% | 27%
BoostTestAdapter/Utility0% | 5% | 25% | 26% | 42%
BoostTestAdapter0% | 12% | 38% | 28% | 19%
BoostTestAdapterNunit0% | 0% | 38% | 32% | 28%
BoostTestAdapter/Settings0% | 0% | 49% | 19% | 30%
BoostTestAdapter/TestBatch0% | 0% | 28% | 40% | 31%
BoostTestAdapterNunit/Fakes0% | 0% | 23% | 0% | 76%
BoostTestShared0% | 0% | 48% | 0% | 51%
BoostTestAdapterNunit/Utility0% | 0% | 0% | 44% | 55%
BoostTestPackage0% | 0% | 0% | 79% | 20%
Antlr.DOT0% | 0% | 0% | 0% | 100%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
public override string ToString()
in BoostTestAdapter/Boost/Runner/BoostTestRunnerCommandLineArgs.cs
87 21 0
public async Task GetDebuggingPropertiesAsync()
in VisualStudioAdapter/VisualStudio.cs
70 13 1
public void DiscoverTests()
in BoostTestAdapter/Discoverers/ListContentDiscoverer.cs
66 8 3
private static bool MapAndLoad()
in BoostTestAdapter/Utility/DebugHelperNative.cs
53 12 2
private void RunBoostTests()
in BoostTestAdapter/BoostTestExecutor.cs
52 10 3
public IEnumerable GetDiscoverers()
in BoostTestAdapter/Discoverers/BoostTestDiscovererFactory.cs
49 14 2
public static extern SafeFileHandle CreateFile()
in BoostTestAdapter/Utility/DebugHelperNative.cs
47 1 7
public void DiscoverTests()
in BoostTestAdapter/BoostTestDiscoverer.cs
45 11 4
public void TestModuleBatchedRuns()
in BoostTestAdapterNunit/BoostTestExecutorTest.cs
45 5 0
public void DeserialiseDOT()
in BoostTestAdapterNunit/DOTDeserialisationTest.cs
45 1 0
public void RunTests()
in BoostTestAdapter/BoostTestExecutor.cs
43 7 3
public void ParseMultipleTestResultsReportLog()
in BoostTestAdapterNunit/BoostTestResultTest.cs
43 1 0
private static IEnumerable GenerateTestResults()
in BoostTestAdapter/BoostTestExecutor.cs
41 6 4
public static void SetWorkingEnvironment()
in BoostTestAdapter/Utility/BoostTestRunnerCommandLineArgsEx.cs
41 8 4
public void ListContentSupport()
in BoostTestAdapterNunit/ListContentDiscovererTest.cs
41 6 0
private static string GetTestResultMessageText()
in BoostTestAdapter/Utility/VisualStudio/VSTestModel.cs
37 9 2
public void ParseTestContext()
in BoostTestAdapterNunit/BoostTestResultTest.cs
36 1 0
public int Execute()
in BoostTestAdapterNunit/BoostTestExecutorTest.cs
33 4 3
public void TestDisabledTestsRunAllSettings()
in BoostTestAdapterNunit/BoostTestExecutorTest.cs
33 2 0
public void Load()
in BoostTestAdapter/Settings/BoostTestInternalSettings.cs
32 4 1