mirror of https://github.com/kiwix/libkiwix.git
Deprecated Book::getLanguage()
Introduced `Book::getCommaSeparatedLanguages()` instead.
This commit is contained in:
parent
2550306052
commit
eb002ae306
|
@ -79,7 +79,8 @@ class Book
|
||||||
bool isPathValid() const { return m_pathValid; }
|
bool isPathValid() const { return m_pathValid; }
|
||||||
const std::string& getTitle() const { return m_title; }
|
const std::string& getTitle() const { return m_title; }
|
||||||
const std::string& getDescription() const { return m_description; }
|
const std::string& getDescription() const { return m_description; }
|
||||||
const std::string& getLanguage() const { return m_language; }
|
DEPRECATED const std::string& getLanguage() const { return m_language; }
|
||||||
|
const std::string& getCommaSeparatedLanguages() const { return m_language; }
|
||||||
const std::vector<std::string> getLanguages() const;
|
const std::vector<std::string> getLanguages() const;
|
||||||
const std::string& getCreator() const { return m_creator; }
|
const std::string& getCreator() const { return m_creator; }
|
||||||
const std::string& getPublisher() const { return m_publisher; }
|
const std::string& getPublisher() const { return m_publisher; }
|
||||||
|
|
|
@ -54,7 +54,7 @@ void LibXMLDumper::handleBook(Book book, pugi::xml_node root_node) {
|
||||||
if (book.getOrigId().empty()) {
|
if (book.getOrigId().empty()) {
|
||||||
ADD_ATTR_NOT_EMPTY(entry_node, "title", book.getTitle());
|
ADD_ATTR_NOT_EMPTY(entry_node, "title", book.getTitle());
|
||||||
ADD_ATTR_NOT_EMPTY(entry_node, "description", book.getDescription());
|
ADD_ATTR_NOT_EMPTY(entry_node, "description", book.getDescription());
|
||||||
ADD_ATTR_NOT_EMPTY(entry_node, "language", book.getLanguage());
|
ADD_ATTR_NOT_EMPTY(entry_node, "language", book.getCommaSeparatedLanguages());
|
||||||
ADD_ATTR_NOT_EMPTY(entry_node, "creator", book.getCreator());
|
ADD_ATTR_NOT_EMPTY(entry_node, "creator", book.getCreator());
|
||||||
ADD_ATTR_NOT_EMPTY(entry_node, "publisher", book.getPublisher());
|
ADD_ATTR_NOT_EMPTY(entry_node, "publisher", book.getPublisher());
|
||||||
ADD_ATTR_NOT_EMPTY(entry_node, "name", book.getName());
|
ADD_ATTR_NOT_EMPTY(entry_node, "name", book.getName());
|
||||||
|
@ -97,7 +97,7 @@ void LibXMLDumper::handleBookmark(Bookmark bookmark, pugi::xml_node root_node) {
|
||||||
auto book = library->getBookByIdThreadSafe(bookmark.getBookId());
|
auto book = library->getBookByIdThreadSafe(bookmark.getBookId());
|
||||||
ADD_TEXT_ENTRY(book_node, "id", book.getId());
|
ADD_TEXT_ENTRY(book_node, "id", book.getId());
|
||||||
ADD_TEXT_ENTRY(book_node, "title", book.getTitle());
|
ADD_TEXT_ENTRY(book_node, "title", book.getTitle());
|
||||||
ADD_TEXT_ENTRY(book_node, "language", book.getLanguage());
|
ADD_TEXT_ENTRY(book_node, "language", book.getCommaSeparatedLanguages());
|
||||||
ADD_TEXT_ENTRY(book_node, "date", book.getDate());
|
ADD_TEXT_ENTRY(book_node, "date", book.getDate());
|
||||||
} catch (...) {
|
} catch (...) {
|
||||||
ADD_TEXT_ENTRY(book_node, "id", bookmark.getBookId());
|
ADD_TEXT_ENTRY(book_node, "id", bookmark.getBookId());
|
||||||
|
|
|
@ -238,7 +238,7 @@ std::string Manager::addBookFromPathAndGetId(const std::string& pathToOpen,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!checkMetaData
|
if (!checkMetaData
|
||||||
|| (checkMetaData && !book.getTitle().empty() && !book.getLanguage().empty()
|
|| (!book.getTitle().empty() && !book.getLanguages().empty()
|
||||||
&& !book.getDate().empty())) {
|
&& !book.getDate().empty())) {
|
||||||
book.setUrl(url);
|
book.setUrl(url);
|
||||||
manipulator->addBookToLibrary(book);
|
manipulator->addBookToLibrary(book);
|
||||||
|
|
|
@ -81,7 +81,7 @@ std::string fullEntryXML(const Book& book, const std::string& rootLocation, cons
|
||||||
{"name", book.getName()},
|
{"name", book.getName()},
|
||||||
{"title", book.getTitle()},
|
{"title", book.getTitle()},
|
||||||
{"description", book.getDescription()},
|
{"description", book.getDescription()},
|
||||||
{"language", book.getLanguage()},
|
{"language", book.getCommaSeparatedLanguages()},
|
||||||
{"content_id", urlEncode(contentId)},
|
{"content_id", urlEncode(contentId)},
|
||||||
{"updated", bookDate}, // XXX: this should be the entry update datetime
|
{"updated", bookDate}, // XXX: this should be the entry update datetime
|
||||||
{"book_date", bookDate},
|
{"book_date", bookDate},
|
||||||
|
|
|
@ -203,14 +203,14 @@ TEST(BookTest, getLanguages)
|
||||||
{
|
{
|
||||||
const kiwix::Book book = makeBook(R"(id="abcd" language="fra")");
|
const kiwix::Book book = makeBook(R"(id="abcd" language="fra")");
|
||||||
|
|
||||||
EXPECT_EQ(book.getLanguage(), "fra");
|
EXPECT_EQ(book.getCommaSeparatedLanguages(), "fra");
|
||||||
EXPECT_EQ(book.getLanguages(), Langs{ "fra" });
|
EXPECT_EQ(book.getLanguages(), Langs{ "fra" });
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
const kiwix::Book book = makeBook(R"(id="abcd" language="eng,ong,ing")");
|
const kiwix::Book book = makeBook(R"(id="abcd" language="eng,ong,ing")");
|
||||||
|
|
||||||
EXPECT_EQ(book.getLanguage(), "eng,ong,ing");
|
EXPECT_EQ(book.getCommaSeparatedLanguages(), "eng,ong,ing");
|
||||||
EXPECT_EQ(book.getLanguages(), Langs({ "eng", "ong", "ing" }));
|
EXPECT_EQ(book.getLanguages(), Langs({ "eng", "ong", "ing" }));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -234,6 +234,8 @@ const char sampleLibraryXML[] = R"(
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
|
|
||||||
|
typedef std::vector<std::string> Langs;
|
||||||
|
|
||||||
TEST(LibraryOpdsImportTest, allInOne)
|
TEST(LibraryOpdsImportTest, allInOne)
|
||||||
{
|
{
|
||||||
kiwix::Library lib;
|
kiwix::Library lib;
|
||||||
|
@ -248,7 +250,8 @@ TEST(LibraryOpdsImportTest, allInOne)
|
||||||
EXPECT_EQ(book1.getTitle(), "Encyclopédie de la Tunisie");
|
EXPECT_EQ(book1.getTitle(), "Encyclopédie de la Tunisie");
|
||||||
EXPECT_EQ(book1.getName(), "wikipedia_fr_tunisie_novid_2018-10");
|
EXPECT_EQ(book1.getName(), "wikipedia_fr_tunisie_novid_2018-10");
|
||||||
EXPECT_EQ(book1.getFlavour(), "unforgettable");
|
EXPECT_EQ(book1.getFlavour(), "unforgettable");
|
||||||
EXPECT_EQ(book1.getLanguage(), "fra");
|
EXPECT_EQ(book1.getLanguages(), Langs{ "fra" });
|
||||||
|
EXPECT_EQ(book1.getCommaSeparatedLanguages(), "fra");
|
||||||
EXPECT_EQ(book1.getDate(), "8 Oct 2018");
|
EXPECT_EQ(book1.getDate(), "8 Oct 2018");
|
||||||
EXPECT_EQ(book1.getDescription(), "Le meilleur de Wikipédia sur la Tunisie");
|
EXPECT_EQ(book1.getDescription(), "Le meilleur de Wikipédia sur la Tunisie");
|
||||||
EXPECT_EQ(book1.getCreator(), "Wikipedia");
|
EXPECT_EQ(book1.getCreator(), "Wikipedia");
|
||||||
|
@ -272,7 +275,8 @@ TEST(LibraryOpdsImportTest, allInOne)
|
||||||
EXPECT_EQ(book2.getTitle(), "TED talks - Business");
|
EXPECT_EQ(book2.getTitle(), "TED talks - Business");
|
||||||
EXPECT_EQ(book2.getName(), "");
|
EXPECT_EQ(book2.getName(), "");
|
||||||
EXPECT_EQ(book2.getFlavour(), "");
|
EXPECT_EQ(book2.getFlavour(), "");
|
||||||
EXPECT_EQ(book2.getLanguage(), "eng");
|
EXPECT_EQ(book2.getLanguages(), Langs{ "eng" });
|
||||||
|
EXPECT_EQ(book2.getCommaSeparatedLanguages(), "eng");
|
||||||
EXPECT_EQ(book2.getDate(), "2018-07-23");
|
EXPECT_EQ(book2.getDate(), "2018-07-23");
|
||||||
EXPECT_EQ(book2.getDescription(), "Ideas worth spreading");
|
EXPECT_EQ(book2.getDescription(), "Ideas worth spreading");
|
||||||
EXPECT_EQ(book2.getCreator(), "TED");
|
EXPECT_EQ(book2.getCreator(), "TED");
|
||||||
|
|
|
@ -57,7 +57,7 @@ TEST(ManagerTest, readXml)
|
||||||
EXPECT_EQ("https://example.com/zimfiles/unittest.zim", book.getUrl());
|
EXPECT_EQ("https://example.com/zimfiles/unittest.zim", book.getUrl());
|
||||||
EXPECT_EQ("Unit Test", book.getTitle());
|
EXPECT_EQ("Unit Test", book.getTitle());
|
||||||
EXPECT_EQ("Wikipedia articles about unit testing", book.getDescription());
|
EXPECT_EQ("Wikipedia articles about unit testing", book.getDescription());
|
||||||
EXPECT_EQ("eng", book.getLanguage());
|
EXPECT_EQ("eng", book.getCommaSeparatedLanguages());
|
||||||
EXPECT_EQ("Wikipedia", book.getCreator());
|
EXPECT_EQ("Wikipedia", book.getCreator());
|
||||||
EXPECT_EQ("Kiwix", book.getPublisher());
|
EXPECT_EQ("Kiwix", book.getPublisher());
|
||||||
EXPECT_EQ("2020-03-31", book.getDate());
|
EXPECT_EQ("2020-03-31", book.getDate());
|
||||||
|
|
Loading…
Reference in New Issue