Skip to content

Commit 027b7de

Browse files
committed
test(system/input_output): fix read
Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
1 parent a155eda commit 027b7de

1 file changed

Lines changed: 11 additions & 7 deletions

File tree

tests/system/input_output.c

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -51,18 +51,22 @@ void test_ocre_container_output_stdout(void)
5151

5252
ocre_container_wait(container, NULL);
5353

54-
char buf[1000];
54+
/* Skip to newline */
55+
56+
char c;
57+
do {
58+
size_t n = read(stdout_pair[0], &c, 1);
59+
TEST_ASSERT_EQUAL_size_t(1, n);
60+
} while (c != '\n');
61+
62+
char buf[19]; /* "argv[1]=Zirigdum!\n" */
5563
memset(buf, 0, sizeof(buf));
5664

5765
ssize_t n = read(stdout_pair[0], buf, sizeof(buf) - 1);
5866

59-
TEST_ASSERT_GREATER_THAN_size_t(0, n);
60-
61-
char *second_line = strchr(buf, '\n');
62-
++second_line;
63-
TEST_ASSERT_NOT_NULL(second_line);
67+
TEST_ASSERT_EQUAL_size_t(sizeof(buf) - 1, n);
6468

65-
TEST_ASSERT_EQUAL_STRING("argv[1]=" ARG_TEST_STRING "\n", second_line);
69+
TEST_ASSERT_EQUAL_STRING("argv[1]=" ARG_TEST_STRING "\n", buf);
6670

6771
ocre_container_kill(container);
6872
ocre_container_wait(container, NULL);

0 commit comments

Comments
 (0)