e965 / kontur-test-task

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Подготовка

  1. Установить зависимости:
npm i
  1. Для запуска тестов можно выполнить:
npm run test

Либо использовать средства вашей IDE.

Тестовое задание

В файле client.js дописать функцию getFeedbackByProductViewData, которая загружает отзывы продукта с сервера и приводит к требуемому виду. Результат должен содержать список отзывов с отформатированными для отображения именем, email пользователя и датой. Отзывы должны быть отсортированы по дате.

  • Нет доступа к реальному серверу, реализацию необходимо писать ориентируясь на тесты в файле client.test.js и документацию API
  • Тесты запускаются в vscode кнопкой F5 или запуском debug-конфигурации Mocha Tests. Также код можно отлаживать, используя эту конфигурацию

* Усложненное задание: Если передан дополнительный флаг actualize, результрующий список отзывов должен содержать только посление отзывы каждого из пользователей по данному продукту.

Функция getFeedbackByProductViewData

Параметры

  • product - id продукта
  • * actualize - если true, то функция возвращает только последние отзывы по каждому пользователю (не обязательный параметр)

Результат

Возвращает Promise, который разрешается в модель.

Пример

{
  "feedback": [
    {
      "user": "Марк Визельман (weazelman@gmail.com)",
      "message": "",
      "date": "2019-2-14"
    },
    {
      "user": "Кирилл Давсон (kdawson@gmail.com)",
      "message": "Пока сырой продукт",
      "date": "2019-3-3"
    },
    {
      "user": "Виктор Ганеш (vganesh@outlook.com)",
      "message": "",
      "date": "2019-3-4"
    }
  ]
}

В случае, если нет отзывов

{
  "message": "Отзывов пока нет"
}

В случае, если нет такого продукта

{
  "message": "Такого продукта не существует"
}

About


Languages

Language:JavaScript 100.0%