microsoft / accessibility-insights-windows
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 6% duplication:
    • 26,984 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,660 duplicated lines
  • 176 duplicates
system6% (1,660 lines)
Duplication per Extension
cs4% (843 lines)
xaml10% (597 lines)
yml43% (159 lines)
html57% (61 lines)
Duplication per Component (primary)
src/AccessibilityInsights.SharedUx7% (968 lines)
src/AccessibilityInsights8% (285 lines)
build36% (159 lines)
src/AccessibilityInsights.Extensions.AzureDevOps5% (74 lines)
src/AccessibilityInsights.SharedUxTests5% (62 lines)
tools/WildlifeManager18% (26 lines)
src/AccessibilityInsights.CommonUxComponents<1% (24 lines)
ROOT41% (20 lines)
src/AccessibilityInsights.Extensions.AzureDevOpsTests3% (14 lines)
src/AccessibilityInsights.Extensions.TelemetryTests7% (14 lines)
src/AccessibilityInsights.VersionSwitcher2% (8 lines)
src/AccessibilityInsights.Extensions2% (6 lines)
src/AccessibilityInsights.CustomActions.Package0% (0 lines)
src/AccessibilityInsights.CustomActions0% (0 lines)
src/AccessibilityInsights.Extensions.GitHub0% (0 lines)
src/AccessibilityInsights.Extensions.GitHubAutoUpdate0% (0 lines)
src/AccessibilityInsights.Extensions.Telemetry0% (0 lines)
src/AccessibilityInsights.ExtensionsTests0% (0 lines)
src/AccessibilityInsights.SetupLibrary0% (0 lines)
src/AccessibilityInsights.Win320% (0 lines)
src/MSI0% (0 lines)
tools/scripts0% (0 lines)

Duplication Between Components (50+ lines)

