summaryrefslogtreecommitdiff
path: root/jstests/core/fts_diacritic_and_caseinsensitive.js
blob: 22ad5fb724c7cb3c55e040ba32a4cdb343b3e9b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// Integration tests for no case or diacritic options to $text query operator.

load('jstests/libs/fts.js');

(function() {
"use strict";
var coll = db.fts_diacritic_and_caseinsensitive;

coll.drop();

assert.commandWorked(coll.insert(
    {_id: 0, a: "O próximo Vôo à Noite sobre o Atlântico, Põe Freqüentemente o único Médico."}));

assert.commandWorked(coll.createIndex({a: "text"}, {default_language: "portuguese"}));

assert.eq([0], queryIDS(coll, "proximo voo a", null));
assert.eq([0], queryIDS(coll, "átlántico", null));
assert.eq([0], queryIDS(coll, "\"proxIMO\"", null));
assert.eq([0], queryIDS(coll, "\"poé\" atlânTico", null));
assert.eq([0], queryIDS(coll, "\"próximo voo\" \"unico médico\"", null));
assert.eq([0], queryIDS(coll, "\"proximo voo\" -\"unico atlantico\"", null));

assert.eq([], queryIDS(coll, "À", null));
assert.eq([], queryIDS(coll, "próximoo", null));
assert.eq([], queryIDS(coll, "proximoo vvôo àa", null));
assert.eq([], queryIDS(coll, "À -próximo -Vôo", null));
assert.eq([], queryIDS(coll, "à proximo -voo", null));
assert.eq([], queryIDS(coll, "mo vo", null));
assert.eq([], queryIDS(coll, "\"unico atlantico\"", null));
assert.eq([], queryIDS(coll, "\"próximo Vôo\" -\"unico medico\"", null));
})();