uk_bin_collection 0.85.1__tar.gz → 0.85.3__tar.gz

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 (191) hide show
  1. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/PKG-INFO +1 -1
  2. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/pyproject.toml +1 -1
  3. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/tests/input.json +2 -2
  4. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/tests/test_collect_data.py +32 -0
  5. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/tests/test_common_functions.py +97 -4
  6. uk_bin_collection-0.85.3/uk_bin_collection/tests/test_conftest.py +27 -0
  7. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/LICENSE +0 -0
  8. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/README.md +0 -0
  9. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/README.rst +0 -0
  10. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/tests/council_feature_input_parity.py +0 -0
  11. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/tests/features/environment.py +0 -0
  12. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/tests/features/validate_council_outputs.feature +0 -0
  13. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/tests/output.schema +0 -0
  14. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/tests/step_defs/step_helpers/file_handler.py +0 -0
  15. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/tests/step_defs/test_validate_council.py +0 -0
  16. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/collect_data.py +0 -0
  17. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/common.py +0 -0
  18. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/AdurAndWorthingCouncils.py +0 -0
  19. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ArunCouncil.py +0 -0
  20. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/AylesburyValeCouncil.py +0 -0
  21. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BCPCouncil.py +0 -0
  22. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BarnetCouncil.py +0 -0
  23. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BarnsleyMBCouncil.py +0 -0
  24. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BasingstokeCouncil.py +0 -0
  25. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BathAndNorthEastSomersetCouncil.py +0 -0
  26. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BedfordBoroughCouncil.py +0 -0
  27. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BedfordshireCouncil.py +0 -0
  28. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BelfastCityCouncil.py +0 -0
  29. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BexleyCouncil.py +0 -0
  30. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BirminghamCityCouncil.py +0 -0
  31. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BlackburnCouncil.py +0 -0
  32. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BoltonCouncil.py +0 -0
  33. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BracknellForestCouncil.py +0 -0
  34. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BradfordMDC.py +0 -0
  35. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BrightonandHoveCityCouncil.py +0 -0
  36. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BristolCityCouncil.py +0 -0
  37. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BromleyBoroughCouncil.py +0 -0
  38. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BroxtoweBoroughCouncil.py +0 -0
  39. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BuckinghamshireCouncil.py +0 -0
  40. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/BuryCouncil.py +0 -0
  41. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CalderdaleCouncil.py +0 -0
  42. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CannockChaseDistrictCouncil.py +0 -0
  43. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CardiffCouncil.py +0 -0
  44. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CastlepointDistrictCouncil.py +0 -0
  45. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CharnwoodBoroughCouncil.py +0 -0
  46. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ChelmsfordCityCouncil.py +0 -0
  47. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CheshireEastCouncil.py +0 -0
  48. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CheshireWestAndChesterCouncil.py +0 -0
  49. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ChichesterDistrictCouncil.py +0 -0
  50. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ChorleyCouncil.py +0 -0
  51. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ConwyCountyBorough.py +0 -0
  52. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CornwallCouncil.py +0 -0
  53. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CrawleyBoroughCouncil.py +0 -0
  54. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/CroydonCouncil.py +0 -0
  55. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/DartfordBoroughCouncil.py +0 -0
  56. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/DerbyshireDalesDistrictCouncil.py +0 -0
  57. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/DoncasterCouncil.py +0 -0
  58. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/DorsetCouncil.py +0 -0
  59. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/DoverDistrictCouncil.py +0 -0
  60. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/DurhamCouncil.py +0 -0
  61. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/EastCambridgeshireCouncil.py +0 -0
  62. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/EastDevonDC.py +0 -0
  63. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/EastLindseyDistrictCouncil.py +0 -0
  64. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/EastRidingCouncil.py +0 -0
  65. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/EastSuffolkCouncil.py +0 -0
  66. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/EastleighBoroughCouncil.py +0 -0
  67. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/EnfieldCouncil.py +0 -0
  68. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/EnvironmentFirst.py +0 -0
  69. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/EppingForestDistrictCouncil.py +0 -0
  70. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ErewashBoroughCouncil.py +0 -0
  71. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/FarehamBoroughCouncil.py +0 -0
  72. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/FenlandDistrictCouncil.py +0 -0
  73. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ForestOfDeanDistrictCouncil.py +0 -0
  74. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/GatesheadCouncil.py +0 -0
  75. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/GedlingBoroughCouncil.py +0 -0
  76. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/GlasgowCityCouncil.py +0 -0
  77. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/GuildfordCouncil.py +0 -0
  78. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/HaltonBoroughCouncil.py +0 -0
  79. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/HaringeyCouncil.py +0 -0
  80. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/HarrogateBoroughCouncil.py +0 -0
  81. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/HighPeakCouncil.py +0 -0
  82. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/HounslowCouncil.py +0 -0
  83. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/HullCityCouncil.py +0 -0
  84. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/HuntingdonDistrictCouncil.py +0 -0
  85. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/KingstonUponThamesCouncil.py +0 -0
  86. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/KirkleesCouncil.py +0 -0
  87. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/KnowsleyMBCouncil.py +0 -0
  88. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/LancasterCityCouncil.py +0 -0
  89. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/LeedsCityCouncil.py +0 -0
  90. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/LisburnCastlereaghCityCouncil.py +0 -0
  91. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/LiverpoolCityCouncil.py +0 -0
  92. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/LondonBoroughHounslow.py +0 -0
  93. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/LondonBoroughRedbridge.py +0 -0
  94. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/MaldonDistrictCouncil.py +0 -0
  95. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/MalvernHillsDC.py +0 -0
  96. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ManchesterCityCouncil.py +0 -0
  97. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/MansfieldDistrictCouncil.py +0 -0
  98. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/MertonCouncil.py +0 -0
  99. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/MidAndEastAntrimBoroughCouncil.py +0 -0
  100. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/MidSussexDistrictCouncil.py +0 -0
  101. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/MiltonKeynesCityCouncil.py +0 -0
  102. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/MoleValleyDistrictCouncil.py +0 -0
  103. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NeathPortTalbotCouncil.py +0 -0
  104. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NewForestCouncil.py +0 -0
  105. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NewarkAndSherwoodDC.py +0 -0
  106. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NewcastleCityCouncil.py +0 -0
  107. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NewhamCouncil.py +0 -0
  108. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NewportCityCouncil.py +0 -0
  109. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthEastDerbyshireDistrictCouncil.py +0 -0
  110. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthEastLincs.py +0 -0
  111. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthKestevenDistrictCouncil.py +0 -0
  112. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthLanarkshireCouncil.py +0 -0
  113. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthLincolnshireCouncil.py +0 -0
  114. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthNorfolkDistrictCouncil.py +0 -0
  115. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthNorthamptonshireCouncil.py +0 -0
  116. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthSomersetCouncil.py +0 -0
  117. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthTynesideCouncil.py +0 -0
  118. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthWestLeicestershire.py +0 -0
  119. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthYorkshire.py +0 -0
  120. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NorthumberlandCouncil.py +0 -0
  121. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/NottinghamCityCouncil.py +0 -0
  122. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/OldhamCouncil.py +0 -0
  123. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/PortsmouthCityCouncil.py +0 -0
  124. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/PrestonCityCouncil.py +0 -0
  125. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ReadingBoroughCouncil.py +0 -0
  126. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ReigateAndBansteadBoroughCouncil.py +0 -0
  127. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/RenfrewshireCouncil.py +0 -0
  128. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/RhonddaCynonTaffCouncil.py +0 -0
  129. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/RochdaleCouncil.py +0 -0
  130. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/RochfordCouncil.py +0 -0
  131. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/RugbyBoroughCouncil.py +0 -0
  132. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/RushcliffeBoroughCouncil.py +0 -0
  133. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/RushmoorCouncil.py +0 -0
  134. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SalfordCityCouncil.py +0 -0
  135. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SevenoaksDistrictCouncil.py +0 -0
  136. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SheffieldCityCouncil.py +0 -0
  137. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ShropshireCouncil.py +0 -0
  138. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SolihullCouncil.py +0 -0
  139. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SomersetCouncil.py +0 -0
  140. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SouthAyrshireCouncil.py +0 -0
  141. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SouthCambridgeshireCouncil.py +0 -0
  142. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SouthGloucestershireCouncil.py +0 -0
  143. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SouthKestevenDistrictCouncil.py +0 -0
  144. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SouthLanarkshireCouncil.py +0 -0
  145. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SouthNorfolkCouncil.py +0 -0
  146. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SouthOxfordshireCouncil.py +0 -0
  147. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SouthTynesideCouncil.py +0 -0
  148. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/StAlbansCityAndDistrictCouncil.py +0 -0
  149. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/StHelensBC.py +0 -0
  150. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/StaffordBoroughCouncil.py +0 -0
  151. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/StaffordshireMoorlandsDistrictCouncil.py +0 -0
  152. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/StockportBoroughCouncil.py +0 -0
  153. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/StokeOnTrentCityCouncil.py +0 -0
  154. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/StratfordUponAvonCouncil.py +0 -0
  155. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/StroudDistrictCouncil.py +0 -0
  156. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SunderlandCityCouncil.py +0 -0
  157. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SwaleBoroughCouncil.py +0 -0
  158. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/SwanseaCouncil.py +0 -0
  159. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/TamesideMBCouncil.py +0 -0
  160. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/TandridgeDistrictCouncil.py +0 -0
  161. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/TelfordAndWrekinCouncil.py +0 -0
  162. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/TendringDistrictCouncil.py +0 -0
  163. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/TestValleyBoroughCouncil.py +0 -0
  164. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ThreeRiversDistrictCouncil.py +0 -0
  165. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/TonbridgeAndMallingBC.py +0 -0
  166. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/TorbayCouncil.py +0 -0
  167. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/TorridgeDistrictCouncil.py +0 -0
  168. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/UttlesfordDistrictCouncil.py +0 -0
  169. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ValeofGlamorganCouncil.py +0 -0
  170. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/ValeofWhiteHorseCouncil.py +0 -0
  171. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WakefieldCityCouncil.py +0 -0
  172. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WalthamForest.py +0 -0
  173. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WarwickDistrictCouncil.py +0 -0
  174. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WaverleyBoroughCouncil.py +0 -0
  175. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WealdenDistrictCouncil.py +0 -0
  176. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WelhatCouncil.py +0 -0
  177. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WestBerkshireCouncil.py +0 -0
  178. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WestLindseyDistrictCouncil.py +0 -0
  179. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WestLothianCouncil.py +0 -0
  180. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WestNorthamptonshireCouncil.py +0 -0
  181. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WestSuffolkCouncil.py +0 -0
  182. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WiganBoroughCouncil.py +0 -0
  183. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WiltshireCouncil.py +0 -0
  184. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WindsorAndMaidenheadCouncil.py +0 -0
  185. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WokingBoroughCouncil.py +0 -0
  186. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WychavonDistrictCouncil.py +0 -0
  187. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/WyreCouncil.py +0 -0
  188. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/YorkCouncil.py +0 -0
  189. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/councils/council_class_template/councilclasstemplate.py +0 -0
  190. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/create_new_council.py +0 -0
  191. {uk_bin_collection-0.85.1 → uk_bin_collection-0.85.3}/uk_bin_collection/uk_bin_collection/get_bin_data.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: uk_bin_collection
