function notificationFilterSetFixture () {
  const minimumSeverityLevelSet = Object.values(notificationFilterMinimumSeverityLevel)
  const disabledCategories = Object.values(notificationFilterDisabledCategory)
  const disabledClassifications = Object.values(notificationFilterDisabledClassification)
  const disabledCategoriesSet = [...disabledCategories.keys()]
    .map(length => disabledCategories.slice(0, length + 1))
  const disabledClassificationsSet = [...disabledCategories.keys()]
    .map(length => disabledCategories.slice(0, length + 1))

  /** Polyfill flatMap for Node10 tests */
  if (!minimumSeverityLevelSet.flatMap) {
    minimumSeverityLevelSet.flatMap = function (callback, thisArg) {
      return minimumSeverityLevelSet.concat.apply([], minimumSeverityLevelSet.map(callback, thisArg))
    }
  }

  return [
    {},
    ...minimumSeverityLevelSet.map(minimumSeverityLevel => ({ minimumSeverityLevel })),
    ...disabledCategoriesSet.map(disabledCategories => ({ disabledCategories })),
    ...disabledClassificationsSet.map(disabledClassifications => ({ disabledClassifications })),
    ...minimumSeverityLevelSet.flatMap(
      minimumSeverityLevel => disabledCategories.map(
        disabledCategories => ({ minimumSeverityLevel, disabledCategories }))),
    ...minimumSeverityLevelSet.flatMap(
      minimumSeverityLevel => disabledClassifications.map(
        disabledClassifications => ({ minimumSeverityLevel, disabledClassifications })))

  ]
}
@returns {Array<NotificationFilter>} Return the list of notification features used in test