Skip to content

Commit f07957c

Browse files
committed
test: 增加测试工程
1 parent 18eb880 commit f07957c

3 files changed

Lines changed: 97 additions & 1 deletion

File tree

test/UnitTestOpcDa/UnitTest1.cs

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
// Copyright (c) Argo Zhang (argo@163.com). All rights reserved.
2+
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3+
// Website: https://www.blazor.zone or https://argozhang.github.io/
4+
5+
namespace UnitTestOpcDa;
6+
7+
using BootstrapBlazor.OpcDa;
8+
using Opc.Da;
9+
10+
public class UnitTest1
11+
{
12+
[Fact]
13+
public async Task Test_Ok()
14+
{
15+
var server = new OpcServer();
16+
var ret = await server.Connect("opcda://localhost/Kepware.KEPServerEX.V6", CancellationToken.None);
17+
Assert.True(ret);
18+
Assert.True(server.IsConnected);
19+
20+
var items = new Item[]
21+
{
22+
new() { ItemName = "Simulation Examples.Functions.Ramp1", SamplingRate = 1000, ClientHandle = 1 },
23+
new() { ItemName = "Simulation Examples.Functions.Ramp2", SamplingRate = 1000, ClientHandle = 2 }
24+
};
25+
26+
var values = server.Read("Simulation Examples.Functions.Ramp1", "Simulation Examples.Functions.Ramp2");
27+
Assert.Equal(2, values.Count);
28+
Assert.All(values, v => Assert.Equal(qualityBits.good, v.Quality.QualityBits));
29+
30+
server.Disconnect();
31+
Assert.False(server.IsConnected);
32+
33+
server.Dispose();
34+
}
35+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
3+
<PropertyGroup>
4+
<TargetFramework>net9.0</TargetFramework>
5+
<ImplicitUsings>enable</ImplicitUsings>
6+
<Nullable>enable</Nullable>
7+
<IsPackable>false</IsPackable>
8+
</PropertyGroup>
9+
10+
<ItemGroup>
11+
<PackageReference Include="coverlet.collector" Version="6.0.2" />
12+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
13+
<PackageReference Include="xunit" Version="2.9.2" />
14+
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2" />
15+
</ItemGroup>
16+
17+
<ItemGroup>
18+
<ProjectReference Include="..\..\src\extensions\BootstrapBlazor.OpcDa\BootstrapBlazor.OpcDa.csproj" />
19+
</ItemGroup>
20+
21+
<ItemGroup>
22+
<Using Include="Xunit" />
23+
</ItemGroup>
24+
25+
<ItemGroup>
26+
<Using Remove="BootstrapBlazor.Components" />
27+
<Using Remove="Microsoft.AspNetCore.Components" />
28+
<Using Remove="Microsoft.Extensions.DependencyInjection" />
29+
</ItemGroup>
30+
31+
</Project>

test/UnitTestOpcUa/UnitTest1.cs

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public async Task Connect_Ok()
3939
var endpoint = new ConfiguredEndpoint(null, endpointDescription, endpointConfiguration);
4040

4141
// 创建会话
42-
var identity = new UserIdentity(); // 匿名登录,或提供用户名密码
42+
var identity = new UserIdentity("BB", "123456@163.com"); // 匿名登录,或提供用户名密码
4343
var session = await Session.Create(
4444
config,
4545
endpoint,
@@ -79,5 +79,35 @@ public async Task FindServersAsync()
7979
sessionTimeout: 60000,
8080
identity: null,
8181
preferredLocales: null);
82+
83+
// Browser
84+
var browser = new Browser(session)
85+
{
86+
BrowseDirection = BrowseDirection.Forward,
87+
NodeClassMask = (int)NodeClass.Variable | (int)NodeClass.Object | (int)NodeClass.Method,
88+
ReferenceTypeId = ReferenceTypeIds.HierarchicalReferences,
89+
IncludeSubtypes = true,
90+
MaxReferencesReturned = 1000
91+
};
92+
93+
// 浏览节点
94+
var references = browser.Browse(ObjectIds.ObjectsFolder);
95+
96+
var readValueId = new ReadValueId
97+
{
98+
NodeId = new NodeId("ns=2;s=Simulation Examples.Functions.Ramp1"),
99+
AttributeId = Attributes.Value
100+
};
101+
102+
var readValues = new ReadValueIdCollection { readValueId };
103+
104+
// 读取节点值
105+
var resp = await session.ReadAsync(
106+
null,
107+
0,
108+
TimestampsToReturn.Both,
109+
readValues, CancellationToken.None);
110+
111+
await session.CloseAsync();
82112
}
83113
}

0 commit comments

Comments
 (0)