Learning Unit Testing VI – Code Coverage

Before I get into finally finishing off that blasted page 10, I thought I’d go through a code coverage run to see how I was doing. Test Driven Development, see, everything should be covered by a test. 7.41% of the code is not covered by tests! I must be doing this wrong… Phew, that was …

Learning Unit Testing V – Refactoring Mistakes

I implied in the last post that I had made a mistake when I moved the MoveModel code into the Model class from the MovementManager class. Now, tests on the MovementManager class are actually testing functionality in the Model class. I also discovered that I am not properly testing the ‘GetDistanceFrom’ method with known data …

Learning Unit Testing IV – Diagrams and Mathematics

Programming uses maths. It’s hard to ignore sometimes, especially when modelling something that is inherently graphical and position based such as a game. I’ve decided to give the models three different position indicators – PositionX, PositionY and PositionZ. This will describe their exact position anywhere on the board – including on a ladder, a walkway …

Does anyone like spam?

I’ve just had to put CAPTCHA on the blog comments here, because of too much spam. The spam filters are fine, but there was just too much spam being added. Part of the problem was that BlogEngine.NET’s SQL provider deletes a post (!) before re-adding it, with every comment, all over again. So to add …

Family Trees and Logical Deduction

This last weekend, I got bit by the genealogy bug again. It started off as an investigation as to why my existing GEDCOM file didn’t work in a WPF demonstration app (Family.Show), and kept losing relationships. It turns out that the GEDCOM format requires a relationship (or FAM record) to specify the two people who …

Learning Unit Testing III – Emergent Design

So having seen the answers on my own StackOverflow question on TDD Design, I’ve decided to go ahead with the ‘emergent design’ crowd and see what happens. It appears that the refactoring and mid-stream redesigning is an integral part of the TDD process. It’ll all, of course, be described here (the process might be a …