Showing posts with label TDD. Show all posts
Showing posts with label TDD. Show all posts

2012-02-24

One more sleep!

2012-02-23: Day +73.

One more sleep and my sweetheart arrives!

I worked from home today. As I've said before, I always get a bit amazed at just how productive I am when I do that. I get through emails, I get things crossed off my todo list, I get a better sleep and generally just feel like a lot gets done.

I did some more work on the cucumber with uispec4j. Works very smoothly ... except... it won't terminate. Sigh. Always something. I've tried dispose on the main interceptor, dispose on the main window, getting the frame of the main window and disposing that, reset the environment and nothing works. Of course, java.lang.System.exit(0) does the trick, but it then cuts out of cucumber as well.

That is really the strangest thing. Cucumber finishes and gives its stats and so forth - but the threads just keep on running. Hopefully I will find something simple that handles that eventually. For now, I'm just going to proceed with actually doing some BDD/TDD on this program.

2012-02-22

Swingtown!

2012-02-22: Day +72.

I finally took the plunge and tried uispec4j with cucumber for BDD on Swing. A little fussing and a little pushing and it seems to be doing everything I need.

It is different from jemmy in that it doesn't bring up the screen as it runs through the clicks. I actually like that as I find it less distracting. The other good thing is that it actually does work with menus.

I'm sure it has some things I won't like but that's ok, nothing is perfect.

Only two more sleeps until my sweetheart returns!

Caffeine withdrawal going ok. Most of the day without a headache, just body aches — primarily the leg. Thank goodness for tiger balm!

2012-02-21

IntelliJ is quite the IDE

2012-02-16: Day +66.

So, IntelliJ has support or plugins for Cucumber, Scala, JRuby and on and on. Nice stuff. The only issue I having is the keystroke stuff, so I may switch it over to the emacs keys and upload/update my emacs plugin.

Cucumber support is quite nice - as long as you make JRuby the default in rvm. The JRuby cucumber task can not seem to find the cucumber gem, but the standard cucumber task just chugs along fine.

There are a couple of things that would be nice to have — for instance if you add code to lib/ruby and load that in env.rb, the steps within it are not found by IntelliJ, leaving them with a warning. No big deal as the execution just rolls along.

2012-02-08

First day of sweetie school!

2012-01-30: Day +49.

This was my sweetheart's first full day of raw chef school. Yes — creating raw food dishes. They got a new knife which doesn't fit her as well as the other knife, but also a gorgeous jacket and head wear. Maybe some pictures another time.

My leg / hip hurt like wildfire today after all the walking. So, we finally got a car for the next while. Much better. Two 25 minute walks a day is OK, but 5+ is just too much for the arthritis.

Worked today while sweetie was at school. As usual, working out of the office seems 5 times as productive as working in the office.

Further work on using Cucumber. I managed to get a complete scenario of an administrative user logging in and viewing a variety of pages. This is one of the most fascinating tools I have seen for development in a long time. I may see how it can be integrated into a Haskell development cycle.


2012-01-19

Over to drogar

Yesterday was day +37.

Being that it was (another frigid) Wednesday, I went up to the UofC in the afternoon. So nice.

More activity on LQPL, refining the code to pass all the tests I had and then modifying the specs slightly (by changing and adding tests) to get more of what I want. For details, see my blog on drogar.blogspot.com.



2012-01-18

55.1

Yesterday was day +36.

Still amazingly cold in Calgary. I took the bus in as it was just too cold for the car and my sweetie was still feeling the effects of the migraine.

Work was OK. I'm really starting to consider what do I need to do as part of my exit to ensure it is smooth.

The funnest part of the day was doing more work on LQPL. I've been quite strict with myself in doing the behaviour driven development with HUnit. The fascinating thing is I spent about 40 minutes writing tests and then wrote the code to pass most of them in about 5. The even more fascinating thing is how comfortable I feel with the result of the code. The tests are really working like an example based specification, so I can easily explain exactly what is acceptable input to the parser.

I'm now one-tenth of the way through being 55.

2012-01-14

Templar's WATCH OUT!

Yesterday was day +32.

So, more than a month of being 55. I thought of doing a retrospective of how the first month was, but I don't really feel like it. Maybe later.

I had quite a good day. I started of with doing a review of an upcoming course I am helping with at the end of the month. It felt like a real accomplishment, as opposed to all those soft airy-fairy management accomplishments I normally have to satisfy myself with. :)

In the afternoon, I made it up to the U. Started off hearing Jonathan Gallagher's talk on Left-Additive Turing Categories, which was a run-up to his thesis defence next thursday. GOOD LUCK JONATHAN!

After, I had a chat with my prof, talked some more about getting the LQPL program going and set up for people and he gave me a paper, "From Reversible to Irreversible Computations" to start looking at. Then, I did some actual Test Driven Development in Haskell for LQPL and the work day was done.

My sweetie and I had a lovely supper and then off home.

2012-01-11

HUnit rocks, Cabal rolls

Day +30.

Woke up with a headache today, which was exacerbated by fasting for blood tests this morning. Ah well.

I did get to do some programming and got to add my first unit tests to the LQPL server. My coding to this point has been a spike just to make sure I had what I needed in socket libraries. So, I've done the set up and checked in my first test. Now, on to the standard do the test, refactor to green cycle.

I'm using HUnit which is quite straightforward and lovely to use. As I use Cabal for my build system, my first thought was to use the declarative test system with the cabal configuration file. Sadly, I just could not get that to work (although I shall try again later). Happily, using the cabal defaultMainWithHooks method worked perfectly, other than the deprecated warning every time it ran :).