/*
* Tests for the lib_xlsx_writer library.
*
* Copyright 2014-2021, John McNamara, jmcnamara@cpan.org
*
*/
#include "../ctest.h"
#include "../helper.h"
#include "../../../include/xlsxwriter/worksheet.h"
#include "../../../include/xlsxwriter/shared_strings.h"
// Test assembling a complete Worksheet file.
CTEST(worksheet, worksheet01) {
char* got;
char exp[] =
"\n"
""
""
""
""
""
""
""
""
"";
FILE* testfile = lxw_tmpfile(NULL);
lxw_worksheet *worksheet = lxw_worksheet_new(NULL);
worksheet->file = testfile;
worksheet_select(worksheet);
lxw_worksheet_assemble_xml_file(worksheet);
RUN_XLSX_STREQ_SHORT(exp, got);
lxw_worksheet_free(worksheet);
}
// Test assembling a complete Worksheet file.
CTEST(worksheet, worksheet02) {
char* got;
char exp[] =
"\n"
""
""
""
""
""
""
""
""
""
"123"
""
"
"
""
""
"";
FILE* testfile = lxw_tmpfile(NULL);
lxw_worksheet *worksheet = lxw_worksheet_new(NULL);
worksheet->file = testfile;
worksheet_select(worksheet);
worksheet_write_number(worksheet, 0, 0, 123, NULL);
lxw_worksheet_assemble_xml_file(worksheet);
RUN_XLSX_STREQ_SHORT(exp, got);
lxw_worksheet_free(worksheet);
}
// Test assembling a complete Worksheet file.
CTEST(worksheet, worksheet03) {
char* got;
char exp[] =
"\n"
""
""
""
""
""
""
""
""
""
"0"
""
"
"
""
""
"123"
""
"
"
""
""
"1"
""
"
"
""
""
"890"
""
"
"
""
""
"";
FILE* testfile = lxw_tmpfile(NULL);
lxw_worksheet *worksheet = lxw_worksheet_new(NULL);
worksheet->file = testfile;
worksheet->sst = lxw_sst_new();
worksheet_select(worksheet);
worksheet_write_string(worksheet, 0, 0, "Foo", NULL);
worksheet_write_number(worksheet, 1, 2, 123, NULL);
worksheet_write_string(worksheet, 3, 1, "Bar", NULL);
worksheet_write_number(worksheet, 8, 4, 890, NULL);
lxw_worksheet_assemble_xml_file(worksheet);
RUN_XLSX_STREQ_SHORT(exp, got);
lxw_sst_free(worksheet->sst);
lxw_worksheet_free(worksheet);
}