Skip to content

Commit 6a34389

Browse files
author
Namikoye Lusweti
committed
Merging changes
2 parents c2f7597 + c71fda2 commit 6a34389

File tree

13 files changed

+5148
-1
lines changed

13 files changed

+5148
-1
lines changed

.config/guardian/.gdnsuppress

Lines changed: 2436 additions & 0 deletions
Large diffs are not rendered by default.

.gdn.gdnsuppress

Lines changed: 2436 additions & 0 deletions
Large diffs are not rendered by default.

AssemblyInfo/SharedAssemblyInfo.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
[assembly: AssemblyCompany("Microsoft")]
1010
[assembly: AssemblyProduct("Windows Protocol Test Suites")]
11-
[assembly: AssemblyVersion("4.25.3.0")]
11+
[assembly: AssemblyVersion("4.25.4.0")]
1212
#if !NETSTANDARD2_0
1313
[assembly: RequiresPreviewFeatures]
1414
#endif
103 KB
Binary file not shown.
Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
# File Server Protocol Family Setup Script User Guide
2+
3+
## 1. Introduction
4+
5+
This guide provides instructions for using the automated setup scripts to configure test environments for the File Server Protocol Family Test Suite. These scripts automate many of the manual steps described in the [FileServerUserGuide.md](https://github.com/microsoft/WindowsProtocolTestSuites/blob/main/TestSuites/FileServer/docs/FileServerUserGuide.md).
6+
7+
The scripts support three environment configurations:
8+
- **WORKGROUP** - Simple peer-to-peer environment with two machines
9+
- **DOMAIN** - Domain environment with three or more machines. Most closely resembles a real world environment containing a Domain Controller
10+
- **CLUSTER** - Domain environment with failover clustering for high availability testing
11+
12+
![](./image/FileServerUserGuide/image1.png)**Tip**
13+
14+
To learn more about the common environment in which test cases are run for all **Test Suites**, see the [Protocol Test Framework User Guide](https://github.com/microsoft/ProtocolTestFramework/blob/main/docs/PTFUserGuide.md).
15+
16+
17+
## 2. Prerequisites
18+
19+
Before using these scripts, ensure you have:
20+
- Windows systems with supported operating systems
21+
- SUT: Windows Server 2012 R2 or later
22+
- Driver: Operating system that can install .NET 5.0
23+
- Domain Controller (if applicable): Windows Server 2012 R2 or later
24+
- Network connectivity between all machines
25+
- Administrator access on all machines
26+
- Sufficient disk space (at least 60 GB per machine)
27+
- Windows PowerShell 5.1 or later
28+
-
29+
### Network Setup
30+
31+
### Workgroup Network Environment
32+
33+
-- **REFER to [FileServerUserGuide.md](https://github.com/microsoft/WindowsProtocolTestSuites/blob/main/TestSuites/FileServer/docs/FileServerUserGuide.md)** --
34+
35+
### Computer Setup
36+
37+
### Workgroup Environment
38+
The WORKGROUP environment consists of two test machines as follows:
39+
40+
- Driver computer - System on which the test suites will be installed and run
41+
- SUT computer - **S**ystem **U**nder **T**est
42+
43+
Before you begin, create your configuration file. This will be used to configure your machines and the test suites. An example is provided in TestSuites\FileServer\Setup\Workgroup\BaseConfig.json
44+
45+
Create Workgroup-Package.zip by running TestSuites\FileServer\Setup\Create-Package.ps1 -Scenario Workgroup -ConfigPath "Path to your\Config.json"
46+
47+
Perform the following steps to set up the **SUT Computer**:
48+
1. Set up network as described in [Workgroup Network Environment](https://github.com/microsoft/WindowsProtocolTestSuites/blob/main/TestSuites/FileServer/docs/FileServerUserGuide.md#4.1)
49+
2. Enable Administrator Account, run these scripts using Admin Account
50+
3. Set Powershell Execution Policy Unrestricted [NOTE] Temporary Unrestricted while I restore signing pipeline
51+
```
52+
Set-ExecutionPolicy -ExecutionPolicy Unrestricted
53+
```
54+
4. Copy Workgroup-Package.zip into your SUT
55+
5. Extract in your working directory
56+
6. Run Configure_SUT.ps1
57+
58+
Perform the following steps to set up the **Driver Computer**:
59+
1. Set up network as described in [Workgroup Network Environment](https://github.com/microsoft/WindowsProtocolTestSuites/blob/main/TestSuites/FileServer/docs/FileServerUserGuide.md#4.1)
60+
2. Enable Administrator Account, run these scripts using Admin Account
61+
3. Set Powershell Execution Policy
62+
4. Copy Workgroup-Package.zip into your Driver computer
63+
5. Extract in your working directory
64+
6. Run Configure_Driver.ps1
65+
66+
67+
### Domain Environment
68+
69+
The DOMAIN environment consists of at least three test machines as follows:
70+
71+
- Domain Controller - Responds to security authentication requests such as logging in, checking permissions, and so on, within the domain.
72+
- Driver computer - System on which the test suites will be installed and run
73+
- SUT computer - **S**ystem **U**nder **T**est
74+
75+
Before you begin, create your configuration file. This will be used to configure your machines and the test suites. An example is provided in TestSuites\FileServer\Setup\Domain\BaseConfig.json
76+
77+
Create Domain-Package.zip by running TestSuites\FileServer\Setup\Create-Package.ps1 -Scenario Domain -ConfigPath "Path to your\Config.json"
78+
79+
80+
Perform the following steps to set up the Domain Controller:
81+
82+
1. Set up network as described in Domain Network Environment
83+
2. Set Powershell Execution Policy
84+
85+
`Set-ExecutionPolicy -ExecutionPolicy Unrestricted`
86+
87+
3. Copy Domain-Package.zip into your DC
88+
4. Extract in your working directory
89+
5. Run Configure_DC.ps1
90+
91+
Your computer will restart several times but if configured correctly, will automatically log in and continue in the background.
92+
93+
Ensure your domain controller is fully set up before setting up the other machines.
94+
95+
96+
Perform the following steps to set up the SUT Computer:
97+
98+
1. Set up network as described in Domain Network Environment
99+
2. Enable Administrator Account, run these scripts using Admin Account
100+
3. Set Powershell Execution Policy Unrestricted [NOTE] Temporary Unrestricted while I restore signing pipeline
101+
102+
`Set-ExecutionPolicy -ExecutionPolicy Unrestricted`
103+
104+
4. Copy Domain-Package.zip into your SUT
105+
5. Extract in your working directory
106+
6. Run Configure_SUT.ps1
107+
108+
Perform the following steps to set up the Driver Computer:
109+
110+
1. Set up network as described in Domain Network Environment
111+
2. Enable Administrator Account, run these scripts using Admin Account
112+
3. Set Powershell Execution Policy
113+
4. Copy Domain-Package.zip into your Driver computer
114+
5. Extract in your working directory
115+
6. Run Configure_Driver.ps1
116+
117+
118+
### Cluster Environment
119+
120+
The CLUSTER environment consists of the following test machines:
121+
122+
- Domain Controller - Responds to security authentication requests such as logging in, checking permissions, and so on, within the domain.
123+
- Driver computer - System on which the test suites will be installed and run
124+
- SUT computer - **S**ystem **U**nder **T**est
125+
126+
Before you begin, create your configuration file. This will be used to configure your machines and the test suites. An example is provided in TestSuites\FileServer\Setup\Domain\BaseConfig.json
127+
128+
Create Domain-Package.zip by running TestSuites\FileServer\Setup\Create-Package.ps1 -Scenario Domain -ConfigPath "Path to your\Config.json"
129+
130+
131+
Perform the following steps to set up the Domain Controller:
132+
133+
1. Set up network as described in Domain Network Environment
134+
2. Set Powershell Execution Policy
135+
136+
`Set-ExecutionPolicy -ExecutionPolicy Unrestricted`
137+
138+
3. Copy Domain-Package.zip into your DC
139+
4. Extract in your working directory
140+
5. Run Configure_DC.ps1
141+
142+
Your computer will restart several times but if configured correctly, will automatically log in and continue in the background.
143+
144+
Ensure your domain controller is fully set up before setting up the other machines.
145+
146+
147+
Perform the following steps to set up the SUT Computer:
148+
149+
1. Set up network as described in Domain Network Environment
150+
2. Enable Administrator Account, run these scripts using Admin Account
151+
3. Set Powershell Execution Policy Unrestricted [NOTE] Temporary Unrestricted while I restore signing pipeline
152+
153+
`Set-ExecutionPolicy -ExecutionPolicy Unrestricted`
154+
155+
4. Copy Domain-Package.zip into your SUT
156+
5. Extract in your working directory
157+
6. Run Configure_SUT.ps1
158+
159+
Perform the following steps to set up the Driver Computer:
160+
161+
1. Set up network as described in Domain Network Environment
162+
2. Enable Administrator Account, run these scripts using Admin Account
163+
3. Set Powershell Execution Policy
164+
4. Copy Domain-Package.zip into your Driver computer
165+
5. Extract in your working directory
166+
6. Run Configure_Driver.ps1

TestSuites/FileServer/src/Auth/TestSuite/Authentication/KerberosAuthentication/KerberosAuthentication.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,11 @@ protected override void TestInitialize()
8888
KDCIP = TestConfig.DomainName.ParseIPAddress().ToString();
8989
}
9090

91+
if (TestConfig.Platform == Platform.WindowsServer2025)
92+
{
93+
BaseTestSite.Assert.Inconclusive("The Open Specification hasn't captured the change for kerberos authentication in domain environment for Server 2025.");
94+
}
95+
9196
KDCPort = DefaultKdcPort;
9297
OidPkt = KerberosConstValue.OidPkt.KerberosToken;
9398

TestSuites/FileServer/src/Common/Adapter/TestConfigBase.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -933,5 +933,10 @@ public enum Platform
933933
/// Windows Server v2025
934934
/// </summary>
935935
WindowsServer2025 = 0x10000013,
936+
937+
/// <summary>
938+
/// Windows 11
939+
/// </summary>
940+
Windows11 = 0x10000014,
936941
}
937942
}

TestSuites/FileServer/src/FSA/TestSuite/CreateFile/CreateFile_BackSlash.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,11 @@ public void CreateDirectory_EndWithBackSlash()
4949
[Description("Try to create a file end with invalid backslash and expect failure.")]
5050
public void CreateFile_EndWithInvalidBackSlash()
5151
{
52+
if (fsaAdapter.TestConfig.Platform == Platform.WindowsServer2025)
53+
{
54+
BaseTestSite.Assert.Inconclusive("The Open Specification hasn't captured the change for files that end with backslash for Server 2025.");
55+
}
56+
5257
BaseTestSite.Log.Add(LogEntryKind.TestStep, "Test case steps:");
5358
MessageStatus status;
5459

TestSuites/FileServer/src/FSA/TestSuite/QueryDirectory/QueryDirectoryTestCases.cs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,11 @@ public void BVT_QueryDirectory_FileNamesInformation()
263263
[Description("Verify the Query Directory response with FileDirectoryInformation from the server.")]
264264
public void BVT_QueryDirectory_FileDirectoryInformation()
265265
{
266+
if (fsaAdapter.TestConfig.Platform == Platform.WindowsServer2025)
267+
{
268+
BaseTestSite.Assert.Inconclusive("The Open Specification hasn't captured the change for FileDirectoryInformation for Server 2025.");
269+
}
270+
266271
byte[] outputBuffer;
267272
string fileName;
268273
FILEID dirFileId;
@@ -287,6 +292,11 @@ public void BVT_QueryDirectory_FileDirectoryInformation()
287292
[Description("Verify the Query Directory response with FileFullDirectoryInformation from the server.")]
288293
public void BVT_QueryDirectory_FileFullDirectoryInformation()
289294
{
295+
if (fsaAdapter.TestConfig.Platform == Platform.WindowsServer2025)
296+
{
297+
BaseTestSite.Assert.Inconclusive("The Open Specification hasn't captured the change for FileFullDirectoryInformation for Server 2025.");
298+
}
299+
290300
byte[] outputBuffer;
291301
string fileName;
292302
FILEID dirFileId;
@@ -311,6 +321,11 @@ public void BVT_QueryDirectory_FileFullDirectoryInformation()
311321
[Description("Verify the Query Directory response with FileIdFullDirectoryInformation from the server.")]
312322
public void BVT_QueryDirectory_FileIdFullDirectoryInformation()
313323
{
324+
if (fsaAdapter.TestConfig.Platform == Platform.WindowsServer2025)
325+
{
326+
BaseTestSite.Assert.Inconclusive("The Open Specification hasn't captured the change for FileIdFullDirectoryInformation for Server 2025.");
327+
}
328+
314329
byte[] outputBuffer;
315330
string fileName;
316331
FILEID dirFileId;
@@ -369,6 +384,11 @@ public void BVT_QueryDirectory_FileIdFullDirectoryInformation()
369384
[Description("Verify the Query Directory response with FileBothDirectoryInformation from the server.")]
370385
public void BVT_QueryDirectory_FileBothDirectoryInformation()
371386
{
387+
if (fsaAdapter.TestConfig.Platform == Platform.WindowsServer2025)
388+
{
389+
BaseTestSite.Assert.Inconclusive("The Open Specification hasn't captured the change for FileBothDirectoryInformation for Server 2025.");
390+
}
391+
372392
byte[] outputBuffer;
373393
string fileName;
374394
FILEID dirFileId;
@@ -390,6 +410,11 @@ public void BVT_QueryDirectory_FileBothDirectoryInformation()
390410
[Description("Verify the Query Directory response with FileIdBothDirectoryInformation from the server.")]
391411
public void BVT_QueryDirectory_FileIdBothDirectoryInformation()
392412
{
413+
if (fsaAdapter.TestConfig.Platform == Platform.WindowsServer2025)
414+
{
415+
BaseTestSite.Assert.Inconclusive("The Open Specification hasn't captured the change for FileIdBothDirectoryInformation for Server 2025.");
416+
}
417+
393418
byte[] outputBuffer;
394419
string fileName;
395420
FILEID dirFileId;

TestSuites/FileServer/src/SMB2/TestSuite/Basic/SMB2Basic.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1580,6 +1580,10 @@ public void BVT_SMB2Basic_ChangeNotify_ChangeStreamName()
15801580
[Description("This test case is designed to verify CHANGE_NOTIFY with CompletionFilter FILE_NOTIFY_CHANGE_STREAM_SIZE is handled correctly.")]
15811581
public void BVT_SMB2Basic_ChangeNotify_ChangeStreamSize()
15821582
{
1583+
if (TestConfig.Platform == Platform.WindowsServer2025)
1584+
{
1585+
BaseTestSite.Assert.Inconclusive("The Open Specification hasn't captured the change for smb3 connect data for Server 2025.");
1586+
}
15831587
string testDirectory = CreateTestDirectory(TestConfig.SutComputerName, TestConfig.BasicFileShare);
15841588
BaseTestSite.Log.Add(
15851589
LogEntryKind.Debug,

0 commit comments

Comments
 (0)