| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- const { expect } = require('chai')
- const request = require('./helpers/request')
- const USER_ID = 101
- const checkWord = words =>
- request.post({
- url: `/user/${USER_ID}/check`,
- body: JSON.stringify({
- words
- })
- })
- const learnWord = word =>
- request.post({
- url: `/user/${USER_ID}/learn`,
- body: JSON.stringify({
- word
- })
- })
- const unlearnWord = word =>
- request.post({
- url: `/user/${USER_ID}/unlearn`,
- body: JSON.stringify({
- word
- })
- })
- const deleteDict = () =>
- request.del({
- url: `/user/${USER_ID}`
- })
- describe('learning words', () => {
- it('should return status 200 when posting a word successfully', async () => {
- const response = await learnWord('abcd')
- expect(response.statusCode).to.equal(200)
- })
- it('should return no misspellings after a word is learnt', async () => {
- const response = await checkWord(['abv'])
- const responseBody = JSON.parse(response.body)
- expect(responseBody.misspellings.length).to.equals(1)
- await learnWord('abv')
- const response2 = await checkWord(['abv'])
- const responseBody2 = JSON.parse(response2.body)
- expect(responseBody2.misspellings.length).to.equals(0)
- })
- it('should return misspellings again after a personal dictionary is deleted', async () => {
- await learnWord('bvc')
- await deleteDict()
- const response = await checkWord(['bvc'])
- const responseBody = JSON.parse(response.body)
- expect(responseBody.misspellings.length).to.equals(1)
- })
- })
- describe('unlearning words', () => {
- it('should return status 200 when posting a word successfully', async () => {
- const response = await unlearnWord('anything')
- expect(response.statusCode).to.equal(200)
- })
- it('should return misspellings after a word is unlearnt', async () => {
- await learnWord('abv')
- const response = await checkWord(['abv'])
- const responseBody = JSON.parse(response.body)
- expect(responseBody.misspellings.length).to.equals(0)
- await unlearnWord('abv')
- const response2 = await checkWord(['abv'])
- const responseBody2 = JSON.parse(response2.body)
- expect(responseBody2.misspellings.length).to.equals(1)
- })
- })
|