1/* 2** Copyright (C) 2017 Erik de Castro Lopo <erikd@mega-nerd.com> 3** 4** This program is free software; you can redistribute it and/or modify 5** it under the terms of the GNU Lesser General Public License as published by 6** the Free Software Foundation; either version 2.1 of the License, or 7** (at your option) any later version. 8** 9** This program is distributed in the hope that it will be useful, 10** but WITHOUT ANY WARRANTY; without even the implied warranty of 11** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12** GNU Lesser General Public License for more details. 13** 14** You should have received a copy of the GNU Lesser General Public License 15** along with this program; if not, write to the Free Software 16** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17*/ 18 19#include "sfconfig.h" 20 21#include <stdio.h> 22#include <stdlib.h> 23#include <string.h> 24#include <stdarg.h> 25#include <errno.h> 26 27#include "common.h" 28 29#include "test_main.h" 30 31void 32test_binheader_writef (void) 33{ char buffer [18] ; 34 SF_PRIVATE sf_private, *psf ; 35 int k, errors = 0 ; 36 37 print_test_name ("Testing binheader_writef") ; 38 39 memset (&sf_private, 0, sizeof (sf_private)) ; 40 41 psf = &sf_private ; 42 for (k = 0 ; errors == 0 && k < 10 ; k++) 43 { psf_strlcpy (buffer, sizeof (buffer), "abcdefghijklmnop") ; 44 buffer [k] = 0 ; 45 46 psf_binheader_writef (psf, "Ep", BHWp (buffer)) ; 47 48 if ((psf->header.indx & 1) != 0) 49 errors = 1 ; 50 } ; 51 52 free (psf->header.ptr) ; 53 54 if (errors) 55 { puts ("\nExiting due to errors.\n") ; 56 exit (1) ; 57 } ; 58 59 puts ("ok") ; 60} /* test_log_printf */ 61 62