@@ -97,6 +97,83 @@ describe("ServiceBusClient live tests", () => {
97
97
await receiver . close ( ) ;
98
98
await sbClientWithRelaxedEndPoint . close ( ) ;
99
99
} ) ;
100
+
101
+ it . skip (
102
+ noSessionTestClientType + ":can omit message body when peeking" ,
103
+ async function ( ) : Promise < void > {
104
+ // Create a test client to get the entity types
105
+ const sbClient = createServiceBusClientForTests ( ) ;
106
+ const entities = await sbClient . test . createTestEntities ( noSessionTestClientType ) ;
107
+ await sbClient . close ( ) ;
108
+
109
+ // Create a sb client, sender, receiver with relaxed endpoint
110
+ const sbClientWithRelaxedEndPoint = new ServiceBusClient (
111
+ getEnvVars ( ) . SERVICEBUS_CONNECTION_STRING . replace ( "sb://" , "CheeseBurger://" )
112
+ ) ;
113
+ const sender = sbClientWithRelaxedEndPoint . createSender ( entities . queue || entities . topic ! ) ;
114
+ const receiver = entities . queue
115
+ ? sbClientWithRelaxedEndPoint . createReceiver ( entities . queue )
116
+ : sbClientWithRelaxedEndPoint . createReceiver ( entities . topic ! , entities . subscription ! ) ;
117
+ try {
118
+ // Send and receive messages
119
+ const testMessages = entities . usesSessions
120
+ ? TestMessage . getSessionSample ( )
121
+ : TestMessage . getSample ( ) ;
122
+ await sender . sendMessages ( testMessages ) ;
123
+
124
+ let peekedMsgs = await receiver . peekMessages ( 2 , {
125
+ omitMessageBody : true ,
126
+ fromSequenceNumber : Long . ZERO ,
127
+ } ) ;
128
+ should . equal ( peekedMsgs . length , 1 , "expecting one peeked message 1" ) ;
129
+ should . not . exist ( peekedMsgs [ 0 ] . body ) ;
130
+ should . exist (
131
+ peekedMsgs [ 0 ] . _rawAmqpMessage . deliveryAnnotations ,
132
+ "expecting deliveryAnnotations"
133
+ ) ;
134
+ const omittedSize = Number (
135
+ peekedMsgs [ 0 ] . _rawAmqpMessage . deliveryAnnotations ! [ "omitted-message-body-size" ]
136
+ ) ;
137
+ should . equal ( omittedSize > 0 , true ) ;
138
+
139
+ peekedMsgs = await receiver . peekMessages ( 2 , {
140
+ omitMessageBody : false ,
141
+ fromSequenceNumber : Long . ZERO ,
142
+ } ) ;
143
+ should . equal ( peekedMsgs . length , 1 , "expecting one peeked message 2" ) ;
144
+ should . exist ( peekedMsgs [ 0 ] . body ) ;
145
+ should . exist (
146
+ peekedMsgs [ 0 ] . _rawAmqpMessage . deliveryAnnotations ,
147
+ "expecting deliveryAnnotations"
148
+ ) ;
149
+ should . not . exist (
150
+ peekedMsgs [ 0 ] . _rawAmqpMessage . deliveryAnnotations ! [ "omitted-message-body-size" ] ,
151
+ "Not expecting omitted-message-body-size"
152
+ ) ;
153
+
154
+ peekedMsgs = await receiver . peekMessages ( 2 , { fromSequenceNumber : Long . ZERO } ) ;
155
+ should . equal ( peekedMsgs . length , 1 , "expecting one peeked message 3" ) ;
156
+ should . exist ( peekedMsgs [ 0 ] . body ) ;
157
+ should . exist (
158
+ peekedMsgs [ 0 ] . _rawAmqpMessage . deliveryAnnotations ,
159
+ "expecting deliveryAnnotations"
160
+ ) ;
161
+ should . not . exist (
162
+ peekedMsgs [ 0 ] . _rawAmqpMessage . deliveryAnnotations ! [ "omitted-message-body-size" ] ,
163
+ "Not expecting omitted-message-body-size"
164
+ ) ;
165
+
166
+ await receiver . receiveMessages ( 2 ) ;
167
+ await testPeekMsgsLength ( receiver , 0 ) ;
168
+ } finally {
169
+ // Clean up
170
+ await sbClient . test . after ( ) ;
171
+ await sender . close ( ) ;
172
+ await receiver . close ( ) ;
173
+ await sbClientWithRelaxedEndPoint . close ( ) ;
174
+ }
175
+ }
176
+ ) ;
100
177
} ) ;
101
178
102
179
describe ( "Errors with non existing Namespace" , function ( ) : void {
0 commit comments