@@ -8,14 +8,20 @@ namespace System.IO.Tests
8
8
// Tests that are valid for File and FileInfo
9
9
public abstract class FileGetSetAttributes : BaseGetSetAttributes
10
10
{
11
- [ Theory ]
12
- [ InlineData ( FileAttributes . ReadOnly ) ]
13
- [ InlineData ( FileAttributes . Normal ) ]
11
+ [ Fact ]
14
12
[ PlatformSpecific ( TestPlatforms . AnyUnix ) ]
15
- public void SettingAttributes_Unix ( FileAttributes attributes )
13
+ public void SettingAttributes_Unix_Normal ( )
16
14
{
17
15
string path = CreateItem ( ) ;
18
- AssertSettingAttributes ( path , attributes ) ;
16
+ AssertSettingAttributes ( path , FileAttributes . Normal ) ;
17
+ }
18
+
19
+ [ ConditionalFact ( nameof ( CanBeReadOnly ) ) ]
20
+ [ PlatformSpecific ( TestPlatforms . AnyUnix ) ]
21
+ public void SettingAttributes_Unix_ReadOnly ( )
22
+ {
23
+ string path = CreateItem ( ) ;
24
+ AssertSettingAttributes ( path , FileAttributes . ReadOnly ) ;
19
25
}
20
26
21
27
[ Theory ]
@@ -28,16 +34,24 @@ public void SettingAttributes_OSXAndFreeBSD(FileAttributes attributes)
28
34
}
29
35
30
36
[ Theory ]
31
- [ InlineData ( FileAttributes . ReadOnly ) ]
32
37
[ InlineData ( FileAttributes . Hidden ) ]
33
38
[ InlineData ( FileAttributes . System ) ]
34
39
[ InlineData ( FileAttributes . Archive ) ]
35
40
[ InlineData ( FileAttributes . Normal ) ]
36
41
[ InlineData ( FileAttributes . Temporary ) ]
42
+ public void SettingAttributes_Windows ( FileAttributes attributes )
43
+ {
44
+ string path = CreateItem ( ) ;
45
+ AssertSettingAttributes ( path , attributes ) ;
46
+ }
47
+
48
+ [ Theory ]
49
+ [ InlineData ( FileAttributes . ReadOnly ) ]
37
50
[ InlineData ( FileAttributes . ReadOnly | FileAttributes . Hidden ) ]
38
51
[ PlatformSpecific ( TestPlatforms . Windows ) ]
39
- public void SettingAttributes_Windows ( FileAttributes attributes )
52
+ public void SettingAttributes_Windows_ReadOnly ( FileAttributes attributes )
40
53
{
54
+ if ( ! CanBeReadOnly ) return ;
41
55
string path = CreateItem ( ) ;
42
56
AssertSettingAttributes ( path , attributes ) ;
43
57
}
0 commit comments