Skip to content

Conversation

deevroman
Copy link
Contributor

After that, we can write tests that test the work with the API.

@Beakerboy
Copy link
Owner

Do you think the best long term plan is to keep the download code in the Building class or in some other data fetching class? I’m thinking that if we had some sort of data class with an interface, it could have one version that gets data from the internet and a second that gets data from a file. Let me know if this makes sense, and I don’t even know if JavaScript has interfaces

@deevroman
Copy link
Contributor Author

deevroman commented May 6, 2025

I think there is no need to make interface. In tests, we can mock fetch(), and the data from the file is literally the second argument of the Building constructor:)

@Beakerboy
Copy link
Owner

Thanks for the input. I must like to over-complicate things 😅

@Beakerboy Beakerboy merged commit 35c9aa9 into Beakerboy:main May 6, 2025
2 checks passed
Beakerboy added a commit that referenced this pull request Jun 4, 2025
* Split data downloading and building creating (#118)

* Outer building visibility (#119)

* Visibility (#120)

* Update building.js (#121)

* Tests for API (#122)

* check HTTP code status and show alert with error

* tests for API errors

* Show validation errors  (#123)

* show validation errors + tests

* fix typo

* Skip incompleted ways, skip non-way members, prevent global modification of way object (#100)

* skip non-way members, skip incompleted ways, prevent global modification of Document with way

* add test

* better colors for MeshPhysicalMaterial (#126)

* Fix crash when processing type=building with outline being a multipolygon (#124)

* #88 initial support type=building with multipolygon outline

* support multiple ways in inner rings

* add test

* Hipped roof (#128)

* Update BuildingShapeUtils.js (#129)

* Update BuildingShapeUtils.js (#130)

* Update utils.test.js (#132)

---------

Co-authored-by: Roman Deev <roman.deev06@gmail.com>
Beakerboy added a commit that referenced this pull request Jun 8, 2025
* Update BuildingShapeUtils.js

* Update utils.test.js

* Update utils.test.js

* Update buildingpart.test.js

* Update BuildingShapeUtils.js

* Update buildingpart.test.js

* Update from main (#133)

* Split data downloading and building creating (#118)

* Outer building visibility (#119)

* Visibility (#120)

* Update building.js (#121)

* Tests for API (#122)

* check HTTP code status and show alert with error

* tests for API errors

* Show validation errors  (#123)

* show validation errors + tests

* fix typo

* Skip incompleted ways, skip non-way members, prevent global modification of way object (#100)

* skip non-way members, skip incompleted ways, prevent global modification of Document with way

* add test

* better colors for MeshPhysicalMaterial (#126)

* Fix crash when processing type=building with outline being a multipolygon (#124)

* #88 initial support type=building with multipolygon outline

* support multiple ways in inner rings

* add test

* Hipped roof (#128)

* Update BuildingShapeUtils.js (#129)

* Update BuildingShapeUtils.js (#130)

* Update utils.test.js (#132)

---------

Co-authored-by: Roman Deev <roman.deev06@gmail.com>

* Update building.test.js

* Update buildingpart.js

* Fixed direction bug (#136)

* Update utils.test.js

---------

Co-authored-by: Roman Deev <roman.deev06@gmail.com>
Beakerboy added a commit to Mosaic-NFT/OSMBuilding that referenced this pull request Jun 11, 2025
* Hipped roof (Beakerboy#128)

* Update BuildingShapeUtils.js (Beakerboy#129)

* Update BuildingShapeUtils.js (Beakerboy#130)

* Update utils.test.js (Beakerboy#132)

* Dev (Beakerboy#137)

* Update BuildingShapeUtils.js

* Update utils.test.js

* Update utils.test.js

* Update buildingpart.test.js

* Update BuildingShapeUtils.js

* Update buildingpart.test.js

* Update from main (Beakerboy#133)

* Split data downloading and building creating (Beakerboy#118)

* Outer building visibility (Beakerboy#119)

* Visibility (Beakerboy#120)

* Update building.js (Beakerboy#121)

* Tests for API (Beakerboy#122)

* check HTTP code status and show alert with error

* tests for API errors

* Show validation errors  (Beakerboy#123)

* show validation errors + tests

* fix typo

* Skip incompleted ways, skip non-way members, prevent global modification of way object (Beakerboy#100)

* skip non-way members, skip incompleted ways, prevent global modification of Document with way

* add test

* better colors for MeshPhysicalMaterial (Beakerboy#126)

* Fix crash when processing type=building with outline being a multipolygon (Beakerboy#124)

* Beakerboy#88 initial support type=building with multipolygon outline

* support multiple ways in inner rings

* add test

* Hipped roof (Beakerboy#128)

* Update BuildingShapeUtils.js (Beakerboy#129)

* Update BuildingShapeUtils.js (Beakerboy#130)

* Update utils.test.js (Beakerboy#132)

---------

Co-authored-by: Roman Deev <roman.deev06@gmail.com>

* Update building.test.js

* Update buildingpart.js

* Fixed direction bug (Beakerboy#136)

* Update utils.test.js

---------

Co-authored-by: Roman Deev <roman.deev06@gmail.com>

* Update README.md

* Update building.test.js

* Update building.test.js

* Update building.test.js

* Update building.js

* Update building.js

* Update building.js

* Update building.js

* Update building.js

* Update building.js

---------

Co-authored-by: Roman Deev <roman.deev06@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants