Vlad"s Software Development Toolbox

Saturday, 4 April 2009

New Version Check - V1.4

Free Download

EnvMan-1.4-RC1.zip
SHA1 HASH: A9A517EA9F19B8E49FB07387FB0B7C9E15084C1D
EnvMan-source-1.4-RC1.zip
SHA1 HASH: 54E8C5C591578CECAC9CDB108DF7333AEE52C5FB

Summary

  • BT1795598 Auto Updates Manager
    • Implemented Automated Updates Manager notifications
    • Added connection through Proxy server for Automated Updates Manager
    • Added version display for Beta versions
    • Added Settings screen to control Proxy settings and number of instances
  • BT2023866 Saving Variables changes registry variable type 
    • Added handling of extensible variables
    • Fixed Variable Type Validation
    • EnvMan allows only one running instance

Functionality Changes

EnvMan 1.4 release candidate 1 is ready for download. The main change in the release is fix for extendable variables.

ExpandableVariable

Now it is possible to use ‘%’ notation to specify that variable is extendable. The Tool Tip it will expand a value to show the full path.

NewVersionNotify

Added new version notification check. Every time program starts, it tries to check if now version is available and notification appear as part of the menu. By clicking on the notification menu it will open a new version download page.

NewVersionNotifyMenu

It is also possible manually check for a new version by selecting ‘Check for Updates…’ in the Help menu. New version notification will be shown as a message box with option to download.

NewVersionNotifyMsgBox 

Added Settings dialog to control how many instances of EnvMan can run and Proxy Server settings for Release Checker.

SettingsPage1 SettingsPage2

In case of network problem error will be shown as status bar notification or message box.

NetworkError

NetworkError1

Sunday, 22 March 2009

Integrating PartCover with Visual Studio 2005

To help myself with developing unit tests and have a control over which parts of the code get executed I decided to add code coverage tool to a collection of Third-party tools. I looked at NCover, TestDriven.Net and PartCover. My choice is stopped on PartCover. This is an open source code converge tool and very much similar to NCover. I missed the ability to run it directly from Visual Studio like TestDriven.Net runs NCover so I looked around and found a way of integrating it into Visual Studio 2005. Unfortunately there is no way of running PartCover code explorer along with PartCover report generator and NUnit in the single command so I had to write PartCover.cmd batch script to combine execution of these tools. Below is a sample content of that file. If you are using EnvMan source code please check out PartCover from ThirdParty in SNV.

PartCover.cmd

REM === Start PartCover.cmd ===
"C:\Path\To\PartCover\partcover.exe"--target "C:\Path\To\NUnit\nunit-console.exe"--target-work-dir %1 --target-args %2 --output %1\partcover.xml --include %3

"C:\Path\To\PartCover\PartCover.Browser.exe" %1\partcover.xml
REM === End PartCover.cmd ===

Integrating PartCover with Visual Studio 2005

To integrate PartCover with Visual Studio select menu Tools\External Tools ...
In the External Tools Dialog box click Add and enter the following data in the fields.

Title:

Part Cover

Command:

C:\Path\To\PartCover\PartCover.cmd

Arguments:

$(ProjectDir)\bin\Debug
$(ProjectDir)\bin\Debug\$(TargetName)$(TargetExt)
[*Assembly Regular Expression*]*

Initial Directory:

$(ProjectDir)\bin\Debug


Tick Use output Window and Prompt for Arguments. Click OK

Running PartCover

To run PartCover select EnvManTest project and use Part Cover from Tools menu. Because we ticked "Prompt for Arguments" the following dialog box appears.

Replace "Assembly Regular Expression" with "EnvMan" so it looks like this [*EnvMan*]*. Please look at PartCover documentation for more details about regular expressions. After OK is clicked output window of Visual Studio will show a progress of the coverage test and Part Cover Code Browser window will appear. At the moment it will not show any code until we open generated partcover.xml report file.