| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- #include <stdio.h>
- #include <stdlib.h>
- #include <zip.h>
- #include "minunit.h"
- #if defined(_WIN32) || defined(_WIN64)
- #define MKTEMP _mktemp
- #else
- #define MKTEMP mkstemp
- #endif
- static char ZIPNAME[L_tmpnam + 1] = {0};
- void test_setup(void) {
- strncpy(ZIPNAME, "z-XXXXXX\0", L_tmpnam);
- MKTEMP(ZIPNAME);
- }
- void test_teardown(void) { remove(ZIPNAME); }
- MU_TEST(test_openwitherror) {
- int errnum;
- struct zip_t *zip =
- zip_openwitherror(ZIPNAME, ZIP_DEFAULT_COMPRESSION_LEVEL, 'r', &errnum);
- mu_check(zip == NULL);
- mu_assert_int_eq(ZIP_ERINIT, errnum);
- zip = zip_openwitherror(ZIPNAME, ZIP_DEFAULT_COMPRESSION_LEVEL, 'w', &errnum);
- mu_check(zip != NULL);
- mu_assert_int_eq(0, errnum);
- zip_close(zip);
- }
- MU_TEST(test_stream_openwitherror) {
- int errnum;
- struct zip_t *zip = zip_stream_openwitherror(
- NULL, 0, ZIP_DEFAULT_COMPRESSION_LEVEL, 'r', &errnum);
- mu_check(zip == NULL);
- mu_assert_int_eq(ZIP_EINVMODE, errnum);
- zip = zip_stream_openwitherror(NULL, 0, ZIP_DEFAULT_COMPRESSION_LEVEL, 'w',
- &errnum);
- mu_check(zip != NULL);
- mu_assert_int_eq(0, errnum);
- zip_stream_close(zip);
- }
- MU_TEST_SUITE(test_entry_suite) {
- MU_SUITE_CONFIGURE(&test_setup, &test_teardown);
- MU_RUN_TEST(test_openwitherror);
- MU_RUN_TEST(test_stream_openwitherror);
- }
- #define UNUSED(x) (void)x
- int main(int argc, char *argv[]) {
- UNUSED(argc);
- UNUSED(argv);
- MU_RUN_SUITE(test_entry_suite);
- MU_REPORT();
- return MU_EXIT_CODE;
- }
|