From 8725c88a982d4fd5ed8ed0901e25583782a93b9b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sat, 10 Feb 2018 17:29:06 +0100 Subject: [PATCH] doxygen: test that nested namespaces have the URL properly combined. They don't. --- doxygen/test/js-test-data/nested.bin | Bin 0 -> 215 bytes doxygen/test/populate-js-test-data.py | 9 +++++++++ doxygen/test/test-search.js | 13 +++++++++++++ 3 files changed, 22 insertions(+) create mode 100644 doxygen/test/js-test-data/nested.bin diff --git a/doxygen/test/js-test-data/nested.bin b/doxygen/test/js-test-data/nested.bin new file mode 100644 index 0000000000000000000000000000000000000000..446c461750ecb326ab911315eca784d44c061212 GIT binary patch literal 215 zcmXwyu?oU46h+Ug4o=!ZP#m1xghIhVGB~Ip2n9iK5=xZN4yKiw3jV!m#Noob=fHj0 z?o5w2aPtu#qz@JuK#L5al8(y^N}@3ob8yH4v=Di-f)BEW2H6C+2ZJ2L&IxMd(vc|f zE6LM5?T&zjiBbnsTjQEfQ2!G2 E7l(r<%>V!Z literal 0 HcmV?d00001 diff --git a/doxygen/test/populate-js-test-data.py b/doxygen/test/populate-js-test-data.py index 487f2e5e..895b4ec9 100755 --- a/doxygen/test/populate-js-test-data.py +++ b/doxygen/test/populate-js-test-data.py @@ -82,3 +82,12 @@ trie.insert("hárá", map.add("Hárá", "#b", flags=ResultFlag.PAGE)) with open(basedir/'unicode.bin', 'wb') as f: f.write(serialize_search_data(trie, map, 2)) + +trie = Trie() +map = ResultMap() +trie.insert("magnum", map.add("Magnum", "namespaceMagnum.html", flags=ResultFlag.NAMESPACE)) +trie.insert("math", map.add("Magnum::Math", "namespaceMagnum_1_1Math.html", flags=ResultFlag.NAMESPACE)) +trie.insert("geometry", map.add("Magnum::Math::Geometry", "namespaceMagnum_1_1Math_1_1Geometry.html", flags=ResultFlag.NAMESPACE)) + +with open(basedir/'nested.bin', 'wb') as f: + f.write(serialize_search_data(trie, map, 3)) diff --git a/doxygen/test/test-search.js b/doxygen/test/test-search.js index bffe1720..9cb55052 100644 --- a/doxygen/test/test-search.js +++ b/doxygen/test/test-search.js @@ -255,4 +255,17 @@ const { StringDecoder } = require('string_decoder'); suffixLength: 3 }]); } +/* Properly combine heavily nested URLs */ +{ + let buffer = fs.readFileSync(path.join(__dirname, "js-test-data/nested.bin")); + assert.ok(Search.init(buffer.buffer.slice(buffer.byteOffset, buffer.byteOffset + buffer.byteLength))); + assert.equal(Search.dataSize, 215); + assert.equal(Search.symbolCount, 3); + assert.deepEqual(Search.search('geo'), [ + { name: 'Magnum::Math::Geometry', + url: 'namespaceMagnum_1_1Math_1_1Geometry.html', + flags: 24, + suffixLength: 5 }]); +} + /* Not testing Search.download() because the xmlhttprequest npm package is *crap* */ -- 2.30.2