Skip to content

Commit 2ffb094

Browse files
author
Brian McBrayer
committed
Addressed code review comments.
1 parent 76b93a0 commit 2ffb094

File tree

7 files changed

+23
-7
lines changed

7 files changed

+23
-7
lines changed

Directory.Build.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
<DefineConstants Condition="'$(TargetFramework)' != 'net461'">$(DefineConstants);FEATURE_FILE_SYSTEM_ACL_EXTENSIONS</DefineConstants>
1414
<DefineConstants Condition="'$(TargetFramework)' == 'net6.0' OR '$(TargetFramework)' == 'net5.0' OR '$(TargetFramework)' == 'netcoreapp3.1' OR '$(TargetFramework)' == 'netstandard2.1'">$(DefineConstants);FEATURE_ASYNC_FILE;FEATURE_ENUMERATION_OPTIONS;FEATURE_ADVANCED_PATH_OPERATIONS;FEATURE_PATH_JOIN_WITH_SPAN</DefineConstants>
1515
<DefineConstants Condition="'$(TargetFramework)' == 'net6.0' OR '$(TargetFramework)' == 'net5.0'">$(DefineConstants);FEATURE_FILE_MOVE_WITH_OVERWRITE;FEATURE_SUPPORTED_OS_ATTRIBUTE;FEATURE_FILE_SYSTEM_WATCHER_FILTERS;FEATURE_ENDS_IN_DIRECTORY_SEPARATOR;FEATURE_PATH_JOIN_WITH_PARAMS;FEATURE_PATH_JOIN_WITH_FOUR_PATHS</DefineConstants>
16+
<DefineConstants Condition="'$(TargetFramework)' == 'net6.0'">$(DefineConstants);FEATURE_FILE_SYSTEM_INFO_LINK_TARGET</DefineConstants>
1617
</PropertyGroup>
1718
<ItemGroup>
1819
<PackageReference Include="Nerdbank.GitVersioning" Version="3.4.255">

src/System.IO.Abstractions.TestingHelpers/MockDirectoryInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,11 +131,11 @@ public override DateTime LastWriteTimeUtc
131131
set { GetMockFileDataForWrite().LastWriteTime = value.ToLocalTime(); }
132132
}
133133

134-
#if NET6_0_OR_GREATER
134+
#if FEATURE_FILE_SYSTEM_INFO_LINK_TARGET
135135
/// <inheritdoc />
136136
public override string LinkTarget
137137
{
138-
get { return null; }
138+
get { return GetMockFileDataForRead().LinkTarget; }
139139
}
140140
#endif
141141

src/System.IO.Abstractions.TestingHelpers/MockFileData.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,9 @@ public MockFileData(MockFileData template)
101101
CreationTime = template.CreationTime;
102102
LastAccessTime = template.LastAccessTime;
103103
LastWriteTime = template.LastWriteTime;
104+
#if FEATURE_FILE_SYSTEM_INFO_LINK_TARGET
105+
LinkTarget = template.LinkTarget;
106+
#endif
104107
}
105108

106109
/// <summary>
@@ -135,6 +138,13 @@ public string TextContents
135138
/// </summary>
136139
public DateTimeOffset LastWriteTime { get; set; } = new DateTimeOffset(2010, 01, 04, 00, 00, 00, TimeSpan.FromHours(4));
137140

141+
#if FEATURE_FILE_SYSTEM_INFO_LINK_TARGET
142+
/// <summary>
143+
/// Gets or sets the link target of the <see cref="MockFileData"/>.
144+
/// </summary>
145+
public string LinkTarget { get; set; } = null;
146+
#endif
147+
138148
/// <summary>
139149
/// Casts a string into <see cref="MockFileData"/>.
140150
/// </summary>

src/System.IO.Abstractions.TestingHelpers/MockFileInfo.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -178,11 +178,16 @@ public override DateTime LastWriteTimeUtc
178178
}
179179
}
180180

181-
#if NET6_0_OR_GREATER
181+
#if FEATURE_FILE_SYSTEM_INFO_LINK_TARGET
182182
/// <inheritdoc />
183183
public override string LinkTarget
184184
{
185-
get { return null; }
185+
get
186+
{
187+
// TODO Refactor to match #791 style (also hold on merge until that is merged)
188+
if (MockFileData == null) throw CommonExceptions.FileNotFound(path);
189+
return MockFileData.LinkTarget;
190+
}
186191
}
187192
#endif
188193

src/System.IO.Abstractions/DirectoryInfoWrapper.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ public override DateTime LastWriteTimeUtc
9696
set { instance.LastWriteTimeUtc = value; }
9797
}
9898

99-
#if NET6_0_OR_GREATER
99+
#if FEATURE_FILE_SYSTEM_INFO_LINK_TARGET
100100
/// <inheritdoc />
101101
public override string LinkTarget
102102
{

src/System.IO.Abstractions/FileInfoWrapper.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public override DateTime LastWriteTimeUtc
9494
set { instance.LastWriteTimeUtc = value; }
9595
}
9696

97-
#if NET6_0_OR_GREATER
97+
#if FEATURE_FILE_SYSTEM_INFO_LINK_TARGET
9898
/// <inheritdoc />
9999
public override string LinkTarget
100100
{

src/System.IO.Abstractions/FileSystemInfoBase.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ internal FileSystemInfoBase() { }
5454
/// <inheritdoc cref="FileSystemInfo.LastWriteTimeUtc"/>
5555
public abstract DateTime LastWriteTimeUtc { get; set; }
5656

57-
#if NET6_0_OR_GREATER
57+
#if FEATURE_FILE_SYSTEM_INFO_LINK_TARGET
5858
/// <inheritdoc cref="FileSystemInfo.LinkTarget"/>
5959
public abstract string LinkTarget { get; }
6060
#endif

0 commit comments

Comments
 (0)