3
- Version: 0.85.1
3
+ Version: 0.85.3
4
4
  Summary: Python Lib to collect UK Bin Data
5
5
  Author: Robert Bradley
6
6
  Author-email: robbrad182@gmail.com
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "uk_bin_collection"
3
- version = "0.85.1"
3
+ version = "0.85.3"
4
4
  description = "Python Lib to collect UK Bin Data"
5
5
  readme = "README.md"
6
6
  authors = ["Robert Bradley <robbrad182@gmail.com>"]
@@ -422,8 +422,8 @@
422
422
  "wiki_note": "Use [this site](https://www.gbcbincalendars.co.uk/) to find the collections for your address. Use the -n parameter to add them in a comma-separated list inside quotes, such as: 'Friday G4, Friday J'."
423
423
  },
424
424
  "GlasgowCityCouncil": {
425
- "url": "https://www.glasgow.gov.uk/forms/refuseandrecyclingcalendar/PrintCalendar.aspx?UPRN=906700034497",
426
- "wiki_command_url_override": "https://www.glasgow.gov.uk/forms/refuseandrecyclingcalendar/PrintCalendar.aspx?UPRN=XXXXXXXX",
425
+ "url": "https://onlineservices.glasgow.gov.uk/forms/RefuseAndRecyclingWebApplication/CollectionsCalendar.aspx?UPRN=906700034497",
426
+ "wiki_command_url_override": "https://onlineservices.glasgow.gov.uk/forms/RefuseAndRecyclingWebApplication/CollectionsCalendar.aspx?UPRN=XXXXXXXX",
427
427
  "wiki_name": "Glasgow City Council",
428
428
  "wiki_note": "Replace XXXXXXXX with UPRN."
429
429
  },
