@studyportals/fawkes 8.7.0 → 8.7.1-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (520) hide show
  1. package/dist/organisations-seo/index.d.ts +3 -3
  2. package/dist/organisations-seo/index.js +1 -1
  3. package/dist/programmes-seo/index.d.ts +5 -5
  4. package/dist/programmes-seo/index.js +1 -1
  5. package/dist/scholarships-seo/index.d.ts +4 -4
  6. package/dist/scholarships-seo/index.js +2 -2
  7. package/dist/sitemap-generator-seo/index.d.ts +14 -14
  8. package/dist/sitemap-generator-seo/index.js +5 -5
  9. package/dist/src/common/IDependencies.d.ts +1 -1
  10. package/dist/src/common/IPresenter.d.ts +1 -1
  11. package/dist/src/common/ISearchDependencies.d.ts +1 -1
  12. package/dist/src/common/ISeoDependencies.d.ts +2 -2
  13. package/dist/src/common/ISitemapDependencies.d.ts +2 -2
  14. package/dist/src/common/ISitemapUrlGenerator.d.ts +1 -1
  15. package/dist/src/common/policies/BaseSeoIndexabilityPolicy.d.ts +1 -1
  16. package/dist/src/common/policies/BaseSeoIndexabilityPolicy.js +2 -2
  17. package/dist/src/common/rules/NoFiltersSelectedRule.d.ts +2 -2
  18. package/dist/src/common/rules/OnlineAttendanceRule.d.ts +1 -1
  19. package/dist/src/common/rules/OnlineAttendanceRule.js +1 -1
  20. package/dist/src/common/rules/OnlyFiltersSelectedRule.d.ts +2 -2
  21. package/dist/src/common/rules/SingleValueSelectedForFilterRule.d.ts +2 -2
  22. package/dist/src/organisations/IOrganisationSearchApplicationState.d.ts +1 -1
  23. package/dist/src/organisations/ISeoSortingState.d.ts +1 -1
  24. package/dist/src/organisations/SearchIndexabilityManager.d.ts +4 -4
  25. package/dist/src/organisations/SearchIndexabilityManager.js +2 -2
  26. package/dist/src/organisations/policies/OrganisationsSeoIndexabilityPolicy.d.ts +3 -3
  27. package/dist/src/organisations/policies/OrganisationsSeoIndexabilityPolicy.js +3 -3
  28. package/dist/src/organisations/policies/RankedOrganisationsSeoIndexabilityPolicy.d.ts +1 -1
  29. package/dist/src/organisations/policies/RankedOrganisationsSeoIndexabilityPolicy.js +1 -1
  30. package/dist/src/organisations/policies/our-picks/Area.d.ts +5 -5
  31. package/dist/src/organisations/policies/our-picks/Area.js +6 -6
  32. package/dist/src/organisations/policies/our-picks/AreaAttendance.d.ts +7 -7
  33. package/dist/src/organisations/policies/our-picks/AreaAttendance.js +9 -9
  34. package/dist/src/organisations/policies/our-picks/Attendance.d.ts +6 -6
  35. package/dist/src/organisations/policies/our-picks/Attendance.js +7 -7
  36. package/dist/src/organisations/policies/our-picks/Continent.d.ts +5 -5
  37. package/dist/src/organisations/policies/our-picks/Continent.js +6 -6
  38. package/dist/src/organisations/policies/our-picks/Country.d.ts +5 -5
  39. package/dist/src/organisations/policies/our-picks/Country.js +6 -6
  40. package/dist/src/organisations/policies/our-picks/CountryAreaCity.d.ts +6 -6
  41. package/dist/src/organisations/policies/our-picks/CountryAreaCity.js +7 -7
  42. package/dist/src/organisations/policies/our-picks/CountryAttendance.d.ts +7 -7
  43. package/dist/src/organisations/policies/our-picks/CountryAttendance.js +9 -9
  44. package/dist/src/organisations/policies/our-picks/CountryCity.d.ts +6 -6
  45. package/dist/src/organisations/policies/our-picks/CountryCity.js +7 -7
  46. package/dist/src/organisations/policies/our-picks/Unfiltered.d.ts +4 -4
  47. package/dist/src/organisations/policies/our-picks/Unfiltered.js +4 -4
  48. package/dist/src/organisations/policies/ranked/RankedArea.d.ts +4 -4
  49. package/dist/src/organisations/policies/ranked/RankedArea.js +4 -4
  50. package/dist/src/organisations/policies/ranked/RankedAreaDiscipline.d.ts +5 -5
  51. package/dist/src/organisations/policies/ranked/RankedAreaDiscipline.js +6 -6
  52. package/dist/src/organisations/policies/ranked/RankedAttendance.d.ts +5 -5
  53. package/dist/src/organisations/policies/ranked/RankedAttendance.js +5 -5
  54. package/dist/src/organisations/policies/ranked/RankedAttendanceDiscipline.d.ts +5 -5
  55. package/dist/src/organisations/policies/ranked/RankedAttendanceDiscipline.js +6 -6
  56. package/dist/src/organisations/policies/ranked/RankedContinent.d.ts +4 -4
  57. package/dist/src/organisations/policies/ranked/RankedContinent.js +4 -4
  58. package/dist/src/organisations/policies/ranked/RankedContinentAttendance.d.ts +6 -6
  59. package/dist/src/organisations/policies/ranked/RankedContinentAttendance.js +7 -7
  60. package/dist/src/organisations/policies/ranked/RankedCountry.d.ts +4 -4
  61. package/dist/src/organisations/policies/ranked/RankedCountry.js +4 -4
  62. package/dist/src/organisations/policies/ranked/RankedCountryAttendance.d.ts +5 -5
  63. package/dist/src/organisations/policies/ranked/RankedCountryAttendance.js +6 -6
  64. package/dist/src/organisations/policies/ranked/RankedCountryDiscipline.d.ts +4 -4
  65. package/dist/src/organisations/policies/ranked/RankedCountryDiscipline.js +5 -5
  66. package/dist/src/organisations/policies/ranked/RankedDiscipline.d.ts +4 -4
  67. package/dist/src/organisations/policies/ranked/RankedDiscipline.js +4 -4
  68. package/dist/src/organisations/policies/ranked/RankedUnfiltered.d.ts +3 -3
  69. package/dist/src/organisations/policies/ranked/RankedUnfiltered.js +2 -2
  70. package/dist/src/organisations/rules/BaseSearchVolumeOrganisationsRule.d.ts +3 -3
  71. package/dist/src/organisations/rules/ContinentIsEuropeRule.d.ts +1 -1
  72. package/dist/src/organisations/rules/ContinentIsEuropeRule.js +1 -1
  73. package/dist/src/organisations/rules/ExcludeByIdForCitiesRule.d.ts +3 -3
  74. package/dist/src/organisations/rules/MinimumAmountOfRankedResultsRule.d.ts +3 -3
  75. package/dist/src/organisations/rules/MinimumAmountOfRankedResultsRule.js +1 -1
  76. package/dist/src/organisations/rules/MinimumAmountOfResultsRule.d.ts +4 -4
  77. package/dist/src/organisations/rules/MinimumAmountOfResultsRule.js +1 -1
  78. package/dist/src/organisations/rules/NoFiltersSelectedRule.d.ts +2 -2
  79. package/dist/src/organisations/types/IOrganisationSearchDependencies.d.ts +2 -2
  80. package/dist/src/organisations/types/IOrganisationsSitemapDependencies.d.ts +3 -3
  81. package/dist/src/presenters/AreaPresenter.d.ts +1 -1
  82. package/dist/src/presenters/AttendancePresenter.d.ts +1 -1
  83. package/dist/src/presenters/CityPresenter.d.ts +1 -1
  84. package/dist/src/presenters/ContinentPresenter.d.ts +1 -1
  85. package/dist/src/presenters/CountryPresenter.d.ts +1 -1
  86. package/dist/src/presenters/DegreePresenter.d.ts +1 -1
  87. package/dist/src/presenters/DisciplinePresenter.d.ts +1 -1
  88. package/dist/src/presenters/DurationPresenter.d.ts +1 -1
  89. package/dist/src/presenters/EducationalFormPresenter.d.ts +1 -1
  90. package/dist/src/presenters/FormatPresenter.d.ts +1 -1
  91. package/dist/src/presenters/SpecialProgrammesPresenter.d.ts +1 -1
  92. package/dist/src/presenters/TuitionFeePresenter.d.ts +1 -1
  93. package/dist/src/programmes/BaseProgrammeFilterKeyValueRule.d.ts +2 -2
  94. package/dist/src/programmes/BaseProgrammeFilterKeyValueRule.js +1 -1
  95. package/dist/src/programmes/BaseProgrammeRule.d.ts +2 -2
  96. package/dist/src/programmes/IProgrammeRule.d.ts +2 -2
  97. package/dist/src/programmes/ProgrammesBaseIndexabilityPolicy.d.ts +3 -3
  98. package/dist/src/programmes/ProgrammesBaseIndexabilityPolicy.js +1 -1
  99. package/dist/src/programmes/SearchIndexabilityManager.d.ts +4 -4
  100. package/dist/src/programmes/SearchIndexabilityManager.js +8 -4
  101. package/dist/src/programmes/policies/Area.d.ts +3 -3
  102. package/dist/src/programmes/policies/Area.js +4 -4
  103. package/dist/src/programmes/policies/Attendance.d.ts +4 -4
  104. package/dist/src/programmes/policies/Attendance.js +5 -5
  105. package/dist/src/programmes/policies/AttendanceArea.d.ts +4 -4
  106. package/dist/src/programmes/policies/AttendanceArea.js +6 -6
  107. package/dist/src/programmes/policies/AttendanceContinent.d.ts +4 -4
  108. package/dist/src/programmes/policies/AttendanceContinent.js +6 -6
  109. package/dist/src/programmes/policies/AttendanceDegree.d.ts +2 -2
  110. package/dist/src/programmes/policies/AttendanceDegree.js +5 -5
  111. package/dist/src/programmes/policies/AttendanceDuration.d.ts +5 -5
  112. package/dist/src/programmes/policies/AttendanceDuration.js +7 -7
  113. package/dist/src/programmes/policies/AttendanceFormat.d.ts +4 -4
  114. package/dist/src/programmes/policies/AttendanceFormat.js +6 -6
  115. package/dist/src/programmes/policies/Continent.d.ts +3 -3
  116. package/dist/src/programmes/policies/Continent.js +4 -4
  117. package/dist/src/programmes/policies/ContinentDuration.d.ts +3 -3
  118. package/dist/src/programmes/policies/ContinentDuration.js +5 -5
  119. package/dist/src/programmes/policies/ContinentFormat.d.ts +3 -3
  120. package/dist/src/programmes/policies/ContinentFormat.js +5 -5
  121. package/dist/src/programmes/policies/ContinentSpecialProgrammes.d.ts +4 -4
  122. package/dist/src/programmes/policies/ContinentSpecialProgrammes.js +6 -6
  123. package/dist/src/programmes/policies/Country.d.ts +3 -3
  124. package/dist/src/programmes/policies/Country.js +4 -4
  125. package/dist/src/programmes/policies/CountryAttendance.d.ts +4 -4
  126. package/dist/src/programmes/policies/CountryAttendance.js +6 -6
  127. package/dist/src/programmes/policies/CountryAttendanceDegree.d.ts +4 -4
  128. package/dist/src/programmes/policies/CountryAttendanceDegree.js +7 -7
  129. package/dist/src/programmes/policies/CountryDegree.d.ts +2 -2
  130. package/dist/src/programmes/policies/CountryDegree.js +5 -5
  131. package/dist/src/programmes/policies/CountryDuration.d.ts +3 -3
  132. package/dist/src/programmes/policies/CountryDuration.js +5 -5
  133. package/dist/src/programmes/policies/CountryDurationDegree.d.ts +3 -3
  134. package/dist/src/programmes/policies/CountryDurationDegree.js +6 -6
  135. package/dist/src/programmes/policies/CountryEducationalForm.d.ts +2 -2
  136. package/dist/src/programmes/policies/CountryEducationalForm.js +5 -5
  137. package/dist/src/programmes/policies/CountryFormat.d.ts +3 -3
  138. package/dist/src/programmes/policies/CountryFormat.js +5 -5
  139. package/dist/src/programmes/policies/CountrySpecialProgrammes.d.ts +4 -4
  140. package/dist/src/programmes/policies/CountrySpecialProgrammes.js +6 -6
  141. package/dist/src/programmes/policies/Degree.d.ts +3 -3
  142. package/dist/src/programmes/policies/Degree.js +4 -4
  143. package/dist/src/programmes/policies/DegreeArea.d.ts +3 -3
  144. package/dist/src/programmes/policies/DegreeArea.js +5 -5
  145. package/dist/src/programmes/policies/DegreeAttendanceDiscipline.d.ts +4 -4
  146. package/dist/src/programmes/policies/DegreeAttendanceDiscipline.js +7 -7
  147. package/dist/src/programmes/policies/DegreeAttendanceFormat.d.ts +4 -4
  148. package/dist/src/programmes/policies/DegreeAttendanceFormat.js +7 -7
  149. package/dist/src/programmes/policies/DegreeAttendanceSpecialProgrammes.d.ts +4 -4
  150. package/dist/src/programmes/policies/DegreeAttendanceSpecialProgrammes.js +7 -7
  151. package/dist/src/programmes/policies/DegreeContinent.d.ts +2 -2
  152. package/dist/src/programmes/policies/DegreeContinent.js +5 -5
  153. package/dist/src/programmes/policies/DegreeCountryAttendance.d.ts +3 -3
  154. package/dist/src/programmes/policies/DegreeCountryAttendance.js +6 -6
  155. package/dist/src/programmes/policies/DegreeCountryDiscipline.d.ts +3 -3
  156. package/dist/src/programmes/policies/DegreeCountryDiscipline.js +6 -6
  157. package/dist/src/programmes/policies/DegreeCountryTuitionFee.d.ts +3 -3
  158. package/dist/src/programmes/policies/DegreeCountryTuitionFee.js +6 -6
  159. package/dist/src/programmes/policies/DegreeDuration.d.ts +2 -2
  160. package/dist/src/programmes/policies/DegreeDuration.js +5 -5
  161. package/dist/src/programmes/policies/DegreeFormat.d.ts +2 -2
  162. package/dist/src/programmes/policies/DegreeFormat.js +5 -5
  163. package/dist/src/programmes/policies/DegreeSpecialProgrammes.d.ts +3 -3
  164. package/dist/src/programmes/policies/DegreeSpecialProgrammes.js +5 -5
  165. package/dist/src/programmes/policies/DegreeTuitionFee.d.ts +3 -3
  166. package/dist/src/programmes/policies/DegreeTuitionFee.js +5 -5
  167. package/dist/src/programmes/policies/{DisciplineTuitionFee.d.ts → DegreeTuitionFeeArea.d.ts} +5 -5
  168. package/dist/src/programmes/policies/{DegreeAreaTuitionFee.js → DegreeTuitionFeeArea.js} +7 -7
  169. package/dist/src/programmes/policies/{DegreeAttendanceTuitionFee.d.ts → DegreeTuitionFeeAttendance.d.ts} +2 -2
  170. package/dist/src/programmes/policies/{DegreeAttendanceTuitionFee.js → DegreeTuitionFeeAttendance.js} +7 -7
  171. package/dist/src/programmes/policies/{DegreeContinentTuitionFee.d.ts → DegreeTuitionFeeContinent.d.ts} +2 -2
  172. package/dist/src/programmes/policies/{DegreeContinentTuitionFee.js → DegreeTuitionFeeContinent.js} +6 -6
  173. package/dist/src/programmes/policies/{DegreeFormatTuitionFee.d.ts → DegreeTuitionFeeFormat.d.ts} +3 -3
  174. package/dist/src/programmes/policies/{DegreeFormatTuitionFee.js → DegreeTuitionFeeFormat.js} +9 -9
  175. package/dist/src/programmes/policies/Discipline.d.ts +3 -3
  176. package/dist/src/programmes/policies/Discipline.js +4 -4
  177. package/dist/src/programmes/policies/DisciplineAttendance.d.ts +4 -4
  178. package/dist/src/programmes/policies/DisciplineAttendance.js +6 -6
  179. package/dist/src/programmes/policies/DisciplineContinent.d.ts +3 -3
  180. package/dist/src/programmes/policies/DisciplineContinent.js +5 -5
  181. package/dist/src/programmes/policies/DisciplineContinentAttendance.d.ts +4 -4
  182. package/dist/src/programmes/policies/DisciplineContinentAttendance.js +7 -7
  183. package/dist/src/programmes/policies/DisciplineCountry.d.ts +3 -3
  184. package/dist/src/programmes/policies/DisciplineCountry.js +5 -5
  185. package/dist/src/programmes/policies/DisciplineCountryAttendance.d.ts +4 -4
  186. package/dist/src/programmes/policies/DisciplineCountryAttendance.js +7 -7
  187. package/dist/src/programmes/policies/DisciplineCountryEducationalForm.d.ts +2 -2
  188. package/dist/src/programmes/policies/DisciplineCountryEducationalForm.js +6 -6
  189. package/dist/src/programmes/policies/DisciplineCountryFormat.d.ts +3 -3
  190. package/dist/src/programmes/policies/DisciplineCountryFormat.js +6 -6
  191. package/dist/src/programmes/policies/DisciplineDegree.d.ts +3 -3
  192. package/dist/src/programmes/policies/DisciplineDegree.js +5 -5
  193. package/dist/src/programmes/policies/DisciplineDuration.d.ts +3 -3
  194. package/dist/src/programmes/policies/DisciplineDuration.js +5 -5
  195. package/dist/src/programmes/policies/DisciplineEducationalForm.d.ts +2 -2
  196. package/dist/src/programmes/policies/DisciplineEducationalForm.js +5 -5
  197. package/dist/src/programmes/policies/DisciplineFormat.d.ts +3 -3
  198. package/dist/src/programmes/policies/DisciplineFormat.js +5 -5
  199. package/dist/src/programmes/policies/DisciplineSpecialProgrammes.d.ts +3 -3
  200. package/dist/src/programmes/policies/DisciplineSpecialProgrammes.js +5 -5
  201. package/dist/src/programmes/policies/Duration.d.ts +3 -3
  202. package/dist/src/programmes/policies/Duration.js +4 -4
  203. package/dist/src/programmes/policies/Format.d.ts +3 -3
  204. package/dist/src/programmes/policies/Format.js +4 -4
  205. package/dist/src/programmes/policies/SpecialProgrammes.d.ts +3 -3
  206. package/dist/src/programmes/policies/SpecialProgrammes.js +4 -4
  207. package/dist/src/programmes/policies/TuitionFee.d.ts +3 -3
  208. package/dist/src/programmes/policies/TuitionFee.js +4 -4
  209. package/dist/src/programmes/policies/TuitionFeeAttendance.d.ts +4 -4
  210. package/dist/src/programmes/policies/TuitionFeeAttendance.js +6 -6
  211. package/dist/src/programmes/policies/TuitionFeeAttendanceDiscipline.d.ts +4 -4
  212. package/dist/src/programmes/policies/TuitionFeeAttendanceDiscipline.js +7 -7
  213. package/dist/src/programmes/policies/TuitionFeeContinent.d.ts +3 -3
  214. package/dist/src/programmes/policies/TuitionFeeContinent.js +5 -5
  215. package/dist/src/programmes/policies/TuitionFeeCountry.d.ts +3 -3
  216. package/dist/src/programmes/policies/TuitionFeeCountry.js +5 -5
  217. package/dist/src/programmes/policies/TuitionFeeDiscipline.d.ts +3 -3
  218. package/dist/src/programmes/policies/TuitionFeeDiscipline.js +5 -5
  219. package/dist/src/programmes/policies/Unfiltered.d.ts +2 -2
  220. package/dist/src/programmes/policies/Unfiltered.js +2 -2
  221. package/dist/src/programmes/policies/index.d.ts +4 -5
  222. package/dist/src/programmes/policies/index.js +4 -5
  223. package/dist/src/programmes/rules/DegreeAttendanceDisciplineRule.d.ts +2 -2
  224. package/dist/src/programmes/rules/DegreeAttendanceDisciplineSpecificRule.d.ts +2 -2
  225. package/dist/src/programmes/rules/DegreeCountryAttendanceSpecificRule.d.ts +2 -2
  226. package/dist/src/programmes/rules/DegreeCountryDisciplineSpecificRule.d.ts +2 -2
  227. package/dist/src/programmes/rules/DegreeCountryTuitionFeeSpecificRule.d.ts +2 -2
  228. package/dist/src/programmes/rules/DegreeDisciplineRule.d.ts +2 -2
  229. package/dist/src/programmes/rules/IndexableDegreeRule.d.ts +2 -2
  230. package/dist/src/programmes/rules/IndexableDegreeRule.js +1 -1
  231. package/dist/src/programmes/rules/IndexableDurationRule.d.ts +2 -2
  232. package/dist/src/programmes/rules/IndexableDurationRule.js +1 -1
  233. package/dist/src/programmes/rules/IndexableEducationalFormRule.d.ts +2 -2
  234. package/dist/src/programmes/rules/IndexableEducationalFormRule.js +1 -1
  235. package/dist/src/programmes/rules/IndexablePageNumberRule.js +1 -1
  236. package/dist/src/programmes/rules/MbaOrMscDegreeRule.d.ts +2 -2
  237. package/dist/src/programmes/rules/MinimumAmountOfResultsRule.d.ts +3 -3
  238. package/dist/src/programmes/rules/MinimumAmountOfResultsRule.js +1 -1
  239. package/dist/src/programmes/rules/NotDistanceLearningPortalRule.js +1 -1
  240. package/dist/src/programmes/rules/OneYearOnlyRule.d.ts +2 -2
  241. package/dist/src/programmes/types/IProgrammeSearchApplicationState.d.ts +1 -1
  242. package/dist/src/programmes/types/IProgrammeSearchDependencies.d.ts +1 -1
  243. package/dist/src/programmes/types/IProgrammeSearchSitemapDependencies.d.ts +1 -1
  244. package/dist/src/programmes/types/IProgrammeSitemapDependencies.d.ts +2 -2
  245. package/dist/src/programmes/types/IProgrammeSitemapUrlGenerator.d.ts +1 -1
  246. package/dist/src/scholarships/SearchIndexabilityManager.d.ts +5 -5
  247. package/dist/src/scholarships/SearchIndexabilityManager.js +1 -1
  248. package/dist/src/scholarships/policies/Area.d.ts +3 -3
  249. package/dist/src/scholarships/policies/Area.js +4 -4
  250. package/dist/src/scholarships/policies/Country.d.ts +3 -3
  251. package/dist/src/scholarships/policies/Country.js +4 -4
  252. package/dist/src/scholarships/policies/Discipline.d.ts +4 -4
  253. package/dist/src/scholarships/policies/Discipline.js +5 -5
  254. package/dist/src/scholarships/policies/DisciplineCountry.d.ts +3 -3
  255. package/dist/src/scholarships/policies/DisciplineCountry.js +5 -5
  256. package/dist/src/scholarships/policies/ScholarshipSeoIndexabilityPolicy.d.ts +2 -2
  257. package/dist/src/scholarships/policies/ScholarshipSeoIndexabilityPolicy.js +2 -2
  258. package/dist/src/scholarships/policies/Unfiltered.d.ts +2 -2
  259. package/dist/src/scholarships/policies/Unfiltered.js +2 -2
  260. package/dist/src/scholarships/policies/UniversityCountry.d.ts +3 -3
  261. package/dist/src/scholarships/policies/UniversityCountry.js +4 -4
  262. package/dist/src/scholarships/rules/ExceptAustaliaAreasRule.d.ts +3 -3
  263. package/dist/src/scholarships/rules/ExceptAustaliaAreasRule.js +1 -1
  264. package/dist/src/scholarships/rules/SearchVolumeAreasRule.d.ts +3 -3
  265. package/dist/src/scholarships/rules/SearchVolumeCountriesDisciplinesRule.d.ts +3 -3
  266. package/dist/src/scholarships/rules/SearchVolumeCountriesRule.d.ts +3 -3
  267. package/dist/src/scholarships/rules/SearchVolumeDisciplinesRule.d.ts +3 -3
  268. package/dist/src/scholarships/types/IScholarshipSeoDependencies.d.ts +1 -1
  269. package/dist/src/scholarships/types/IScholarshipSitemapDependencies.d.ts +2 -2
  270. package/dist/src/sitemap-generator/BaseSitemapUrlGeneratorManager.d.ts +3 -3
  271. package/dist/src/sitemap-generator/IRankingApiClient.d.ts +1 -1
  272. package/dist/src/sitemap-generator/ISearchApiClient.d.ts +1 -1
  273. package/dist/src/sitemap-generator/ISitemapUrlGeneratorManager.d.ts +3 -3
  274. package/dist/src/sitemap-generator/OrganisationsSitemapUrlGeneratorManager.d.ts +4 -4
  275. package/dist/src/sitemap-generator/OrganisationsSitemapUrlGeneratorManager.js +8 -8
  276. package/dist/src/sitemap-generator/ProgrammesSitemapUrlGeneratorManager.d.ts +3 -3
  277. package/dist/src/sitemap-generator/ProgrammesSitemapUrlGeneratorManager.js +15 -15
  278. package/dist/src/sitemap-generator/ScholarshipsSitemapUrlGeneratorManager.d.ts +3 -3
  279. package/dist/src/sitemap-generator/ScholarshipsSitemapUrlGeneratorManager.js +7 -7
  280. package/dist/src/structured-data/OrganisationStructuredDataFactory.d.ts +1 -1
  281. package/dist/src/structured-data/ProgrammeStructuredDataFactory.d.ts +1 -1
  282. package/dist/tests/common/rules/NoFiltersSelectedRule.test.d.mts +1 -0
  283. package/dist/tests/common/rules/NoFiltersSelectedRule.test.mjs +40 -0
  284. package/dist/tests/common/rules/OnlyFiltersSelectedRule.test.d.mts +1 -0
  285. package/dist/tests/common/rules/OnlyFiltersSelectedRule.test.mjs +70 -0
  286. package/dist/tests/common/rules/SingleValueSelectedForFilterRule.test.d.mts +1 -0
  287. package/dist/tests/common/rules/SingleValueSelectedForFilterRule.test.mjs +54 -0
  288. package/dist/tests/organisations/policies/our-picks/Area.test.d.mts +1 -0
  289. package/dist/tests/organisations/policies/our-picks/Area.test.mjs +125 -0
  290. package/dist/tests/organisations/policies/our-picks/AreaAttendance.test.d.mts +1 -0
  291. package/dist/tests/organisations/policies/our-picks/AreaAttendance.test.mjs +238 -0
  292. package/dist/tests/organisations/policies/our-picks/Attendance.test.d.mts +1 -0
  293. package/dist/tests/organisations/policies/our-picks/Attendance.test.mjs +119 -0
  294. package/dist/tests/organisations/policies/our-picks/Continent.test.d.mts +1 -0
  295. package/dist/tests/organisations/policies/our-picks/Continent.test.mjs +105 -0
  296. package/dist/tests/organisations/policies/our-picks/Country.test.d.mts +1 -0
  297. package/dist/tests/organisations/policies/our-picks/Country.test.mjs +109 -0
  298. package/dist/tests/organisations/policies/our-picks/CountryAreaCity.test.d.mts +1 -0
  299. package/dist/tests/organisations/policies/our-picks/CountryAreaCity.test.mjs +152 -0
  300. package/dist/tests/organisations/policies/our-picks/CountryAttendance.test.d.mts +1 -0
  301. package/dist/tests/organisations/policies/our-picks/CountryAttendance.test.mjs +223 -0
  302. package/dist/tests/organisations/policies/our-picks/CountryCity.test.d.mts +1 -0
  303. package/dist/tests/organisations/policies/our-picks/CountryCity.test.mjs +109 -0
  304. package/dist/tests/organisations/policies/our-picks/Unfiltered.test.d.mts +1 -0
  305. package/dist/tests/organisations/policies/our-picks/Unfiltered.test.mjs +60 -0
  306. package/dist/tests/organisations/policies/ranked/RankedArea.test.d.mts +1 -0
  307. package/dist/tests/organisations/policies/ranked/RankedArea.test.mjs +149 -0
  308. package/dist/tests/organisations/policies/ranked/RankedAreaDiscipline.test.d.mts +1 -0
  309. package/dist/tests/organisations/policies/ranked/RankedAreaDiscipline.test.mjs +237 -0
  310. package/dist/tests/organisations/policies/ranked/RankedAttendance.test.d.mts +1 -0
  311. package/dist/tests/organisations/policies/ranked/RankedAttendance.test.mjs +139 -0
  312. package/dist/tests/organisations/policies/ranked/RankedAttendanceDiscipline.test.d.mts +1 -0
  313. package/dist/tests/organisations/policies/ranked/RankedAttendanceDiscipline.test.mjs +224 -0
  314. package/dist/tests/organisations/policies/ranked/RankedContinent.test.d.mts +1 -0
  315. package/dist/tests/organisations/policies/ranked/RankedContinent.test.mjs +125 -0
  316. package/dist/tests/organisations/policies/ranked/RankedContinentAttendance.test.d.mts +1 -0
  317. package/dist/tests/organisations/policies/ranked/RankedContinentAttendance.test.mjs +253 -0
  318. package/dist/tests/organisations/policies/ranked/RankedCountry.test.d.mts +1 -0
  319. package/dist/tests/organisations/policies/ranked/RankedCountry.test.mjs +131 -0
  320. package/dist/tests/organisations/policies/ranked/RankedCountryAttendance.test.d.mts +1 -0
  321. package/dist/tests/organisations/policies/ranked/RankedCountryAttendance.test.mjs +230 -0
  322. package/dist/tests/organisations/policies/ranked/RankedCountryDiscipline.test.d.mts +1 -0
  323. package/dist/tests/organisations/policies/ranked/RankedCountryDiscipline.test.mjs +197 -0
  324. package/dist/tests/organisations/policies/ranked/RankedDiscipline.test.d.mts +1 -0
  325. package/dist/tests/organisations/policies/ranked/RankedDiscipline.test.mjs +124 -0
  326. package/dist/tests/organisations/policies/ranked/RankedUnfiltered.test.d.mts +1 -0
  327. package/dist/tests/organisations/policies/ranked/RankedUnfiltered.test.mjs +75 -0
  328. package/dist/tests/organisations/rules/ContinentIsEuropeRule.test.d.mts +1 -0
  329. package/dist/tests/organisations/rules/ContinentIsEuropeRule.test.mjs +59 -0
  330. package/dist/tests/organisations/rules/MinimumAmountOfRankedResultsRule.test.d.mts +1 -0
  331. package/dist/tests/organisations/rules/MinimumAmountOfRankedResultsRule.test.mjs +77 -0
  332. package/dist/tests/organisations/rules/MinimumAmountOfResultsRule.test.d.mts +1 -0
  333. package/dist/tests/organisations/rules/MinimumAmountOfResultsRule.test.mjs +77 -0
  334. package/dist/tests/organisations/rules/OnlineAttendanceRule.test.d.mts +1 -0
  335. package/dist/tests/organisations/rules/OnlineAttendanceRule.test.mjs +59 -0
  336. package/dist/tests/organisations/rules/SearchVolumeAreasAttendanceRule.test.d.mts +1 -0
  337. package/dist/tests/organisations/rules/SearchVolumeAreasAttendanceRule.test.mjs +59 -0
  338. package/dist/tests/organisations/rules/SearchVolumeAreasDisciplineRule.test.d.mts +1 -0
  339. package/dist/tests/organisations/rules/SearchVolumeAreasDisciplineRule.test.mjs +59 -0
  340. package/dist/tests/organisations/rules/SearchVolumeCountriesAttendanceRule.test.d.mts +1 -0
  341. package/dist/tests/organisations/rules/SearchVolumeCountriesAttendanceRule.test.mjs +59 -0
  342. package/dist/tests/organisations/utils/SearchDependencies.util.d.mts +20 -0
  343. package/dist/tests/organisations/utils/SearchDependencies.util.mjs +88 -0
  344. package/dist/tests/organisations/utils/SitemapDependencies.util.d.mts +18 -0
  345. package/dist/tests/organisations/utils/SitemapDependencies.util.mjs +54 -0
  346. package/dist/tests/presenters/AreaPresenter.test.d.mts +1 -0
  347. package/dist/tests/presenters/AreaPresenter.test.mjs +46 -0
  348. package/dist/tests/presenters/AttendancePresenter.test.d.mts +1 -0
  349. package/dist/tests/presenters/AttendancePresenter.test.mjs +41 -0
  350. package/dist/tests/presenters/ContinentPresenter.test.d.mts +1 -0
  351. package/dist/tests/presenters/ContinentPresenter.test.mjs +44 -0
  352. package/dist/tests/presenters/CountryPresenter.test.d.mts +1 -0
  353. package/dist/tests/presenters/CountryPresenter.test.mjs +50 -0
  354. package/dist/tests/presenters/DegreePresenter.test.d.mts +1 -0
  355. package/dist/tests/presenters/DegreePresenter.test.mjs +51 -0
  356. package/dist/tests/presenters/DisciplinePresenter.test.d.mts +1 -0
  357. package/dist/tests/presenters/DisciplinePresenter.test.mjs +40 -0
  358. package/dist/tests/presenters/DurationPresenter.test.d.mts +1 -0
  359. package/dist/tests/presenters/DurationPresenter.test.mjs +64 -0
  360. package/dist/tests/presenters/EducationalFormPresenter.test.d.mts +1 -0
  361. package/dist/tests/presenters/EducationalFormPresenter.test.mjs +60 -0
  362. package/dist/tests/presenters/FormatPresenter.test.d.mts +1 -0
  363. package/dist/tests/presenters/FormatPresenter.test.mjs +43 -0
  364. package/dist/tests/presenters/SpecialProgrammesPresenter.test.d.mts +1 -0
  365. package/dist/tests/presenters/SpecialProgrammesPresenter.test.mjs +66 -0
  366. package/dist/tests/presenters/TuitionFeePresenter.test.d.mts +1 -0
  367. package/dist/tests/presenters/TuitionFeePresenter.test.mjs +52 -0
  368. package/dist/tests/programmes/policies/Area.test.d.mts +1 -0
  369. package/dist/tests/programmes/policies/Area.test.mjs +153 -0
  370. package/dist/tests/programmes/policies/Attendance.test.d.mts +1 -0
  371. package/dist/tests/programmes/policies/Attendance.test.mjs +173 -0
  372. package/dist/tests/programmes/policies/AttendanceDegree.test.d.mts +1 -0
  373. package/dist/tests/programmes/policies/AttendanceDegree.test.mjs +291 -0
  374. package/dist/tests/programmes/policies/Continent.test.d.mts +1 -0
  375. package/dist/tests/programmes/policies/Continent.test.mjs +169 -0
  376. package/dist/tests/programmes/policies/Country.test.d.mts +1 -0
  377. package/dist/tests/programmes/policies/Country.test.mjs +164 -0
  378. package/dist/tests/programmes/policies/CountryAttendance.test.d.mts +1 -0
  379. package/dist/tests/programmes/policies/CountryAttendance.test.mjs +251 -0
  380. package/dist/tests/programmes/policies/CountryAttendanceDegree.test.d.mts +1 -0
  381. package/dist/tests/programmes/policies/CountryAttendanceDegree.test.mjs +337 -0
  382. package/dist/tests/programmes/policies/CountryDegree.test.d.mts +1 -0
  383. package/dist/tests/programmes/policies/CountryDegree.test.mjs +262 -0
  384. package/dist/tests/programmes/policies/CountryDuration.test.d.mts +1 -0
  385. package/dist/tests/programmes/policies/CountryDuration.test.mjs +234 -0
  386. package/dist/tests/programmes/policies/CountryDurationDegree.test.d.mts +1 -0
  387. package/dist/tests/programmes/policies/CountryDurationDegree.test.mjs +304 -0
  388. package/dist/tests/programmes/policies/CountryEducationalForm.test.d.mts +1 -0
  389. package/dist/tests/programmes/policies/CountryEducationalForm.test.mjs +260 -0
  390. package/dist/tests/programmes/policies/CountryFormat.test.d.mts +1 -0
  391. package/dist/tests/programmes/policies/CountryFormat.test.mjs +253 -0
  392. package/dist/tests/programmes/policies/DegreeAttendanceDiscipline.test.d.mts +1 -0
  393. package/dist/tests/programmes/policies/DegreeAttendanceDiscipline.test.mjs +179 -0
  394. package/dist/tests/programmes/policies/DegreeCountryAttendance.test.d.mts +1 -0
  395. package/dist/tests/programmes/policies/DegreeCountryAttendance.test.mjs +267 -0
  396. package/dist/tests/programmes/policies/DegreeCountryTuitionFee.test.d.mts +1 -0
  397. package/dist/tests/programmes/policies/DegreeCountryTuitionFee.test.mjs +217 -0
  398. package/dist/tests/programmes/policies/DegreeFormat.test.d.mts +1 -0
  399. package/dist/tests/programmes/policies/DegreeFormat.test.mjs +221 -0
  400. package/dist/tests/programmes/policies/Discipline.test.d.mts +1 -0
  401. package/dist/tests/programmes/policies/Discipline.test.mjs +159 -0
  402. package/dist/tests/programmes/policies/DisciplineAttendance.test.d.mts +1 -0
  403. package/dist/tests/programmes/policies/DisciplineAttendance.test.mjs +292 -0
  404. package/dist/tests/programmes/policies/DisciplineContinent.test.d.mts +1 -0
  405. package/dist/tests/programmes/policies/DisciplineContinent.test.mjs +253 -0
  406. package/dist/tests/programmes/policies/DisciplineCountry.test.d.mts +1 -0
  407. package/dist/tests/programmes/policies/DisciplineCountry.test.mjs +244 -0
  408. package/dist/tests/programmes/policies/DisciplineCountryEducationalForm.test.d.mts +1 -0
  409. package/dist/tests/programmes/policies/DisciplineCountryEducationalForm.test.mjs +345 -0
  410. package/dist/tests/programmes/policies/DisciplineDegree.test.d.mts +1 -0
  411. package/dist/tests/programmes/policies/DisciplineDegree.test.mjs +273 -0
  412. package/dist/tests/programmes/policies/DisciplineDuration.test.d.mts +1 -0
  413. package/dist/tests/programmes/policies/DisciplineDuration.test.mjs +278 -0
  414. package/dist/tests/programmes/policies/DisciplineEducationalForm.test.d.mts +1 -0
  415. package/dist/tests/programmes/policies/DisciplineEducationalForm.test.mjs +302 -0
  416. package/dist/tests/programmes/policies/DisciplineFormat.test.d.mts +1 -0
  417. package/dist/tests/programmes/policies/DisciplineFormat.test.mjs +266 -0
  418. package/dist/tests/programmes/policies/Duration.test.d.mts +1 -0
  419. package/dist/tests/programmes/policies/Duration.test.mjs +179 -0
  420. package/dist/tests/programmes/policies/Format.test.d.mts +1 -0
  421. package/dist/tests/programmes/policies/Format.test.mjs +117 -0
  422. package/dist/tests/programmes/policies/NewRulesValidation.test.d.mts +1 -0
  423. package/dist/tests/programmes/policies/NewRulesValidation.test.mjs +320 -0
  424. package/dist/tests/programmes/policies/SpecialProgrammes.test.d.mts +1 -0
  425. package/dist/tests/programmes/policies/SpecialProgrammes.test.mjs +171 -0
  426. package/dist/tests/programmes/policies/TuitionFeeAttendanceDiscipline.test.d.mts +1 -0
  427. package/dist/tests/programmes/policies/TuitionFeeAttendanceDiscipline.test.mjs +360 -0
  428. package/dist/tests/programmes/policies/TuitionFeeContinent.test.d.mts +1 -0
  429. package/dist/tests/programmes/policies/TuitionFeeContinent.test.mjs +293 -0
  430. package/dist/tests/programmes/policies/TuitionFeeCountry.test.d.mts +1 -0
  431. package/dist/tests/programmes/policies/TuitionFeeCountry.test.mjs +266 -0
  432. package/dist/tests/programmes/policies/TuitionFeeDiscipline.test.d.mts +1 -0
  433. package/dist/tests/programmes/policies/TuitionFeeDiscipline.test.mjs +267 -0
  434. package/dist/tests/programmes/policies/Unfiltered.test.d.mts +1 -0
  435. package/dist/tests/programmes/policies/Unfiltered.test.mjs +90 -0
  436. package/dist/tests/programmes/rules/AffordableTuitionFeeRule.test.d.mts +1 -0
  437. package/dist/tests/programmes/rules/AffordableTuitionFeeRule.test.mjs +27 -0
  438. package/dist/tests/programmes/rules/DegreeCountrySpecificRule.test.d.mts +1 -0
  439. package/dist/tests/programmes/rules/DegreeCountrySpecificRule.test.mjs +121 -0
  440. package/dist/tests/programmes/rules/DegreeDisciplineRule.test.d.mts +1 -0
  441. package/dist/tests/programmes/rules/DegreeDisciplineRule.test.mjs +169 -0
  442. package/dist/tests/programmes/rules/IndexableDegreeRule.test.d.mts +1 -0
  443. package/dist/tests/programmes/rules/IndexableDegreeRule.test.mjs +101 -0
  444. package/dist/tests/programmes/rules/IndexableDurationRule.test..d.mts +1 -0
  445. package/dist/tests/programmes/rules/IndexableDurationRule.test..mjs +25 -0
  446. package/dist/tests/programmes/rules/IndexableEducationalFormRule.test.d.mts +1 -0
  447. package/dist/tests/programmes/rules/IndexableEducationalFormRule.test.mjs +27 -0
  448. package/dist/tests/programmes/rules/IndexablePageNumberRule.test.d.mts +1 -0
  449. package/dist/tests/programmes/rules/IndexablePageNumberRule.test.mjs +51 -0
  450. package/dist/tests/programmes/rules/MbaDegreeRule.test.d.mts +1 -0
  451. package/dist/tests/programmes/rules/MbaDegreeRule.test.mjs +55 -0
  452. package/dist/tests/programmes/rules/MbaOrMscDegreeRule.test.d.mts +1 -0
  453. package/dist/tests/programmes/rules/MbaOrMscDegreeRule.test.mjs +53 -0
  454. package/dist/tests/programmes/rules/MinimumAmountOfResultsRule.test.d.mts +1 -0
  455. package/dist/tests/programmes/rules/MinimumAmountOfResultsRule.test.mjs +79 -0
  456. package/dist/tests/programmes/rules/NotDistanceLearningPortalRule.test.d.mts +1 -0
  457. package/dist/tests/programmes/rules/NotDistanceLearningPortalRule.test.mjs +57 -0
  458. package/dist/tests/programmes/rules/OneYearDurationRule.test..d.mts +1 -0
  459. package/dist/tests/programmes/rules/OneYearDurationRule.test..mjs +40 -0
  460. package/dist/tests/programmes/rules/OnlineAttendanceRule.test.d.mts +1 -0
  461. package/dist/tests/programmes/rules/OnlineAttendanceRule.test.mjs +69 -0
  462. package/dist/tests/programmes/rules/PartTimeFormatRule.test.d.mts +1 -0
  463. package/dist/tests/programmes/rules/PartTimeFormatRule.test.mjs +27 -0
  464. package/dist/tests/programmes/utils/SearchDependencies.util.d.mts +16 -0
  465. package/dist/tests/programmes/utils/SearchDependencies.util.mjs +73 -0
  466. package/dist/tests/programmes/utils/SitemapDependencies.util.d.mts +15 -0
  467. package/dist/tests/programmes/utils/SitemapDependencies.util.mjs +49 -0
  468. package/dist/tests/scholarships/policies/Area.test.d.mts +1 -0
  469. package/dist/tests/scholarships/policies/Area.test.mjs +121 -0
  470. package/dist/tests/scholarships/policies/Country.test.d.mts +1 -0
  471. package/dist/tests/scholarships/policies/Country.test.mjs +97 -0
  472. package/dist/tests/scholarships/policies/Discipline.test.d.mts +1 -0
  473. package/dist/tests/scholarships/policies/Discipline.test.mjs +93 -0
  474. package/dist/tests/scholarships/policies/DisciplineCountry.test.d.mts +1 -0
  475. package/dist/tests/scholarships/policies/DisciplineCountry.test.mjs +151 -0
  476. package/dist/tests/scholarships/policies/Unfiltered.test.d.mts +1 -0
  477. package/dist/tests/scholarships/policies/Unfiltered.test.mjs +44 -0
  478. package/dist/tests/scholarships/policies/UniversityCountry.test.d.mts +1 -0
  479. package/dist/tests/scholarships/policies/UniversityCountry.test.mjs +115 -0
  480. package/dist/tests/scholarships/rules/ExceptAustaliaAreasRule.test.d.mts +1 -0
  481. package/dist/tests/scholarships/rules/ExceptAustaliaAreasRule.test.mjs +64 -0
  482. package/dist/tests/scholarships/rules/SearchVolumeAreasRule.test.d.mts +1 -0
  483. package/dist/tests/scholarships/rules/SearchVolumeAreasRule.test.mjs +62 -0
  484. package/dist/tests/scholarships/rules/SearchVolumeCountriesDisciplinesRule.test.d.mts +1 -0
  485. package/dist/tests/scholarships/rules/SearchVolumeCountriesDisciplinesRule.test.mjs +114 -0
  486. package/dist/tests/scholarships/rules/SearchVolumeCountriesRule.test.d.mts +1 -0
  487. package/dist/tests/scholarships/rules/SearchVolumeCountriesRule.test.mjs +62 -0
  488. package/dist/tests/scholarships/rules/SearchVolumeDisciplinesRule.test.d.mts +1 -0
  489. package/dist/tests/scholarships/rules/SearchVolumeDisciplinesRule.test.mjs +62 -0
  490. package/dist/tests/scholarships/utils/SearchDependencies.util.d.mts +16 -0
  491. package/dist/tests/scholarships/utils/SearchDependencies.util.mjs +70 -0
  492. package/dist/tests/scholarships/utils/SitemapDependencies.util.d.mts +11 -0
  493. package/dist/tests/scholarships/utils/SitemapDependencies.util.mjs +33 -0
  494. package/dist/tests/sitemap-generator/BaseSitemapUrlGeneratorManager.test.d.mts +1 -0
  495. package/dist/tests/sitemap-generator/BaseSitemapUrlGeneratorManager.test.mjs +82 -0
  496. package/dist/tests/sitemap-generator/OrganisationsSitemapUrlGeneratorManager.test.d.mts +1 -0
  497. package/dist/tests/sitemap-generator/OrganisationsSitemapUrlGeneratorManager.test.mjs +85 -0
  498. package/dist/tests/sitemap-generator/ProgrammesSitemapUrlGeneratorManager.test.d.mts +1 -0
  499. package/dist/tests/sitemap-generator/ProgrammesSitemapUrlGeneratorManager.test.mjs +77 -0
  500. package/dist/tests/sitemap-generator/ScholarshipsSitemapUrlGeneratorManager.test.d.mts +1 -0
  501. package/dist/tests/sitemap-generator/ScholarshipsSitemapUrlGeneratorManager.test.mjs +60 -0
  502. package/dist/tests/structured-data/OrganisationStructuredDataFactory.test.d.mts +1 -0
  503. package/dist/tests/structured-data/OrganisationStructuredDataFactory.test.mjs +334 -0
  504. package/dist/tests/structured-data/ProgrammeStructuredDataFactory.test.d.mts +1 -0
  505. package/dist/tests/structured-data/ProgrammeStructuredDataFactory.test.mjs +562 -0
  506. package/dist/tests/structured-data/ScholarshipStructuredDataFactory.test.d.mts +1 -0
  507. package/dist/tests/structured-data/ScholarshipStructuredDataFactory.test.mjs +292 -0
  508. package/dist/tests/structured-data/SearchStructuredDataFactory.paywall.test.d.mts +1 -0
  509. package/dist/tests/structured-data/SearchStructuredDataFactory.paywall.test.mjs +258 -0
  510. package/package.json +1 -1
  511. package/dist/src/programmes/policies/AttendanceTuitionFee.d.ts +0 -17
  512. package/dist/src/programmes/policies/AttendanceTuitionFee.js +0 -51
  513. package/dist/src/programmes/policies/ContinentTuitionFee.d.ts +0 -16
  514. package/dist/src/programmes/policies/ContinentTuitionFee.js +0 -46
  515. package/dist/src/programmes/policies/CountryTuitionFee.d.ts +0 -16
  516. package/dist/src/programmes/policies/CountryTuitionFee.js +0 -46
  517. package/dist/src/programmes/policies/DegreeAreaTuitionFee.d.ts +0 -16
  518. package/dist/src/programmes/policies/DisciplineTuitionFee.js +0 -46
  519. package/dist/src/programmes/policies/DisciplineTuitionFeeAttendance.d.ts +0 -17
  520. package/dist/src/programmes/policies/DisciplineTuitionFeeAttendance.js +0 -54
