Veloman Yunkan
e805f68994
Enhanced & broke LibraryTest.filterByPublisher
2021-04-27 16:59:21 +04:00
Veloman Yunkan
a759ab989f
Catalog filtering by publisher works via Xapian
2021-04-27 16:59:21 +04:00
Veloman Yunkan
7ccd9ffcce
Catalog filtering by language works via Xapian
2021-04-27 16:59:21 +04:00
Veloman Yunkan
0c0a37073b
Catalog filtering by category works via Xapian
2021-04-27 16:59:21 +04:00
Veloman Yunkan
415c65cf03
Catalog filtering by book name works via Xapian
2021-04-27 16:59:21 +04:00
Veloman Yunkan
2f3f1a4859
Improved LibraryTest.filterByMultipleCriteria
2021-04-27 16:59:21 +04:00
Veloman Yunkan
b9be742085
LibraryTest.filterByMaxSize
2021-04-27 16:59:21 +04:00
Veloman Yunkan
95c354a5fa
LibraryTest.filterByCategory
2021-04-27 16:59:21 +04:00
Veloman Yunkan
cdd272fc5a
LibraryTest.filterByName
2021-04-27 16:59:21 +04:00
Veloman Yunkan
ef962a9174
LibraryTest.filterByPublisher
2021-04-27 16:59:21 +04:00
Veloman Yunkan
f063d350c6
LibraryTest.{filterLocal,filterRemote}
2021-04-27 16:59:21 +04:00
Veloman Yunkan
d8fe593f59
Extended the unit-test library with 2 XML entries
2021-04-27 16:59:21 +04:00
Veloman Yunkan
22b8625033
Enter EXPECT_FILTER_RESULTS()
...
This diff is easier to view if whitespace change is ignored.
2021-04-27 16:59:21 +04:00
Veloman Yunkan
0f277ffa34
Enhanced the LibraryTest.filterByTags unit-test
2021-04-27 16:59:21 +04:00
Veloman Yunkan
068f7e5e95
New unit-test LibraryTest.filterByCreator
2021-04-27 16:59:21 +04:00
Veloman Yunkan
8c810d2d2f
Enhanced the LibraryTest.filterByQuery unit-test
2021-04-27 16:59:21 +04:00
Veloman Yunkan
8c18a37961
Split LibraryTest.filterCheck into several tests
2021-04-27 16:59:21 +04:00
Veloman Yunkan
db3e0d7f72
Enhanced the LibraryTest.filterCheck unit-test
...
Now the LibraryTest.filterCheck unit-test validates the actual entries
returned by `Library::filter` (previously only the count of the results
was checked).
2021-04-27 16:59:21 +04:00
Manan Jethwani
965b9622c2
removed redirect to articles in search
2021-04-20 20:23:42 +05:30
Veloman Yunkan
0c7d19ab45
Testing of Manager.readXml()
2021-04-12 15:14:12 +02:00
Veloman Yunkan
49940a30d0
XmlLibraryTest.removeBookByIdUpdatesTheSearchDB
...
The new unit-test fails with a reason not expected before it was
written. The `Library::filter()` operation returns a correct result
after the call to `removeBookById()` (this was a surprise!) but it has
a side-effect of re-adding an empty book with the id still surviving
in the search DB (the emptiness of this re-created book doesn't allow
it to pass the other filtering criteria, which explains why the result
of `Library::filter()` is correct). Had to add a special check
to the new unit-test against that hidden side-effect of
`Library::removeBookById()` + `Library::filter()` combination.
2021-04-09 17:06:45 +04:00
Veloman Yunkan
ccdc316217
Two unit-tests for Library::removeBookById
...
The `XmlLibraryTest.removeBookByIdDropsTheReader` unit-test fails,
demonstrating a bug in `kiwix::Library::removeBookById()`.
2021-04-09 16:59:55 +04:00
Veloman Yunkan
09233bf4f3
Support for partial queries in catalog search
...
The search text in the catalog query is interpreted as partial by
default, but partial query mode can be disabled in C++. The latter
possibility is not exposed via the /catalog/search kiwix-serve endpoint,
though.
2021-03-17 14:32:03 +01:00
Veloman Yunkan
47c67a4202
LibraryServerTest.catalog_search_with_word_exclusion
2021-03-17 14:32:03 +01:00
Veloman Yunkan
6b600a18eb
LibraryServerTest.catalog_prefix_search
2021-03-17 14:32:03 +01:00
Veloman Yunkan
9e887cadf1
Added some diversity to test/data/library.xml
2021-03-17 14:32:03 +01:00
Veloman Yunkan
a599fb3892
Initial version of Xapian-based catalog search
2021-03-17 14:32:03 +01:00
Veloman Yunkan
b7b0bdbdd8
Both Book::update() methods update the category
2021-03-17 14:10:57 +04:00
Veloman Yunkan
a870e05621
Slight enhancement of BookTest.updateTest
2021-03-17 14:10:57 +04:00
Veloman Yunkan
4abc4f8518
Support for book category attribute in library.xml
2021-03-17 14:10:57 +04:00
Veloman Yunkan
6b2067c236
Reading category element from OPDS stream
2021-03-17 14:10:57 +04:00
Veloman Yunkan
e55bf514e8
Dedicated 'category' parameter in catalog search
2021-03-17 14:10:57 +04:00
Veloman Yunkan
f270724b1f
Testing of a library entry without a category
2021-03-17 14:10:44 +04:00
Veloman Yunkan
58186ffb26
kiwix::Book::getCategory()
2021-03-17 14:09:48 +04:00
Veloman Yunkan
6d43fd065f
Less boilerplate in LibraryServerTest unit-tests
2021-03-17 14:02:27 +04:00
Veloman Yunkan
071d2bedd3
LibraryServerTest.catalog_search_by_text
2021-03-17 14:02:27 +04:00
Veloman Yunkan
0b1740e6c5
LibraryServerTest.catalog_search_by_tag
2021-03-17 14:02:27 +04:00
Veloman Yunkan
9913f748e2
LibraryServerTest.catalog_searchdescription_xml
2021-03-17 14:02:27 +04:00
Veloman Yunkan
c5c40cb189
New unit-test LibraryServerTest.catalog_root_xml
2021-03-17 14:02:27 +04:00
Matthieu Gautier
17bc1a3e1a
[TEST] Do not try to use the bookId if it is wrong.
2021-01-26 17:53:25 +01:00
Matthieu Gautier
1a5a2e7a8e
Adapt kiwix-lib to the new libzim api.
2020-12-02 12:16:48 +01:00
Veloman Yunkan
0f8fe1f63f
Alternative implementation of parseMimetypeCounter()
2020-10-29 14:11:27 +04:00
Matthieu Gautier
ed32e16db2
Use a reference in `test/server.cpp` loop.
...
This is mainly to make the macos CI pass.
2020-10-28 16:08:37 +01:00
Matthieu Gautier
08464f23bc
Better parsing of `M/Counter`
...
Mimetype may contain a parameters.
Then, the mimetype would be something like "text/html;foo=bar;foz=baz"
It will contains a `;` and `=` and it conflicts with the same operators
we use to separate the items in our list.
We have to use a more advanced algorithm which takes the context into
account.
Fix #416
2020-10-28 16:03:18 +01:00
Matthieu Gautier
ef42abea4b
Add some tests of `parseMimetypeCounter`
2020-10-28 14:44:23 +01:00
Veloman Yunkan
18e46969b7
Workaround for configure_file(copy:true)
...
The `copy` keyword argument of `configure_file()` first appears in
meson 0.47. Now performing file copy via python.
2020-08-11 18:17:18 +02:00
Veloman Yunkan
e8cc6e4205
Copying data files via a loop
2020-08-11 18:17:18 +02:00
Veloman Yunkan
5f0bcd2bfa
Renamed wikipedia_en_ray_charles_mini_2020-03.zim
2020-08-11 18:17:18 +02:00
Veloman Yunkan
a3bef76083
example.zim is copied only if gtest is available
2020-08-11 18:17:18 +02:00
MananJethwani
599aaa4c1b
added code for status code 204 for empty return of search.
2020-08-01 01:45:42 +05:30