@@ -102,3 +102,35 @@ def test_output_json():
102
102
  output = agbdc.output_json(bin_data)
103
103
  assert type(output) == str
104
104
  assert output == '{\n "bin": ""\n}'
105
+
106
+ class ConcreteGetBinDataClass(agbdc):
107
+ """Concrete implementation of the abstract class to test abstract methods."""
108
+ def parse_data(self, page: str, **kwargs) -> dict:
109
+ return {"mock_key": "mock_value"}
110
+
111
+ @pytest.fixture
112
+ def concrete_class_instance():
113
+ return ConcreteGetBinDataClass()
114
+
115
+ def test_get_and_parse_data_no_skip_get_url(concrete_class_instance):
116
+ mock_page = "mocked page content"
117
+ mock_parsed_data = {"mock_key": "mock_value"}
118
+
119
+ with mock.patch.object(concrete_class_instance, 'get_data', return_value=mock_page) as mock_get_data, \
120
+ mock.patch.object(concrete_class_instance, 'parse_data', return_value=mock_parsed_data) as mock_parse_data:
121
+
122
+ result = concrete_class_instance.get_and_parse_data("http://example.com")
123
+
124
+ mock_get_data.assert_called_once_with("http://example.com")
125
+ mock_parse_data.assert_called_once_with(mock_page, url="http://example.com")
126
+ assert result == mock_parsed_data
127
+
128
+ def test_get_and_parse_data_skip_get_url(concrete_class_instance):
129
+ mock_parsed_data = {"mock_key": "mock_value"}
130
+
131
+ with mock.patch.object(concrete_class_instance, 'parse_data', return_value=mock_parsed_data) as mock_parse_data:
132
+
133
+ result = concrete_class_instance.get_and_parse_data("http://example.com", skip_get_url=True)
134
+
135
+ mock_parse_data.assert_called_once_with("", url="http://example.com", skip_get_url=True)
136
+ assert result == mock_parsed_data
@@ -1,10 +1,11 @@
1
+ from contextlib import redirect_stdout
2
+ from io import StringIO
1
3
  from unittest import mock
4
+ from unittest.mock import MagicMock, mock_open, patch
5
+
2
6
  import pytest
3
- from uk_bin_collection.common import *
4
- from io import StringIO
5
- from contextlib import redirect_stdout
6
- from unittest.mock import patch, MagicMock, mock_open
7
7
  from selenium.common.exceptions import WebDriverException
8
+ from uk_bin_collection.common import *
8
9
  from urllib3.exceptions import MaxRetryError
9
10
 
10
11
 
@@ -342,3 +343,95 @@ def test_create_webdriver_remote_failure():
342
343
  # Test the scenario where the remote server is not available
343
344
  with pytest.raises(MaxRetryError) as exc_info:
344
345
  create_webdriver("http://invalid-url:4444", False)
346
+
347
+
348
+ def test_create_webdriver_remote_with_session_name():
349
+ # Test creating a remote WebDriver with a session name
350
+ session_name = "test-session"
351
+ web_driver_url = (
352
+ "http://localhost:4444/wd/hub" # Use a valid remote WebDriver URL for testing
353
+ )
354
+
355
+ # Mock the Remote WebDriver
356
+ with mock.patch("uk_bin_collection.common.webdriver.Remote") as mock_remote:
357
+ mock_instance = mock.MagicMock()
358
+ mock_instance.name = "chrome"
359
+ mock_remote.return_value = mock_instance
360
+
361
+ # Call the function with the test parameters
362
+ result = create_webdriver(web_driver=web_driver_url, session_name=session_name)
363
+
364
+ # Check if the session name was set in capabilities
365
+ args, kwargs = mock_remote.call_args
366
+ options = kwargs["options"]
367
+ assert options._caps.get("se:name") == session_name
368
+ assert result.name == "chrome"
369
+
370
+
371
+ def test_string_with_numbers():
372
+ assert has_numbers("abc123") is True
373
+ assert has_numbers("1a2b3c") is True
374
+ assert has_numbers("123") is True
375
+
376
+
377
+ def test_string_without_numbers():
378
+ assert has_numbers("abcdef") is False
379
+ assert has_numbers("ABC") is False
380
+ assert has_numbers("!@#") is False
381
+
382
+
383
+ def test_empty_string():
384
+ assert has_numbers("") is False
385
+
386
+
387
+ def test_string_with_only_numbers():
388
+ assert has_numbers("1234567890") is True
389
+
390
+
391
+ def test_string_with_special_characters_and_numbers():
392
+ assert has_numbers("!@#123$%^") is True
393
+ assert has_numbers("abc!@#123") is True
394
+
395
+
396
+ def test_string_with_whitespace_and_numbers():
397
+ assert has_numbers(" 123 ") is True
398
+ assert has_numbers("abc 123") is True
399
+
400
+
401
+ @pytest.mark.parametrize(
402
+ "today_str, day_name, expected",
403
+ [
404
+ (
405
+ "2024-09-02",
406
+ "Monday",
407
+ "09/09/2024",
408
+ ), # Today is Monday, so next Monday is in 7 days
409
+ (
410
+ "2024-09-02",
411
+ "Tuesday",
412
+ "03/09/2024",
413
+ ), # Today is Monday, next Tuesday is tomorrow
414
+ (
415
+ "2024-09-02",
416
+ "Sunday",
417
+ "08/09/2024",
418
+ ), # Today is Monday, next Sunday is in 6 days
419
+ (
420
+ "2024-09-03",
421
+ "Wednesday",
422
+ "04/09/2024",
423
+ ), # Today is Tuesday, next Wednesday is tomorrow
424
+ (
425
+ "2024-09-03",
426
+ "Monday",
427
+ "09/09/2024",
428
+ ), # Today is Tuesday, next Monday is in 6 days
429
+ ],
430
+ )
431
+ def test_get_next_day_of_week(today_str, day_name, expected):
432
+ mock_today = datetime.strptime(today_str, "%Y-%m-%d")
433
+ with patch("datetime.datetime") as mock_datetime:
434
+ mock_datetime.now.return_value = mock_today
435
+ mock_datetime.strptime = datetime.strptime # to handle strptime within patch
436
+ result = get_next_day_of_week(day_name)
437
+ assert result == expected
@@ -0,0 +1,27 @@
1
+ import pytest
2
+
3
+ # Test the command-line options
4
+
5
+ def test_headless_mode(pytestconfig):
6
+ # Simulate pytest command-line option
7
+ headless_mode_value = pytestconfig.getoption("--headless")
8
+ assert headless_mode_value == "True" # This should match the default value
9
+
10
+ def test_local_browser(pytestconfig):
11
+ local_browser_value = pytestconfig.getoption("--local_browser")
12
+ assert local_browser_value == "False" # This should match the default value
13
+
14
+ def test_selenium_url(pytestconfig):
15
+ selenium_url_value = pytestconfig.getoption("--selenium_url")
16
+ assert selenium_url_value == "http://localhost:4444" # This should match the default value
17
+
18
+ # Test the fixtures
19
+
20
+ def test_headless_mode_fixture(headless_mode):
21
+ assert headless_mode == "True" # This should match the default value
22
+
23
+ def test_local_browser_fixture(local_browser):
24
+ assert local_browser == "False" # This should match the default value
25
+
26
+ def test_selenium_url_fixture(selenium_url):
27
+ assert selenium_url == "http://localhost:4444" # This should match the default value