Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
libnice
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
cpp-libs
libnice
Commits
d97c2192
Commit
d97c2192
authored
Mar 06, 2014
by
Olivier Crête
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
tests: Don't verify the message content with not in reliable mode, because its unreliable
parent
6894416c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
44 additions
and
33 deletions
+44
-33
tests/test-io-stream-common.c
tests/test-io-stream-common.c
+23
-18
tests/test-send-recv.c
tests/test-send-recv.c
+21
-15
No files found.
tests/test-io-stream-common.c
View file @
d97c2192
...
@@ -476,12 +476,6 @@ check_for_termination (TestIOStreamThreadData *data, gsize *recv_count,
...
@@ -476,12 +476,6 @@ check_for_termination (TestIOStreamThreadData *data, gsize *recv_count,
{
{
guint
stream_id
;
guint
stream_id
;
gpointer
tmp
;
gpointer
tmp
;
guint8
buf
[
65536
];
gsize
buf_len
;
gssize
len
;
GError
*
error
=
NULL
;
g_assert_cmpuint
(
*
recv_count
,
==
,
expected_recv_count
);
/* Wait for transmission to complete. */
/* Wait for transmission to complete. */
while
(
*
send_count
<
expected_recv_count
);
while
(
*
send_count
<
expected_recv_count
);
...
@@ -490,21 +484,32 @@ check_for_termination (TestIOStreamThreadData *data, gsize *recv_count,
...
@@ -490,21 +484,32 @@ check_for_termination (TestIOStreamThreadData *data, gsize *recv_count,
tmp
=
g_object_get_data
(
G_OBJECT
(
data
->
agent
),
"stream-id"
);
tmp
=
g_object_get_data
(
G_OBJECT
(
data
->
agent
),
"stream-id"
);
stream_id
=
GPOINTER_TO_UINT
(
tmp
);
stream_id
=
GPOINTER_TO_UINT
(
tmp
);
buf_len
=
strlen
(
"Done"
);
/* Can't be certain enough to test for termination on non-reliable streams.
memcpy
(
buf
,
"Done"
,
buf_len
);
* There may be packet losses, etc
len
=
nice_agent_send
(
data
->
agent
,
stream_id
,
1
,
buf_len
,
(
gchar
*
)
buf
);
*/
g_assert_cmpint
(
len
,
==
,
buf_len
);
if
(
data
->
reliable
)
{
guint8
buf
[
65536
];
gsize
buf_len
;
gssize
len
;
GError
*
error
=
NULL
;
g_assert_cmpuint
(
*
recv_count
,
>=
,
expected_recv_count
);
/* Wait for a done packet. */
buf_len
=
strlen
(
"Done"
);
buf_len
=
data
->
reliable
?
strlen
(
"Done"
)
:
sizeof
(
buf
);
memcpy
(
buf
,
"Done"
,
buf_len
);
len
=
nice_agent_recv
(
data
->
agent
,
stream_id
,
1
,
buf
,
buf_len
,
NULL
,
len
=
nice_agent_send
(
data
->
agent
,
stream_id
,
1
,
buf_len
,
(
gchar
*
)
buf
);
&
error
);
g_assert_cmpint
(
len
,
==
,
buf_len
);
g_assert_no_error
(
error
);
g_assert_cmpint
(
len
,
==
,
strlen
(
"Done"
));
/* Wait for a done packet. */
g_assert_cmpint
(
memcmp
(
buf
,
"Done"
,
strlen
(
"Done"
)),
==
,
0
);
len
=
nice_agent_recv
(
data
->
agent
,
stream_id
,
1
,
buf
,
buf_len
,
NULL
,
&
error
);
g_assert_no_error
(
error
);
*
recv_count
=
*
recv_count
+
1
;
g_assert_cmpint
(
len
,
==
,
strlen
(
"Done"
));
g_assert_cmpint
(
memcmp
(
buf
,
"Done"
,
strlen
(
"Done"
)),
==
,
0
);
*
recv_count
=
*
recv_count
+
1
;
}
/* Remove the stream and run away. */
/* Remove the stream and run away. */
nice_agent_remove_stream
(
data
->
agent
,
stream_id
);
nice_agent_remove_stream
(
data
->
agent
,
stream_id
);
...
...
tests/test-send-recv.c
View file @
d97c2192
...
@@ -440,7 +440,7 @@ validate_received_buffer (TestIOStreamThreadData *data, gsize buffer_offset,
...
@@ -440,7 +440,7 @@ validate_received_buffer (TestIOStreamThreadData *data, gsize buffer_offset,
* instead of a single buffer. This consumes @messages. */
* instead of a single buffer. This consumes @messages. */
static
void
static
void
validate_received_messages
(
TestIOStreamThreadData
*
data
,
gsize
buffer_offset
,
validate_received_messages
(
TestIOStreamThreadData
*
data
,
gsize
buffer_offset
,
NiceInputMessage
*
*
messages
,
guint
n_messages
,
gint
n_valid_messages
)
NiceInputMessage
*
messages
,
guint
n_messages
,
gint
n_valid_messages
)
{
{
TestData
*
test_data
=
data
->
user_data
;
TestData
*
test_data
=
data
->
user_data
;
guint
i
;
guint
i
;
...
@@ -456,7 +456,7 @@ validate_received_messages (TestIOStreamThreadData *data, gsize buffer_offset,
...
@@ -456,7 +456,7 @@ validate_received_messages (TestIOStreamThreadData *data, gsize buffer_offset,
/* Validate the message contents. */
/* Validate the message contents. */
for
(
i
=
0
;
i
<
(
guint
)
n_valid_messages
;
i
++
)
{
for
(
i
=
0
;
i
<
(
guint
)
n_valid_messages
;
i
++
)
{
NiceInputMessage
*
message
=
&
((
*
messages
)[
i
])
;
NiceInputMessage
*
message
=
&
messages
[
i
]
;
guint
j
;
guint
j
;
gsize
total_buf_len
=
0
;
gsize
total_buf_len
=
0
;
gsize
message_len_remaining
=
message
->
length
;
gsize
message_len_remaining
=
message
->
length
;
...
@@ -465,23 +465,29 @@ validate_received_messages (TestIOStreamThreadData *data, gsize buffer_offset,
...
@@ -465,23 +465,29 @@ validate_received_messages (TestIOStreamThreadData *data, gsize buffer_offset,
for
(
j
=
0
;
j
<
(
guint
)
message
->
n_buffers
;
j
++
)
{
for
(
j
=
0
;
j
<
(
guint
)
message
->
n_buffers
;
j
++
)
{
GInputVector
*
buffer
=
&
message
->
buffers
[
j
];
GInputVector
*
buffer
=
&
message
->
buffers
[
j
];
guint8
*
expected_buf
;
gsize
valid_len
;
gsize
valid_len
;
/* See note above about valid_len. */
/* See note above about valid_len. */
total_buf_len
+=
buffer
->
size
;
total_buf_len
+=
buffer
->
size
;
valid_len
=
MIN
(
message_len_remaining
,
buffer
->
size
);
valid_len
=
MIN
(
message_len_remaining
,
buffer
->
size
);
expected_buf
=
g_malloc
(
buffer
->
size
);
/* Only validate buffer content for reliable mode, anything could
memset
(
expected_buf
,
0xaa
,
buffer
->
size
);
* be received in UDP mode
generate_buffer_data
(
test_data
->
buffer_data_strategy
,
buffer_offset
,
*/
expected_buf
,
valid_len
);
if
(
test_data
->
reliable
)
{
g_assert
(
memcmp
(
buffer
->
buffer
,
expected_buf
,
valid_len
)
==
0
);
guint8
*
expected_buf
;
g_free
(
expected_buf
);
expected_buf
=
g_malloc
(
buffer
->
size
);
memset
(
expected_buf
,
0xaa
,
buffer
->
size
);
generate_buffer_data
(
test_data
->
buffer_data_strategy
,
buffer_offset
,
expected_buf
,
valid_len
);
g_assert_cmpint
(
memcmp
(
buffer
->
buffer
,
expected_buf
,
valid_len
),
==
,
0
);
g_free
(
expected_buf
);
buffer_offset
+=
valid_len
;
message_len_remaining
-=
valid_len
;
}
test_data
->
received_bytes
+=
valid_len
;
test_data
->
received_bytes
+=
valid_len
;
buffer_offset
+=
valid_len
;
message_len_remaining
-=
valid_len
;
g_free
(
buffer
->
buffer
);
g_free
(
buffer
->
buffer
);
}
}
...
@@ -503,7 +509,7 @@ validate_received_messages (TestIOStreamThreadData *data, gsize buffer_offset,
...
@@ -503,7 +509,7 @@ validate_received_messages (TestIOStreamThreadData *data, gsize buffer_offset,
g_free
(
message
->
buffers
);
g_free
(
message
->
buffers
);
}
}
g_free
(
*
messages
);
g_free
(
messages
);
}
}
/* Determine a size for the next transmit buffer, allocate it, and fill it with
/* Determine a size for the next transmit buffer, allocate it, and fill it with
...
@@ -693,7 +699,7 @@ read_thread_agent_cb (GInputStream *input_stream, TestIOStreamThreadData *data)
...
@@ -693,7 +699,7 @@ read_thread_agent_cb (GInputStream *input_stream, TestIOStreamThreadData *data)
g_assert_no_error
(
error
);
g_assert_no_error
(
error
);
/* Check the messages and update the test’s state machine. */
/* Check the messages and update the test’s state machine. */
validate_received_messages
(
data
,
test_data
->
received_bytes
,
&
messages
,
validate_received_messages
(
data
,
test_data
->
received_bytes
,
messages
,
n_messages
,
n_valid_messages
);
n_messages
,
n_valid_messages
);
}
}
...
@@ -780,7 +786,7 @@ read_thread_agent_nonblocking_cb (GInputStream *input_stream,
...
@@ -780,7 +786,7 @@ read_thread_agent_nonblocking_cb (GInputStream *input_stream,
g_assert_no_error
(
error
);
g_assert_no_error
(
error
);
/* Check the messages and update the test’s state machine. */
/* Check the messages and update the test’s state machine. */
validate_received_messages
(
data
,
test_data
->
received_bytes
,
&
messages
,
validate_received_messages
(
data
,
test_data
->
received_bytes
,
messages
,
n_messages
,
n_valid_messages
);
n_messages
,
n_valid_messages
);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment