62 lines
1.5 KiB
JavaScript
62 lines
1.5 KiB
JavaScript
import { expect } from "chai";
|
|
|
|
const mysql = require('mysql')
|
|
const config = require('../src/background/config')
|
|
|
|
describe("sphinx", () => {
|
|
let sphinx;
|
|
|
|
it("init", function() {
|
|
sphinx = mysql.createPool({
|
|
connectionLimit: config.sphinx.connectionLimit,
|
|
host : config.sphinx.host,
|
|
port : config.sphinx.port
|
|
});
|
|
expect(sphinx)
|
|
})
|
|
|
|
it("insert", function(done) {
|
|
sphinx.query("INSERT INTO files(id, hash, path, pathIndex, size) VALUES(1, 'a', 'bashaa', 'bashaa', 50)", (err) => {
|
|
if(err)
|
|
throw new Error(err)
|
|
|
|
sphinx.query("INSERT INTO files(id, hash, path, pathIndex, size) VALUES(2, 'b', 'biotu', 'biotu', 30)", (err) => {
|
|
if(err)
|
|
throw new Error(err)
|
|
|
|
done()
|
|
})
|
|
})
|
|
})
|
|
|
|
it("select", function(done) {
|
|
sphinx.query("select * from files where hash = 'a'", (err, result) => {
|
|
if(!result)
|
|
throw new Error(err)
|
|
if(result.length !== 1)
|
|
throw new Error('not one result')
|
|
|
|
if(result[0].size !== 50)
|
|
throw new Error('not 50 in field')
|
|
|
|
done()
|
|
})
|
|
})
|
|
|
|
it("search", function(done) {
|
|
sphinx.query("select * from files where MATCH('bashaa')", (err, result) => {
|
|
if(!result)
|
|
throw new Error(err)
|
|
if(result.length !== 1)
|
|
throw new Error('not one result')
|
|
|
|
if(result[0].hash !== 'a')
|
|
throw new Error('not a in hash')
|
|
if(result[0].size !== 50)
|
|
throw new Error('not 50 in field')
|
|
|
|
done()
|
|
})
|
|
})
|
|
});
|