Dreamine.FullKit.Tests
1.0.0.0
Dreamine.FullKit.Tests 기능을 검증하는 자동화 테스트 프로젝트입니다.
Toggle main menu visibility
로딩중...
검색중...
일치하는것 없음
ProtocolAdapterTests.cs
이 파일의 문서화 페이지로 가기
1
using
System.Text;
2
using
Dreamine.Communication.Abstractions.Models;
3
using
Dreamine.Communication.Core.Extensions;
4
using
Dreamine.Communication.Core.Protocols;
5
6
namespace
Dreamine.FullKit.Tests.Communication
;
7
16
public
sealed
class
ProtocolAdapterTests
17
{
26
[Fact]
27
public
void
PlainTextProtocolAdapter_DecodesExternalTextToEnvelope
()
28
{
29
var adapter =
new
PlainTextProtocolAdapter(Encoding.UTF8,
"external.text"
,
"Text"
);
30
31
var message = adapter.Decode(Encoding.UTF8.GetBytes(
"hello"
));
32
33
Assert.Equal(
"Text"
, message.Name);
34
Assert.Equal(
"external.text"
, message.Route);
35
Assert.Equal(
"hello"
, message.GetPayloadAsString());
36
Assert.Equal(
"PlainText"
, message.Headers[
"Protocol"
]);
37
}
38
47
[Fact]
48
public
void
RawJsonProtocolAdapter_ExtractsRouteAndNameFromJson
()
49
{
50
var adapter =
new
RawJsonProtocolAdapter(
"fallback.route"
,
"Fallback"
);
51
52
var message = adapter.Decode(Encoding.UTF8.GetBytes(
""
"{"
route
":"
machine.1
","
name
":"
Telemetry
","
value
":3}"
""
));
53
54
Assert.Equal(
"machine.1"
, message.Route);
55
Assert.Equal(
"Telemetry"
, message.Name);
56
Assert.Equal(
"RawJson"
, message.Headers[
"Protocol"
]);
57
}
58
67
[Fact]
68
public
void
RawJsonProtocolAdapter_GeneratesJsonWhenMessagePayloadIsEmpty
()
69
{
70
var adapter =
new
RawJsonProtocolAdapter();
71
72
var payload = adapter.Encode(
new
MessageEnvelope { Route =
"route"
, Name =
"Name"
});
73
var json = Encoding.UTF8.GetString(payload);
74
75
Assert.Contains(
"\"name\":\"Name\""
, json);
76
Assert.Contains(
"\"route\":\"route\""
, json);
77
}
78
87
[Fact]
88
public
void
MessageEnvelopeExtensions_CreateAndReadStringPayload
()
89
{
90
var message = MessageEnvelopeExtensions.FromStringPayload(
"route"
,
"Name"
,
"payload"
);
91
92
Assert.Equal(
"route"
, message.Route);
93
Assert.Equal(
"Name"
, message.Name);
94
Assert.Equal(
"payload"
, message.GetPayloadAsString());
95
}
96
}
Dreamine.FullKit.Tests.Communication
Definition
CommunicationAbstractionsTests.cs:5
Dreamine.FullKit.Tests.Communication.ProtocolAdapterTests
Definition
ProtocolAdapterTests.cs:17
Dreamine.FullKit.Tests.Communication.ProtocolAdapterTests.MessageEnvelopeExtensions_CreateAndReadStringPayload
void MessageEnvelopeExtensions_CreateAndReadStringPayload()
Definition
ProtocolAdapterTests.cs:88
Dreamine.FullKit.Tests.Communication.ProtocolAdapterTests.RawJsonProtocolAdapter_GeneratesJsonWhenMessagePayloadIsEmpty
void RawJsonProtocolAdapter_GeneratesJsonWhenMessagePayloadIsEmpty()
Definition
ProtocolAdapterTests.cs:68
Dreamine.FullKit.Tests.Communication.ProtocolAdapterTests.PlainTextProtocolAdapter_DecodesExternalTextToEnvelope
void PlainTextProtocolAdapter_DecodesExternalTextToEnvelope()
Definition
ProtocolAdapterTests.cs:27
Dreamine.FullKit.Tests.Communication.ProtocolAdapterTests.RawJsonProtocolAdapter_ExtractsRouteAndNameFromJson
void RawJsonProtocolAdapter_ExtractsRouteAndNameFromJson()
Definition
ProtocolAdapterTests.cs:48
Communication
ProtocolAdapterTests.cs
다음에 의해 생성됨 :
1.17.0