#include "ValuesFile.h" #include int ValuesFile_test() { int err = 0; Configuration config; config.locale = "zz_ZZ"; ValuesFile* vf = ValuesFile::ParseFile("testdata/values/strings.xml", config, OLD_VERSION, "1"); const set& strings = vf->GetStrings(); string canonical = vf->ToString(); if (false) { printf("Strings (%zd)\n", strings.size()); for (set::const_iterator it=strings.begin(); it!=strings.end(); it++) { const StringResource& str = *it; printf("%s: '%s'[%d]='%s' (%s) \n", str.pos.ToString().c_str(), str.id.c_str(), str.index, str.value->ContentsToString(ANDROID_NAMESPACES).c_str(), str.config.ToString().c_str(), str.comment.c_str()); } printf("XML:[[%s]]\n", canonical.c_str()); } const char * const EXPECTED = "\n" "\n" " \n" " Email\n" " Home\n" " Work\n" " Other\\u2026\n" " \n" " Discard\n" " abcd\n" " abBbC\n" "\n"; if (canonical != EXPECTED) { fprintf(stderr, "ValuesFile_test failed\n"); fprintf(stderr, "canonical=[[%s]]\n", canonical.c_str()); fprintf(stderr, "EXPECTED=[[%s]]\n", EXPECTED); err = 1; } delete vf; return err; }