/
ne-ilyxa
/
C2_s21_stringplus
Обзор
Документация
Войти
/
ne-ilyxa
/
C2_s21_stringplus
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
src/tests/test_strncpy.c
92 строки
2 KB
Hypnos Dulce
retry init
19 янв 2024, 19:02
19 янв 2024, 19:02
6324488
Код
Авторство
О чём код?
#include "../s21_string.test.h" START_TEST(strncpy_1) { char s1[20] = "Hello, School 21!"; char s2[20] = "Hello, School 21!"; char s3[] = "World"; s21_size_t n = 5; ck_assert_pstr_eq(strncpy(s1, s3, n), s21_strncpy(s2, s3, n)); } END_TEST START_TEST(strncpy_2) { char s1[20] = "Hello, School 21!"; char s2[20] = "Hello, School 21!"; char s3[] = "\0"; s21_size_t n = 1; ck_assert_pstr_eq(strncpy(s1, s3, n), s21_strncpy(s2, s3, n)); } END_TEST START_TEST(strncpy_3) { char s1[30] = "Hello, School 21!"; char s2[30] = "Hello, School 21!"; char s3[] = "S"; s21_size_t n = 1; ck_assert_pstr_eq(strncpy(s1, s3, n), s21_strncpy(s2, s3, n)); } END_TEST START_TEST(strncpy_4) { char s1[5] = ""; char s2[5] = ""; char s3[] = ""; s21_size_t n = 0; ck_assert_pstr_eq(strncpy(s1, s3, n), s21_strncpy(s2, s3, n)); } END_TEST START_TEST(strncpy_5) { char s1[100] = ""; char s2[100] = ""; char s3[] = "The strncpy() function copies up to n characters from the string " "pointed to, by src to dest."; s21_size_t n = strlen(s3); ck_assert_pstr_eq(strncpy(s1, s3, n), s21_strncpy(s2, s3, n)); } END_TEST START_TEST(strncpy_6) { char s1[5] = ""; char s2[5] = ""; char s3[] = "\0"; s21_size_t n = 1; ck_assert_pstr_eq(strncpy(s1, s3, n), s21_strncpy(s2, s3, n)); } END_TEST START_TEST(strncpy_7) { char s1[10] = "699\017020"; char s2[10] = "699\017020"; char s3[] = "com"; s21_size_t n = 3; ck_assert_pstr_eq(strncpy(s1, s3, n), s21_strncpy(s2, s3, n)); } END_TEST START_TEST(strncpy_8) { char s1[10] = "699017020"; char s2[10] = "699017020"; char s3[] = "com"; s21_size_t n = 2; ck_assert_pstr_eq(strncpy(s1, s3, n), s21_strncpy(s2, s3, n)); } END_TEST Suite *test_strncpy(void) { Suite *s = suite_create("\033[46m--S21_STRNCPY--\033[0m"); TCase *tc = tcase_create("strncpy_tc"); tcase_add_test(tc, strncpy_1); tcase_add_test(tc, strncpy_2); tcase_add_test(tc, strncpy_3); tcase_add_test(tc, strncpy_4); tcase_add_test(tc, strncpy_5); tcase_add_test(tc, strncpy_6); tcase_add_test(tc, strncpy_7); tcase_add_test(tc, strncpy_8); suite_add_tcase(s, tc); return s; }