I’m rebuilding an app to use Phoenix 1.3, one of the changes is moving the
web directory into
lib, I like this one a lot for a few reasons, among others (at least in my head) it got us a “real” directory to module structure mapping.
Now I got to refactoring tests and have to add the
Web namespace to modules that are not in a web directory, like
I get the reasoning - conn and channel belong to web whereas data does not (
test/support/data_case.ex is now MyApp.DataCase without
Web), but this feels somewhat arbitrary.
For me the most obvious way to name things would be to have a
It’s not only tests, under the web dir we “lose” all sub-directories (views, controllers etc). I know I can just do what I want, but I also want to stay as “idiomatic” as possible, so does anyone have insights as to why we have this occasional namespace / directory structure mapping and not a constant one?