G src/AccessibilityInsights.SharedUx src/AccessibilityInsights.SharedUx src/AccessibilityInsights src/AccessibilityInsights src/AccessibilityInsights.SharedUx--src/AccessibilityInsights 81 src/AccessibilityInsights.Extensions.AzureDevOps src/AccessibilityInsights.Extensions.AzureDevOps src/AccessibilityInsights.Extensions.AzureDevOps--src/AccessibilityInsights.SharedUx 67

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 176 duplicates...
Size#FoldersFilesLinesCode
32 x 2 src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
LineBorder.cs
TextTip.cs
228:275 (20%)
496:543 (11%)
view
21 x 2 src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/ActionViews
xaml
ReturnA11yElementsView.xaml
TextRangeActionView.xaml
33:57 (16%)
23:47 (33%)
view
18 x 2 build
build
build-and-unit-tests.yml
signedbuild.yml
23:43 (30%)
87:107 (6%)
view
18 x 2 build
build
signedbuild.yml
signedbuild.yml
15:34 (6%)
82:101 (6%)
view
17 x 2 src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
LineBorder.cs
Win32SnapshotButton.cs
228:249 (10%)
181:202 (8%)
view
17 x 2 src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
TextTip.cs
Win32SnapshotButton.cs
496:517 (6%)
181:202 (8%)
view
15 x 2 src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/ActionViews
xaml
GeneralActionView.xaml
TextRangeActionView.xaml
12:29 (20%)
12:29 (24%)
view
15 x 2 src/AccessibilityInsight...reDevOps/IssueTemplates
src/AccessibilityInsight...reDevOps/IssueTemplates
IssueNoFailures.html
IssueSingleFailure.html
4:19 (83%)
6:21 (75%)
view
14 x 2 src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/ActionViews
GeneralActionView.xaml.cs
TextRangeActionView.xaml.cs
58:88 (15%)
49:79 (17%)
view
14 x 2 src/AccessibilityInsight...redUx/Controls/TestTabs
src/AccessibilityInsight...redUx/Controls/TestTabs
ColorContrast.xaml.cs
TabStopControl.xaml.cs
197:219 (11%)
199:221 (6%)
view
13 x 2 build
build
build-and-unit-tests.yml
signedbuild.yml
23:37 (21%)
20:34 (4%)
view
13 x 2 build
build
signedbuild.yml
signedbuild.yml
87:101 (4%)
216:230 (4%)
view
13 x 2 build
build
signedbuild.yml
signedbuild.yml
20:34 (4%)
216:230 (4%)
view
13 x 2 build
build
build-and-unit-tests.yml
signedbuild.yml
23:37 (21%)
216:230 (4%)
view
12 x 2 src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
ImageHighlighter.cs
OverlayHighlighter.cs
312:338 (8%)
241:267 (10%)
view
12 x 2 src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/Dialogs
xaml
TextRangeActionView.xaml
MoveTextRangeDialog.xaml
25:36 (19%)
28:39 (19%)
view
12 x 2 src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/ActionViews
GeneralActionView.xaml.cs
ReturnA11yElementsView.xaml.cs
66:85 (12%)
183:202 (7%)
view
12 x 2 src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/ActionViews
ReturnA11yElementsView.xaml.cs
TextRangeActionView.xaml.cs
183:202 (7%)
57:76 (15%)
view
12 x 2 src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/Dialogs
xaml
ReturnA11yElementsView.xaml
MoveTextRangeDialog.xaml
35:46 (9%)
28:39 (19%)
view
11 x 2 src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
TextTip.cs
TextTip.cs
250:271 (3%)
393:413 (3%)
view
Duplicated Units
The list of top 17 duplicated units.
See data for all 17 unit duplicates...
Size#FoldersFilesLinesCode
23 x 2 src/AccessibilityInsight...redUx/Controls/TestTabs
src/AccessibilityInsight...redUx/Controls/TestTabs
ColorContrast.xaml.cs
TabStopControl.xaml.cs
197:221 
199:223 
view
20 x 3 src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/ActionViews
GeneralActionView.xaml.cs
ReturnA11yElementsView.xaml.cs
TextRangeActionView.xaml.cs
66:86 
183:203 
57:77 
view
18 x 3 src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
LineBorder.cs
TextTip.cs
Win32SnapshotButton.cs
228:250 
496:518 
181:203 
view
13 x 2 src/AccessibilityInsight...s.AzureDevOps/FileIssue
src/AccessibilityInsight...x/Controls/SettingsTabs
WebviewRuntimeNotInstalled.xaml.cs
AboutTabControl.xaml.cs
28:43 
62:77 
view
13 x 3 src/AccessibilityInsights.SharedUx/Dialogs
src/AccessibilityInsights/Modes
src/AccessibilityInsights/Modes
StartUpModeControl.xaml.cs
LiveModeControl.xaml.cs
TestModeControl.xaml.cs
124:137 
494:507 
473:486 
view
11 x 2 src/AccessibilityInsights.SharedUx/ActionViews
src/AccessibilityInsights.SharedUx/ActionViews
GeneralActionView.xaml.cs
TextRangeActionView.xaml.cs
157:168 
153:164 
view
11 x 2 src/AccessibilityInsight...redUx/Controls/TestTabs
src/AccessibilityInsight...redUx/Controls/TestTabs
AutomatedChecksControl.xaml.cs
TabStopControl.xaml.cs
838:849 
551:562 
view
10 x 3 src/AccessibilityInsights.Extensions.AzureDevOps
src/AccessibilityInsights/Modes
src/AccessibilityInsights/Modes
ConfigurationControl.xaml.cs
SnapshotModeControl.xaml.cs
TestModeControl.xaml.cs
302:312 
270:280 
301:311 
view
10 x 2 src/AccessibilityInsight...tensions.TelemetryTests
src/AccessibilityInsight...tensions.TelemetryTests
OSHelpersUnitTests.cs
OSHelpersUnitTests.cs
35:46 
49:60 
view
10 x 2 src/AccessibilityInsights.SharedUx/Controls
src/AccessibilityInsights/Modes
EventConfigurationControl.xaml.cs
LiveModeControl.xaml.cs
258:268 
250:260 
view
10 x 2 src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
ImageHighlighter.cs
OverlayHighlighter.cs
318:329 
247:258 
view
9 x 2 src/AccessibilityInsight...x/Controls/SettingsTabs
src/AccessibilityInsights
ApplicationSettingsControl.xaml.cs
MainWindow.xaml.cs
113:122 
940:949 
view
9 x 2 src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
LineBorder.cs
TextTip.cs
252:261 
520:529 
view
9 x 2 src/AccessibilityInsights.SharedUx/Highlighting
src/AccessibilityInsights.SharedUx/Highlighting
LineBorder.cs
Win32SnapshotButton.cs
271:281 
311:321 
view
9 x 2 src/AccessibilityInsights/MainWindowHelpers
src/AccessibilityInsights/MainWindowHelpers
CCAMode.cs
InspectMode.cs
94:105 
87:98 
view
6 x 2 src/AccessibilityInsight...reDevOpsTests/FileIssue
src/AccessibilityInsight...reDevOpsTests/FileIssue
FileIssueHelpersTests.cs
FileIssueHelpersTests.cs
197:203 
207:213 
view
6 x 2 src/AccessibilityInsights.SharedUx/Dialogs
src/AccessibilityInsights.SharedUx/Dialogs
ControlPatternDialog.xaml.cs
TextPatternExplorerDialog.xaml.cs
31:37 
567:573 
view