@@ -0,0 +1,109 @@
1
+ import { SortingOptions } from "@/enums/SortingOptions";
2
+ import { CountryCity } from "@/organisations/policies";
3
+ import { FilterKey } from "@studyportals/search-filters/server-side";
4
+ import { SearchDependencies } from '../../../organisations/utils/SearchDependencies.util.mjs';
5
+ import { beforeEach, describe, expect, it, vi } from "vitest";
6
+ import { CityPresenter } from "@/presenters/CityPresenter";
7
+ import { PortalType } from "@studyportals/domain-client";
8
+ import { SitemapDependencies } from '../../utils/SitemapDependencies.util.mjs';
9
+ describe('Policy:CountryCity', () => {
10
+ describe('shouldIndex', () => {
11
+ let searchDependenciesHelper;
12
+ let countryCityPolicy;
13
+ beforeEach(() => {
14
+ searchDependenciesHelper = new SearchDependencies();
15
+ countryCityPolicy = new CountryCity(searchDependenciesHelper.dependencies);
16
+ searchDependenciesHelper.setSortingState(SortingOptions.OUR_PICKS);
17
+ searchDependenciesHelper.setNumberOfResults(10);
18
+ });
19
+ it('Should return true when all conditions are met', async () => {
20
+ const cityID = '1';
21
+ const countryID = '30';
22
+ searchDependenciesHelper.setFilterKeyValues(new Map([
23
+ [FilterKey.COUNTRY, [countryID]],
24
+ [FilterKey.CITY, [cityID]]
25
+ ]));
26
+ const result = await countryCityPolicy.shouldIndex();
27
+ expect(result).toBe(true);
28
+ });
29
+ it('Should return false when area is present', async () => {
30
+ searchDependenciesHelper.setFilterKeyValues(new Map([
31
+ [FilterKey.COUNTRY, ['30']],
32
+ [FilterKey.AREA, ['8']],
33
+ [FilterKey.CITY, ['1']]
34
+ ]));
35
+ const result = await countryCityPolicy.shouldIndex();
36
+ expect(result).toBe(false);
37
+ });
38
+ it('Should return false when multiple cities are selected', async () => {
39
+ searchDependenciesHelper.setFilterKeyValues(new Map([
40
+ [FilterKey.COUNTRY, ['30']],
41
+ [FilterKey.CITY, ['1', '2']]
42
+ ]));
43
+ const result = await countryCityPolicy.shouldIndex();
44
+ expect(result).toBe(false);
45
+ });
46
+ it('Should return false when country is missing', async () => {
47
+ searchDependenciesHelper.setFilterKeyValues(new Map([
48
+ [FilterKey.CITY, ['1']]
49
+ ]));
50
+ const result = await countryCityPolicy.shouldIndex();
51
+ expect(result).toBe(false);
52
+ });
53
+ it.each([[PortalType.BACHELOR], [PortalType.PHD], [PortalType.SHORT]])('Should return false when the selected portal type is %s', async (portalType) => {
54
+ const cityID = '1';
55
+ const countryID = '30';
56
+ searchDependenciesHelper.setFilterKeyValues(new Map([
57
+ [FilterKey.COUNTRY, [countryID]],
58
+ [FilterKey.CITY, [cityID]]
59
+ ]));
60
+ searchDependenciesHelper.setPortalType(portalType);
61
+ const result = await countryCityPolicy.shouldIndex();
62
+ expect(result).toBe(false);
63
+ });
64
+ });
65
+ describe('generateSitemapUrls', () => {
66
+ let sitemapDependenciesHelper;
67
+ let countryCityPolicy;
68
+ let cityFragments = [];
69
+ beforeEach(() => {
70
+ sitemapDependenciesHelper = new SitemapDependencies();
71
+ sitemapDependenciesHelper.setOrganisationCount(10);
72
+ countryCityPolicy = new CountryCity(sitemapDependenciesHelper.dependencies);
73
+ vi.spyOn(CityPresenter, 'getInstance').mockReturnValue({
74
+ getFragments: vi.fn(() => cityFragments),
75
+ generatePaths: vi.fn(() => cityFragments),
76
+ fragments: cityFragments
77
+ });
78
+ });
79
+ it('Should generate correct sitemap urls', async () => {
80
+ const countryId = '30';
81
+ const cityId = '1';
82
+ cityFragments = [
83
+ {
84
+ id: cityId,
85
+ areaId: null,
86
+ countryId: countryId,
87
+ path: '/uk/city'
88
+ }
89
+ ];
90
+ const result = await countryCityPolicy.generateSitemapUrls();
91
+ expect(result).toEqual(['/uk/city']);
92
+ });
93
+ it.each([[PortalType.BACHELOR], [PortalType.PHD], [PortalType.SHORT]])('Should not return path when portal type is %s', async (portalType) => {
94
+ const countryId = '30';
95
+ const cityId = '1';
96
+ cityFragments = [
97
+ {
98
+ id: cityId,
99
+ countryId: countryId,
100
+ areaId: null,
101
+ path: '/uk/city'
102
+ }
103
+ ];
104
+ sitemapDependenciesHelper.setPortalType(portalType);
105
+ const result = await countryCityPolicy.generateSitemapUrls();
106
+ expect(result).toEqual([]);
107
+ });
108
+ });
109
+ });
@@ -0,0 +1,60 @@
1
+ import { describe, it, expect, beforeEach } from 'vitest';
2
+ import { FilterKey } from '@studyportals/search-filters/server-side';
3
+ import { SearchDependencies } from '../../../organisations/utils/SearchDependencies.util.mjs';
4
+ import { SitemapDependencies } from '../../utils/SitemapDependencies.util.mjs';
5
+ import { SortingOptions } from '@/enums/SortingOptions';
6
+ import { Unfiltered } from '@/organisations/policies';
7
+ import { PortalType } from '@studyportals/domain-client';
8
+ describe('Policy:Unfiltered', () => {
9
+ describe('shouldIndex', () => {
10
+ let searchDependenciesHelper;
11
+ let unfilteredPolicy;
12
+ beforeEach(() => {
13
+ searchDependenciesHelper = new SearchDependencies();
14
+ unfilteredPolicy = new Unfiltered(searchDependenciesHelper.dependencies);
15
+ searchDependenciesHelper.setSortingState(SortingOptions.OUR_PICKS);
16
+ searchDependenciesHelper.setNumberOfResults(10);
17
+ });
18
+ it('Should return true when all conditions are met', async () => {
19
+ searchDependenciesHelper.setFilterKeyValues(new Map([]));
20
+ const result = await unfilteredPolicy.shouldIndex();
21
+ expect(result).toBe(true);
22
+ });
23
+ it.each([[PortalType.BACHELOR], [PortalType.PHD], [PortalType.SHORT]])('Should return false when the selected portal type is %s', async (portalType) => {
24
+ searchDependenciesHelper.setFilterKeyValues(new Map([]));
25
+ searchDependenciesHelper.setPortalType(portalType);
26
+ const result = await unfilteredPolicy.shouldIndex();
27
+ expect(result).toBe(false);
28
+ });
29
+ it('Should return false when area when University Meta Ranking sorting is selected', async () => {
30
+ searchDependenciesHelper.setFilterKeyValues(new Map([]));
31
+ searchDependenciesHelper.setSortingState(SortingOptions.UNIVERSITY_META_RANKING);
32
+ const result = await unfilteredPolicy.shouldIndex();
33
+ expect(result).toBe(false);
34
+ });
35
+ it('Should return false when any filter is selected', async () => {
36
+ const countryId = '30'; // UK
37
+ searchDependenciesHelper.setFilterKeyValues(new Map([[FilterKey.COUNTRY, [countryId]]]));
38
+ const result = await unfilteredPolicy.shouldIndex();
39
+ expect(result).toBe(false);
40
+ });
41
+ });
42
+ describe('generateSitemapUrls', () => {
43
+ let sitemapDependenciesHelper;
44
+ let unfilteredPolicy;
45
+ beforeEach(() => {
46
+ sitemapDependenciesHelper = new SitemapDependencies();
47
+ sitemapDependenciesHelper.setOrganisationCount(10);
48
+ unfilteredPolicy = new Unfiltered(sitemapDependenciesHelper.dependencies);
49
+ });
50
+ it('Should return path when all conditions are met', async () => {
51
+ const result = await unfilteredPolicy.generateSitemapUrls();
52
+ expect(result).toEqual(['']);
53
+ });
54
+ it.each([[PortalType.BACHELOR], [PortalType.PHD], [PortalType.SHORT]])('Should not return path when portal type is %s', async (portalType) => {
55
+ sitemapDependenciesHelper.setPortalType(portalType);
56
+ const result = await unfilteredPolicy.generateSitemapUrls();
57
+ expect(result).toEqual([]);
58
+ });
59
+ });
60
+ });
@@ -0,0 +1,149 @@
1
+ import { describe, it, expect, beforeEach, vi } from 'vitest';
2
+ import { FilterKey } from '@studyportals/search-filters/server-side';
3
+ import { RankedArea } from '@/organisations/policies/ranked/RankedArea';
4
+ import { SearchDependencies } from '../../../organisations/utils/SearchDependencies.util.mjs';
5
+ import { SitemapDependencies } from '../../utils/SitemapDependencies.util.mjs';
6
+ import { SortingOptions } from '@/enums/SortingOptions';
7
+ import { AreaPresenter } from '@/presenters/AreaPresenter';
8
+ import { PortalType } from '@studyportals/domain-client';
9
+ describe('Policy:RankedArea', () => {
10
+ describe('shouldIndex', () => {
11
+ let searchDependenciesHelper;
12
+ let rankedAreaPolicy;
13
+ beforeEach(() => {
14
+ searchDependenciesHelper = new SearchDependencies();
15
+ rankedAreaPolicy = new RankedArea(searchDependenciesHelper.dependencies);
16
+ searchDependenciesHelper.setSortingState(SortingOptions.UNIVERSITY_META_RANKING);
17
+ searchDependenciesHelper.setRankedResultsCount(10);
18
+ });
19
+ it('Should return true when all conditions are met', async () => {
20
+ const areaId = '996'; // England
21
+ const countryId = '30'; // UK
22
+ searchDependenciesHelper.setFilterKeyValues(new Map([
23
+ [FilterKey.AREA, [areaId]],
24
+ [FilterKey.COUNTRY, [countryId]]
25
+ ]));
26
+ const result = await rankedAreaPolicy.shouldIndex();
27
+ expect(result).toBe(true);
28
+ });
29
+ it.each([[PortalType.BACHELOR], [PortalType.PHD], [PortalType.SHORT]])('Should return false when the selected portal type is %s', async (portalType) => {
30
+ const areaId = '996'; // England
31
+ const countryId = '30'; // UK
32
+ searchDependenciesHelper.setFilterKeyValues(new Map([
33
+ [FilterKey.AREA, [areaId]],
34
+ [FilterKey.COUNTRY, [countryId]]
35
+ ]));
36
+ searchDependenciesHelper.setPortalType(portalType);
37
+ const result = await rankedAreaPolicy.shouldIndex();
38
+ expect(result).toBe(false);
39
+ });
40
+ it('Should return false when Our Picks sorting is selected', async () => {
41
+ searchDependenciesHelper.setSortingState(SortingOptions.OUR_PICKS);
42
+ const result = await rankedAreaPolicy.shouldIndex();
43
+ expect(result).toBe(false);
44
+ });
45
+ it('Should return false when multiple areas are selected', async () => {
46
+ const firstAreaId = '996'; // England
47
+ const secondAreaId = '994'; // Scotland
48
+ const countryId = '30'; // UK
49
+ searchDependenciesHelper.setFilterKeyValues(new Map([
50
+ [FilterKey.AREA, [firstAreaId, secondAreaId]],
51
+ [FilterKey.COUNTRY, [countryId]]
52
+ ]));
53
+ const result = await rankedAreaPolicy.shouldIndex();
54
+ expect(result).toBe(false);
55
+ });
56
+ it('Should return false when no areas are selected', async () => {
57
+ const countryId = '30'; // UK
58
+ searchDependenciesHelper.setFilterKeyValues(new Map([[FilterKey.COUNTRY, [countryId]]]));
59
+ const result = await rankedAreaPolicy.shouldIndex();
60
+ expect(result).toBe(false);
61
+ });
62
+ it('Should return false when other filters are selected', async () => {
63
+ const areaId = '996'; // England
64
+ const countryId = '30'; // UK
65
+ const disciplineId = '1';
66
+ searchDependenciesHelper.setFilterKeyValues(new Map([
67
+ [FilterKey.AREA, [areaId]],
68
+ [FilterKey.COUNTRY, [countryId]],
69
+ [FilterKey.DISCIPLINES, [disciplineId]]
70
+ ]));
71
+ const result = await rankedAreaPolicy.shouldIndex();
72
+ expect(result).toBe(false);
73
+ });
74
+ it('Should return false when there are less then 2 ranked results', async () => {
75
+ const rankedResultsCount = 1;
76
+ const areaId = '996'; // England
77
+ const countryId = '30'; // UK
78
+ searchDependenciesHelper.setRankedResultsCount(rankedResultsCount);
79
+ searchDependenciesHelper.setFilterKeyValues(new Map([
80
+ [FilterKey.AREA, [areaId]],
81
+ [FilterKey.COUNTRY, [countryId]]
82
+ ]));
83
+ const result = await rankedAreaPolicy.shouldIndex();
84
+ expect(result).toBe(false);
85
+ });
86
+ });
87
+ describe('generateSitemapUrls', () => {
88
+ const pathPrefix = 'rankings/';
89
+ const enoughRankedOrganisations = 10;
90
+ const noRankedOrganisations = 0;
91
+ let sitemapDependenciesHelper;
92
+ let rankedAreaPolicy;
93
+ let fragments;
94
+ beforeEach(() => {
95
+ sitemapDependenciesHelper = new SitemapDependencies();
96
+ rankedAreaPolicy = new RankedArea(sitemapDependenciesHelper.dependencies);
97
+ vi.spyOn(AreaPresenter, 'getInstance').mockReturnValue({
98
+ getFragments: vi.fn(() => fragments),
99
+ generatePaths: vi.fn(() => fragments),
100
+ fragments
101
+ });
102
+ sitemapDependenciesHelper.setRankedOrganisationCount(enoughRankedOrganisations);
103
+ });
104
+ it('Should return path when all conditions are met', async () => {
105
+ const areaId = '996'; // England
106
+ const countryId = '30'; // UK
107
+ const path = 'path';
108
+ fragments = [
109
+ {
110
+ id: areaId,
111
+ countryId: countryId,
112
+ path
113
+ }
114
+ ];
115
+ const result = await rankedAreaPolicy.generateSitemapUrls();
116
+ expect(result).toEqual([pathPrefix + path]);
117
+ });
118
+ it.each([[PortalType.BACHELOR], [PortalType.PHD], [PortalType.SHORT]])('Should not return path when portal type is %s', async (portalType) => {
119
+ const areaId = '996'; // England
120
+ const countryId = '30'; // UK
121
+ const path = 'path';
122
+ sitemapDependenciesHelper.setPortalType(portalType);
123
+ fragments = [
124
+ {
125
+ id: areaId,
126
+ countryId: countryId,
127
+ path
128
+ }
129
+ ];
130
+ const result = await rankedAreaPolicy.generateSitemapUrls();
131
+ expect(result).toEqual([]);
132
+ });
133
+ it('Should not return path when there is no ranked organisation', async () => {
134
+ const areaId = '996'; // England
135
+ const countryId = '30'; // UK
136
+ const path = 'path';
137
+ sitemapDependenciesHelper.setRankedOrganisationCount(noRankedOrganisations);
138
+ fragments = [
139
+ {
140
+ id: areaId,
141
+ countryId: countryId,
142
+ path
143
+ }
144
+ ];
145
+ const result = await rankedAreaPolicy.generateSitemapUrls();
146
+ expect(result).toEqual([]);
147
+ });
148
+ });
149
+ });
@@ -0,0 +1,237 @@
1
+ import { describe, it, expect, beforeEach, vi } from 'vitest';
2
+ import { FilterKey } from '@studyportals/search-filters/server-side';
3
+ import { SearchDependencies } from '../../../organisations/utils/SearchDependencies.util.mjs';
4
+ import { SitemapDependencies } from '../../utils/SitemapDependencies.util.mjs';
5
+ import { SortingOptions } from '@/enums/SortingOptions';
6
+ import { RankedAreaDiscipline } from '@/organisations/policies';
7
+ import { AreaPresenter } from '@/presenters/AreaPresenter';
8
+ import { DisciplinePresenter } from '@/presenters/DisciplinePresenter';
9
+ import { PortalType } from '@studyportals/domain-client';
10
+ describe('Policy:RankedAreaDiscipline', () => {
11
+ describe('shouldIndex', () => {
12
+ let searchDependenciesHelper;
13
+ let rankedAreaDisciplinePolicy;
14
+ beforeEach(() => {
15
+ searchDependenciesHelper = new SearchDependencies();
16
+ rankedAreaDisciplinePolicy = new RankedAreaDiscipline(searchDependenciesHelper.dependencies);
17
+ searchDependenciesHelper.setSortingState(SortingOptions.UNIVERSITY_META_RANKING);
18
+ searchDependenciesHelper.setRankedResultsCount(10);
19
+ });
20
+ it('Should return true when all conditions are met', async () => {
21
+ const areaId = '3578'; // Arkansas
22
+ const countryId = '82'; // US
23
+ const disciplineId = '54'; // Agriculture & Forestry
24
+ searchDependenciesHelper.setFilterKeyValues(new Map([
25
+ [FilterKey.AREA, [areaId]],
26
+ [FilterKey.COUNTRY, [countryId]],
27
+ [FilterKey.DISCIPLINES, [disciplineId]]
28
+ ]));
29
+ const result = await rankedAreaDisciplinePolicy.shouldIndex();
30
+ expect(result).toBe(true);
31
+ });
32
+ it.each([[PortalType.BACHELOR], [PortalType.PHD], [PortalType.SHORT]])('Should return false when the selected portal type is %s', async (portalType) => {
33
+ const areaId = '3578'; // Arkansas
34
+ const countryId = '82'; // US
35
+ const disciplineId = '54'; // Agriculture & Forestry
36
+ searchDependenciesHelper.setFilterKeyValues(new Map([
37
+ [FilterKey.AREA, [areaId]],
38
+ [FilterKey.COUNTRY, [countryId]],
39
+ [FilterKey.DISCIPLINES, [disciplineId]]
40
+ ]));
41
+ searchDependenciesHelper.setPortalType(portalType);
42
+ const result = await rankedAreaDisciplinePolicy.shouldIndex();
43
+ expect(result).toBe(false);
44
+ });
45
+ it('Should return false when area when Our Picks sorting is selected', async () => {
46
+ searchDependenciesHelper.setSortingState(SortingOptions.OUR_PICKS);
47
+ const result = await rankedAreaDisciplinePolicy.shouldIndex();
48
+ expect(result).toBe(false);
49
+ });
50
+ it('Should return false when multiple areas are selected', async () => {
51
+ const disciplineId = '54'; // Agriculture & Forestry
52
+ const firstAreaId = '3578'; // Arkansas
53
+ const secondAreaId = '3579'; // Washington D.C
54
+ const countryId = '82'; // US
55
+ searchDependenciesHelper.setFilterKeyValues(new Map([
56
+ [FilterKey.AREA, [firstAreaId, secondAreaId]],
57
+ [FilterKey.DISCIPLINES, [disciplineId]],
58
+ [FilterKey.COUNTRY, [countryId]]
59
+ ]));
60
+ const result = await rankedAreaDisciplinePolicy.shouldIndex();
61
+ expect(result).toBe(false);
62
+ });
63
+ it('Should return false when multiple disciplines are selected', async () => {
64
+ const firstDisciplineId = '54'; // Agriculture & Forestry
65
+ const secondDisciplineId = '12'; // Applied Sciences & Professions
66
+ const areaId = '3578'; // Arkansas
67
+ const countryId = '82'; // US
68
+ searchDependenciesHelper.setFilterKeyValues(new Map([
69
+ [FilterKey.AREA, [areaId]],
70
+ [FilterKey.COUNTRY, [countryId]],
71
+ [FilterKey.DISCIPLINES, [firstDisciplineId, secondDisciplineId]]
72
+ ]));
73
+ const result = await rankedAreaDisciplinePolicy.shouldIndex();
74
+ expect(result).toBe(false);
75
+ });
76
+ it('Should return false when no areas are selected', async () => {
77
+ const disciplineId = '54'; // Agriculture & Forestry
78
+ searchDependenciesHelper.setFilterKeyValues(new Map([[FilterKey.DISCIPLINES, [disciplineId]]]));
79
+ const result = await rankedAreaDisciplinePolicy.shouldIndex();
80
+ expect(result).toBe(false);
81
+ });
82
+ it('Should return false when other filters are selected', async () => {
83
+ const areaId = '3578'; // Arkansas
84
+ const countryId = '30'; // UK
85
+ const disciplineId = '12'; // Applied Sciences & Professions
86
+ const attendance = 'full-time';
87
+ searchDependenciesHelper.setFilterKeyValues(new Map([
88
+ [FilterKey.AREA, [areaId]],
89
+ [FilterKey.COUNTRY, [countryId]],
90
+ [FilterKey.DISCIPLINES, [disciplineId]],
91
+ [FilterKey.DELIVERY_METHOD, [attendance]]
92
+ ]));
93
+ const result = await rankedAreaDisciplinePolicy.shouldIndex();
94
+ expect(result).toBe(false);
95
+ });
96
+ it('Should return false when there are less then 2 ranked results', async () => {
97
+ const rankedResultsCount = 1;
98
+ const areaId = '3578'; // Arkansas
99
+ const countryId = '30'; // US
100
+ const disciplineId = '54'; // Agriculture & Forestry
101
+ searchDependenciesHelper.setRankedResultsCount(rankedResultsCount);
102
+ searchDependenciesHelper.setFilterKeyValues(new Map([
103
+ [FilterKey.AREA, [areaId]],
104
+ [FilterKey.COUNTRY, [countryId]],
105
+ [FilterKey.DISCIPLINES, [disciplineId]]
106
+ ]));
107
+ const result = await rankedAreaDisciplinePolicy.shouldIndex();
108
+ expect(result).toBe(false);
109
+ });
110
+ it('Should return false when area has no search volume', async () => {
111
+ const areaId = '137'; // Western Australia
112
+ const countryId = '202'; // Australia
113
+ const disciplineId = '54'; // Agriculture & Forestry
114
+ searchDependenciesHelper.setFilterKeyValues(new Map([
115
+ [FilterKey.AREA, [areaId]],
116
+ [FilterKey.COUNTRY, [countryId]],
117
+ [FilterKey.DISCIPLINES, [disciplineId]]
118
+ ]));
119
+ const result = await rankedAreaDisciplinePolicy.shouldIndex();
120
+ expect(result).toBe(false);
121
+ });
122
+ });
123
+ describe('generateSitemapUrls', () => {
124
+ const pathPrefix = 'rankings/';
125
+ const enoughRankedOrganisations = 10;
126
+ const noRankedOrganisations = 0;
127
+ let sitemapDependenciesHelper;
128
+ let rankedAreaDisciplinePolicy;
129
+ let areaFragments;
130
+ let disciplineFragments;
131
+ beforeEach(() => {
132
+ sitemapDependenciesHelper = new SitemapDependencies();
133
+ rankedAreaDisciplinePolicy = new RankedAreaDiscipline(sitemapDependenciesHelper.dependencies);
134
+ vi.spyOn(AreaPresenter, 'getInstance').mockReturnValue({
135
+ getFragments: vi.fn(() => areaFragments),
136
+ generatePaths: vi.fn(() => areaFragments),
137
+ fragments: areaFragments
138
+ });
139
+ vi.spyOn(DisciplinePresenter, 'getInstance').mockReturnValue({
140
+ getFragments: vi.fn(() => disciplineFragments),
141
+ generatePaths: vi.fn(() => disciplineFragments),
142
+ fragments: disciplineFragments
143
+ });
144
+ sitemapDependenciesHelper.setRankedOrganisationCount(enoughRankedOrganisations);
145
+ });
146
+ it('Should return path when all conditions are met', async () => {
147
+ const areaId = '3578'; // Arkansas
148
+ const countryId = '82'; // US
149
+ const areaPath = 'area-path';
150
+ const disciplineId = '54'; // Agriculture & Forestry
151
+ const disciplinePath = 'discipline-path';
152
+ areaFragments = [
153
+ {
154
+ id: areaId,
155
+ countryId: countryId,
156
+ path: areaPath
157
+ }
158
+ ];
159
+ disciplineFragments = [
160
+ {
161
+ id: disciplineId,
162
+ path: disciplinePath
163
+ }
164
+ ];
165
+ const result = await rankedAreaDisciplinePolicy.generateSitemapUrls();
166
+ expect(result).toEqual([`${pathPrefix}${areaPath}/${disciplinePath}`]);
167
+ });
168
+ it.each([[PortalType.BACHELOR], [PortalType.PHD], [PortalType.SHORT]])('Should not return path when portal type is %s', async (portalType) => {
169
+ const areaId = '3578'; // Arkansas
170
+ const countryId = '82'; // US
171
+ const areaPath = 'area-path';
172
+ const disciplineId = '54'; // Agriculture & Forestry
173
+ const disciplinePath = 'discipline-path';
174
+ areaFragments = [
175
+ {
176
+ id: areaId,
177
+ countryId: countryId,
178
+ path: areaPath
179
+ }
180
+ ];
181
+ disciplineFragments = [
182
+ {
183
+ id: disciplineId,
184
+ path: disciplinePath
185
+ }
186
+ ];
187
+ sitemapDependenciesHelper.setPortalType(portalType);
188
+ const result = await rankedAreaDisciplinePolicy.generateSitemapUrls();
189
+ expect(result).toEqual([]);
190
+ });
191
+ it('Should not return path when there is no ranked organisation', async () => {
192
+ const areaId = '3578'; // Arkansas
193
+ const countryId = '82'; // US
194
+ const areaPath = 'area-path';
195
+ const disciplineId = '54'; // Agriculture & Forestry
196
+ const disciplinePath = 'discipline-path';
197
+ areaFragments = [
198
+ {
199
+ id: areaId,
200
+ countryId: countryId,
201
+ path: areaPath
202
+ }
203
+ ];
204
+ disciplineFragments = [
205
+ {
206
+ id: disciplineId,
207
+ path: disciplinePath
208
+ }
209
+ ];
210
+ sitemapDependenciesHelper.setRankedOrganisationCount(noRankedOrganisations);
211
+ const result = await rankedAreaDisciplinePolicy.generateSitemapUrls();
212
+ expect(result).toEqual([]);
213
+ });
214
+ it('Should not return path when there is no search volume for the area', async () => {
215
+ const areaId = '137'; // Western Australia
216
+ const countryId = '202'; // Australia
217
+ const areaPath = 'area-path';
218
+ const disciplineId = '54'; // Agriculture & Forestry
219
+ const disciplinePath = 'discipline-path';
220
+ areaFragments = [
221
+ {
222
+ id: areaId,
223
+ countryId: countryId,
224
+ path: areaPath
225
+ }
226
+ ];
227
+ disciplineFragments = [
228
+ {
229
+ id: disciplineId,
230
+ path: disciplinePath
231
+ }
232
+ ];
233
+ const result = await rankedAreaDisciplinePolicy.generateSitemapUrls();
234
+ expect(result).toEqual([]);
235
+ });
236
+ });
237
+ });