Slow but steady progress toward a usable application.
I haven't had much to write about because things have been going so smoothly. At this point I have several frontiers I can push forward on. I can play with the back end code - models, repos, controllers. I now have testing working, so I can make progress jumping back and forth between tests and implementation. And I have the front end code which I can tweak endlessly.
I did discover one interesting detail the other day that is worth mentioning.
When I started writing tests for the LogListController I ran into a problem - I
couldn't access the
JsonResult values to confirm behavior. The problem was
that I was using ad-hoc objects to define the json, which are marked internal by
default. In order to access them in my tests (which are in a separate
sub-project) I had to make the tests a friend assembly to my main project.
As usual all the information on the Internet is either wrong or outdated. The
guidance I found was that I just needed to add an attribute to my
properties > AssemblyInfo.cs file. It seems though that an Asp.net Core
application doesn't have assembly info. Visual Studio also wouldn't let me
create any files under properties. Even when I manually created the file with
the correct settings my tests still wouldn't run... until they did. I tried
several times before getting the builds to go off in just the right way so
Here is a link to the file in question.
The other thing I've been doing is refining the UI. I just decided today to scrap all the LogList pages I've built and replace them with a single unified page. Since I was already using ajax for all my interactions it felt really silly to have them in different places. The initial motivation was that the edit forms for existing logs were going to be complete ripoffs of the add log form. I also wanted to reuse the Knockout models I built for the add page on the list page. I also couldn't figure out what to do upon successful submission on the add page. Now I don't have any of those problems.