feat(bot): таблица knowledge_chunks — база знаний бота (FTS russian + GIN)
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
use Illuminate\Foundation\Testing\RefreshDatabase;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
uses(RefreshDatabase::class);
|
||||
|
||||
it('knowledge_chunks существует и ищется полнотекстово по-русски', function () {
|
||||
DB::table('knowledge_chunks')->insert([
|
||||
'source_path' => 'help/project.md',
|
||||
'title' => 'Что такое проект',
|
||||
'tour' => 'create-project',
|
||||
'topics' => 'заявка на лиды, создать проект, источник',
|
||||
'chunk_index' => 0,
|
||||
'content' => 'Проект — это заявка на поток лидов с выбранного источника.',
|
||||
'created_at' => now(),
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
|
||||
$found = DB::select(
|
||||
"SELECT id, title FROM knowledge_chunks
|
||||
WHERE search_tsv @@ websearch_to_tsquery('russian', ?)",
|
||||
['что такое проект']
|
||||
);
|
||||
|
||||
expect($found)->toHaveCount(1)
|
||||
->and($found[0]->title)->toBe('Что такое проект');
|
||||
});
|
||||
Reference in New Issue
Block a user