Фильтр многоуровневого включения с обратной связью работает на сервере, но возвращает только верхний уровень в супертесте - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть многоуровневый петлевой фильтр включения, который отлично работает на работающем сервере, но возвращает только верхний уровень информации о запросах при выполнении теста (через супер-тест (сервер)).

Фильтрпохож на ниже:

{
  where: {type: 'type name'}
  include: {
    relation: 'subTypes',
    scope: {
      fields: ['id', 'subType'],
      include: {
        relation: 'templates', 
        scope: {
          fields: ['id', 'template']
        }
      }
    }
  }
}

И отлично работает на работающем сервере, предоставляя все детали уровня:

{
  "id": 1,
  "type": "type name",
  "subTypes": [
    { 
      "id": 1,
      "subType": "subType name 1",
      "type_fk": 1,
      "templates": [
        {
          "id": 1,
          "template": "templateName",
          "subType_fk": 1
        }
      ]
    },
    {
      "id": 2,
      "subType": "subType name 2",
      "type_fk": 1,
      "templates": []
    }
  ]
}

Но вызывает неудачный тест, когда запускается супертестом request.post (...) потому что поиск возвращает только верхний уровень информации о типах:

{
  "id": 1,
  "type": "type name",
  "subTypes": []
}

Это происходит как с соединителем памяти, так и с фактическим источником данных Oracle, если я укажу на это тесты.

Полагаю, я мог бы разбить находку по нескольким находкам по таблицам, но это не кажется лучшим подходом, тем более, что это всего лишь тест, заставляющий меня идти по этому пути.

Любые идеи / предложения с благодарностью получены.

...