Skip to content

Commit 32ea1a8

Browse files
committed
check invoked members data type for being from Abstractions
- add relevant tests - closes #74
1 parent 34bcdcf commit 32ea1a8

File tree

13 files changed

+179
-5
lines changed

13 files changed

+179
-5
lines changed

System.IO.Abstractions.Analyzers.Tests/Analyzers/DirectoryAnalyzerTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,13 @@
77

88
namespace System.IO.Abstractions.Analyzers.Tests.Analyzers
99
{
10-
public class DirectoryAnalyzerTests: CSharpDiagnosticAnalyzerTest<DirectoryAnalyzer>
10+
public class DirectoryAnalyzerTests : CSharpDiagnosticAnalyzerTest<DirectoryAnalyzer>
1111
{
1212
[Theory]
1313
[InlineData("Valid.txt")]
1414
[InlineData("FalsePositive.txt")]
1515
[InlineData("ModelObjectFalsePositive.txt")]
16+
[InlineData("UsingStaticFalsePositive.txt")]
1617
public void Analyzer_is_not_triggered(string filename)
1718
{
1819
var source = ReadFile(filename);

System.IO.Abstractions.Analyzers.Tests/Analyzers/DirectoryInfoAnalyzerTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,12 @@
77

88
namespace System.IO.Abstractions.Analyzers.Tests.Analyzers
99
{
10-
public class DirectoryInfoAnalyzerTests: CSharpDiagnosticAnalyzerTest<DirectoryInfoAnalyzer>
10+
public class DirectoryInfoAnalyzerTests : CSharpDiagnosticAnalyzerTest<DirectoryInfoAnalyzer>
1111
{
1212
[Theory]
1313
[InlineData("Valid.txt")]
1414
[InlineData("ModelObjectFalsePositive.txt")]
15+
[InlineData("UsingStaticFalsePositive.txt")]
1516
public void Analyzer_is_not_triggered(string filename)
1617
{
1718
var source = ReadFile(filename);

System.IO.Abstractions.Analyzers.Tests/Analyzers/FileAnalyzerTests.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ public class FileAnalyzerTests : CSharpDiagnosticAnalyzerTest<FileAnalyzer>
1111
{
1212
[Theory]
1313
[InlineData("Valid.txt")]
14+
[InlineData("UsingStaticFalsePositive.txt")]
1415
public void Analyzer_is_not_triggered(string filename)
1516
{
1617
var source = ReadFile(filename);

System.IO.Abstractions.Analyzers.Tests/Analyzers/FileInfoAnalyzerTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,11 @@
77

88
namespace System.IO.Abstractions.Analyzers.Tests.Analyzers
99
{
10-
public class FileInfoAnalyzerTests: CSharpDiagnosticAnalyzerTest<FileInfoAnalyzer>
10+
public class FileInfoAnalyzerTests : CSharpDiagnosticAnalyzerTest<FileInfoAnalyzer>
1111
{
1212
[Theory]
1313
[InlineData("Valid.txt")]
14+
[InlineData("UsingStaticFalsePositive.txt")]
1415
public void Analyzer_is_not_triggered(string filename)
1516
{
1617
var source = ReadFile(filename);

System.IO.Abstractions.Analyzers.Tests/Analyzers/FileStreamAnalyzerTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,11 @@
77

88
namespace System.IO.Abstractions.Analyzers.Tests.Analyzers
99
{
10-
public class FileStreamAnalyzerTests: CSharpDiagnosticAnalyzerTest<FileStreamAnalyzer>
10+
public class FileStreamAnalyzerTests : CSharpDiagnosticAnalyzerTest<FileStreamAnalyzer>
1111
{
1212
[Theory]
1313
[InlineData("Valid.txt")]
14+
[InlineData("UsingStaticFalsePositive.txt")]
1415
public void Analyzer_is_not_triggered(string filename)
1516
{
1617
var source = ReadFile(filename);

System.IO.Abstractions.Analyzers.Tests/Analyzers/PathAnalyzerTests.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ public class PathAnalyzerTests : CSharpDiagnosticAnalyzerTest<PathAnalyzer>
1111
{
1212
[Theory]
1313
[InlineData("Valid.txt")]
14+
[InlineData("UsingStaticFalsePositive.txt")]
1415
public void Analyzer_is_not_triggered(string filename)
1516
{
1617
var source = ReadFile(filename);
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
namespace SomeNameSpace.Mocking
2+
{
3+
using System.IO.Abstractions;
4+
public static class FileSystemProxy
5+
{
6+
internal static IDirectory Directory { get; }
7+
}
8+
}
9+
10+
namespace SomeNameSpace
11+
{
12+
using static SomeNameSpace.Mocking.FileSystemProxy;
13+
public class UsingStaticFalsePositive
14+
{
15+
public UsingStaticFalsePositive()
16+
{
17+
}
18+
19+
public void SomeMethod()
20+
{
21+
const string path = "C:\\temp";
22+
23+
Directory.Delete(path);
24+
}
25+
}
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
namespace SomeNameSpace.Mocking
2+
{
3+
using System.IO.Abstractions;
4+
public static class FileSystemProxy
5+
{
6+
internal static IDirectoryInfo DirectoryInfo { get; }
7+
}
8+
}
9+
10+
namespace SomeNameSpace
11+
{
12+
using System.IO.Abstractions;
13+
using static SomeNameSpace.Mocking.FileSystemProxy;
14+
public class UsingStaticFalsePositive
15+
{
16+
public UsingStaticFalsePositive()
17+
{
18+
}
19+
20+
public void SomeMethod()
21+
{
22+
const string path = "C:\\temp.txt";
23+
IDirectoryInfo dirInfo = DirectoryInfo.FromDirectoryName(path);
24+
}
25+
}
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
namespace SomeNameSpace.Mocking
2+
{
3+
using System.IO.Abstractions;
4+
public static class FileSystemProxy
5+
{
6+
internal static IFile File { get; }
7+
}
8+
}
9+
10+
namespace SomeNameSpace
11+
{
12+
using static SomeNameSpace.Mocking.FileSystemProxy;
13+
public class UsingStaticFalsePositive
14+
{
15+
public UsingStaticFalsePositive()
16+
{
17+
}
18+
19+
public void SomeMethod()
20+
{
21+
const string filePath = "C:\\temp.txt";
22+
23+
File.Delete(filePath);
24+
}
25+
}
26+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
namespace SomeNameSpace.Mocking
2+
{
3+
using System.IO.Abstractions;
4+
public static class FileSystemProxy
5+
{
6+
internal static IFileInfo FileInfo { get; }
7+
}
8+
}
9+
10+
namespace SomeNameSpace
11+
{
12+
using System.IO.Abstractions;
13+
using static SomeNameSpace.Mocking.FileSystemProxy;
14+
public class UsingStaticFalsePositive
15+
{
16+
public UsingStaticFalsePositive()
17+
{
18+
}
19+
20+
public void SomeMethod()
21+
{
22+
const string path = "C:\\temp.txt";
23+
24+
IFileInfo fileInf = FileInfo.FromFileName(path);
25+
}
26+
}
27+
}

0 commit comments

Comments
 (0)