Thursday, November 17, 2005

x64 Support Update

Daemon Tools 4.0 delivered without the promised x64 support. Dammit.
Submit this story to DotNetKicks

Wednesday, November 16, 2005

Unit Testing ASP.NET 2.0 Forms Auth Site

I may have missed a simpler solution, but when trying to run a simple unit test against an Asp.net website that had forms authentication enabled, I needed this entry in the web.config:

<location path="VSEnterpriseHelper.axd">
<system.web>
<authorization>
<allow users="?">
</allow>
</authorization>
</system.web>
</location>

Otherwise, you end up with an error such as:

"The web site could not be configured correctly; getting ASP.NET process information failed. Requesting 'http://localhost/SimpleTestWebsite/VSEnterpriseHelper.axd' returned an error: The information returned is invalid. "

I would have figured this would be covered in documentation, but couldn't find it there. I also would have thought that logging in via FormsAuthentication.Authenticate("user","pass") in one of the test setup methods would have helped. Apparently, this call is made though before you even setup the test fixture. If I were the MS developer behind this my face would be awfully red.
Submit this story to DotNetKicks

Friday, November 11, 2005

MS Team Build

I am not certain of all the reasons, but TeamBuild utilizes a completely new way to automate builds. Sure, this sort of thing exists as NAnt; probably more accurately as Cruise Control, but I am sure MS had their reasons for redoing it.

I am a bit disappointed in both the build and unit test frameworks because I already have continuous integration scripts in Nunit, Nant, and CCNet. Now, I have to do it all over again. I think the primary reason for the reinvention was to be able to track the builds as part of the reporting data.

Even redoing things in TeamBuild, I find that it is a little odd. We'll grant that its beta material.
  • The build automation seems to revolve around a web service call, and making your own executable. Everything I found on the net was for beta2. The documentation for beta 3 suggests using tbuild in some parts of the docs, or teambuild in others. I could not locate either of these executables anywhere. This is pretty lame. I can schedule CCNet, what's up with TeamBuild? I built my own beta 3 executable. [EDIT: With the last release and updated docs on the web- I finally found that the executable is msbuild.exe. It is located in your framework directory. I am still a bit frustrated with team build, but its getting better as docs improve understanding. The build blog is a great resource as well.]
  • Build results page is a mishmash of data, and most of the information is actually in links to text dump files of the build process. Again, the cruise control implementation of a website with results is far more usable.
  • The distribution of websites to the drop location doesn't seem real useful. You get the bin directory with compiled helper libraries. hmmm. I guess i'll have to get into that more to understand the purpose.

For me the bottom line is that out of the box, this feature seems to add very little (nothing?) to what was available from community software previously. It also seems so far to be weak. I'll continue working with it - maybe i'll be converted.

Submit this story to DotNetKicks