# Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: address@hidden # target_branch: file:///home/michael/src/%2Blocal/gnupdf/trunk/ # testament_sha1: 35fde547ca39b3b592af295675a47fe4980fabf9 # timestamp: 2009-10-20 22:55:31 -0400 # base_revision_id: address@hidden # # Begin patch === modified file 'ChangeLog' --- ChangeLog 2009-09-20 14:34:41 +0000 +++ ChangeLog 2009-10-21 02:55:11 +0000 @@ -1,3 +1,8 @@ +2009-10-20 Michael Gold + + * torture/unit/base/stm/pdf-stm-read-char.c: Add a test case that + reads more than PDF_STM_DEFAULT_CACHE_SIZE bytes from a stream. + 2009-09-20 Jose E. Marchesi * configure.ac: Call AC_CONFIG_AUX_DIR. === modified file 'torture/unit/base/stm/pdf-stm-read-char.c' --- torture/unit/base/stm/pdf-stm-read-char.c 2009-08-05 20:32:56 +0000 +++ torture/unit/base/stm/pdf-stm-read-char.c 2009-10-21 02:55:11 +0000 @@ -1,4 +1,4 @@ -/* -*- mode: C -*- Time-stamp: "2009-08-05 21:58:33 davazp" +/* -*- mode: C -*- Time-stamp: "2009-10-21 02:54:17 mgold" * * File: pdf-stm-read-char.c * Date: Sat Sep 20 16:59:27 2008 @@ -182,6 +182,59 @@ /* + * Test: pdf_stm_read_char_004 + * Description: + * Read more than PDF_STM_DEFAULT_CACHE_SIZE bytes from a stream. + * Success condition: + * The entire stream should be read successfully. + */ +START_TEST (pdf_stm_read_char_004) +{ + pdf_status_t ret; + pdf_stm_t stm; + pdf_char_t *buf; + pdf_char_t ret_char; + pdf_size_t buf_size; + pdf_size_t buf_pos; + + /* Create a buffer with some contents */ + buf_size = 42000; + pdf_init(); + + buf = pdf_alloc (buf_size); + fail_if(buf == NULL); + memset(buf, 'X', buf_size); + + /* Create the stream */ + ret = pdf_stm_mem_new (buf, + buf_size, + 0, /* Use the default cache size */ + PDF_STM_READ, + &stm); + fail_if(ret != PDF_OK); + + /* Read all characters from the stream */ + for (buf_pos = 0; buf_pos < buf_size; ++buf_pos) + { + ret = pdf_stm_read_char (stm, &ret_char); + if (ret != PDF_OK) + printf("pdf_stm_read_char_004 failed at %d bytes\n", buf_pos); + fail_if(ret != PDF_OK); + fail_if(ret_char != 'X'); + } + + /* Try to read a character from the stream */ + ret = pdf_stm_read_char (stm, &ret_char); + fail_if(ret != PDF_EEOF); + + /* Destroy data */ + pdf_dealloc (buf); + pdf_stm_destroy (stm); +} +END_TEST + + +/* * Test case creation function */ TCase * @@ -192,6 +245,7 @@ tcase_add_test(tc, pdf_stm_read_char_001); tcase_add_test(tc, pdf_stm_read_char_002); tcase_add_test(tc, pdf_stm_read_char_003); + tcase_add_test(tc, pdf_stm_read_char_004); return tc; } # Begin bundle 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 0Iv2Aq3+fezf/F3JFOFCQ2x3ZAQ=