Click here to Skip to main content
11,713,864 members (86,407 online)
Click here to Skip to main content
Articles » Web Development » ASP.NET » Howto » Downloads
Add your own
alternative version

Unit Testing a DotNetNuke Private Assembly Module

, 18 Jun 2007 CPOL 54.8K 629 35
This article describes how to create unit tests that will test out code for a DotNetNuke custom module.
DnnUnitTesting_demo.zip
iFinity.DNN.Utilities.dll
DnnUnitTesting_src.zip
DnnUnitTesting
bin
DnnUnitTesting
bin
Debug
obj
Debug
Refactor
TempPE
Properties
DnnUnitTesting.vsmdi
iFinity.DnnUtilities
bin
Debug
Release
iFinity.DNN.Utilities.csproj.vspscc
obj
Debug
Refactor
TempPE
Release
TempPE
Properties
localtestrun.testrunconfig
TestResults
Bruce_WOMBAT 2007-06-08 09_08_45
In
WOMBAT
Out
Bruce_WOMBAT 2007-06-08 09_10_02
In
WOMBAT
Out
Bruce_WOMBAT 2007-06-08 09_11_13
In
WOMBAT
Out
Bruce_WOMBAT 2007-06-08 09_15_14
In
WOMBAT
Out
Bruce_WOMBAT 2007-06-08 09_16_18
In
WOMBAT
Out
Bruce_WOMBAT 2007-06-08 09_16_52
In
WOMBAT
Out
Bruce_WOMBAT 2007-06-08 09_20_35
In
WOMBAT
Out
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="microsoft.visualstudio.testtools" type="Microsoft.VisualStudio.TestTools.UnitTesting.TestConfigurationSection, Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
    <sectionGroup name="iFinity">
      <section name="iFinitySettings" type="iFinity.DNN.Utilities.Configuration.iFinitySettingsSection,iFinity.DNN.Utilities"/>
      <section name="dnnUnitTest" type="iFinity.DNN.Utilities.Testing.DnnUnitTestSection, iFinity.DNN.Utilities"/>
    </sectionGroup>
    <sectionGroup name="dotnetnuke">
      <!-- the requirePermission attribute will cause a syntax warning - please ignore - it is required for Medium Trust support-->
      <section name="data" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
      <section name="caching" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
      <section name="logging" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="scheduling" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="htmlEditor" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="navigationControl" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="searchIndex" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="searchDataStore" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="friendlyUrl" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="authentication" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="members" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="roles" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
      <section name="profiles" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke" />
    </sectionGroup>
  </configSections>
  <connectionStrings>
    <!-- change these settings to your local setup, you can normally copy this line straight in from an existing dnn web.config file -->
    <add name="SiteSqlServer" connectionString="Server=[your dnn sql server];Database=[your dnn database];uid=[your dnn user];pwd=[your dnn password];" providerName="System.Data.SqlClient"/>
  </connectionStrings>
  <iFinity>
    <!-- change these settings to your local setup 
         The file paths can be anything, but MUST point to 'real' directories.  You can set them to a 
         local Dnn installation or simply create the directories separately.
    -->
   <dnnUnitTest hostMapPath="C:\DotNetNuke\portals\1\" 
                 appPath="C:\DotNetNuke\" 
                 appName="DotNetNuke" 
                 simulatedServer="[your http server name]" 
                 simulatedPage="default.aspx"/>
  </iFinity>
  <dotnetnuke>
    <htmlEditor defaultProvider="FckHtmlEditorProvider">
      <providers>
        <clear />
        <add name="FckHtmlEditorProvider" type="DotNetNuke.HtmlEditor.FckHtmlEditorProvider.FckHtmlEditorProvider, DotNetNuke.FckHtmlEditorProvider" providerPath="~/Providers/HtmlEditorProviders/Fck/" CustomConfigurationPath="~/Providers/HtmlEditorProviders/Fck/custom/FCKConfig.js" EnhancedSecurityDefault="false" SecureConfigurationPath="~/Providers/HtmlEditorProviders/Fck/custom/FCKConfigSecure.js" ImageGalleryPath="~/Providers/HtmlEditorProviders/Fck/fckimagegallery.aspx" ImageUploadPath="~/Providers/HtmlEditorProviders/Fck/fckimagegallery.aspx" ImageAllowedFileTypes="gif,png,bmp,jpg" FlashGalleryPath="~/Providers/HtmlEditorProviders/Fck/fckimagegallery.aspx" FlashUploadPath="~/Providers/HtmlEditorProviders/Fck/fckimagegallery.aspx" FlashAllowedFileTypes="fla,swf" LinksGalleryPath="~/Providers/HtmlEditorProviders/Fck/fcklinkgallery.aspx" DynamicStylesGeneratorPath="~/Providers/HtmlEditorProviders/Fck/FCKStyles.aspx" DynamicStylesCaseSensitive="true" DynamicStylesGeneratorFilter="controlpanel|filemanager|mainmenu|wizard" StaticStylesFile="~/Providers/HtmlEditorProviders/Fck/FCKeditor/fckstyles.xml" StylesDefaultMode="Static" DynamicCSSGeneratorPath="~/Providers/HtmlEditorProviders/Fck/FCKCSS.aspx" StaticCSSFile="~/Providers/HtmlEditorProviders/Fck/FCKeditor/editor/css/fck_editorarea.css" CSSDefaultMode="static" spellCheck="ieSpell" AvailableToolbarSkins="Office2003,Silver" DefaultToolbarSkin="Office2003" AvailableToolBarSets="DNNDefault,Default,NoGallery,Basic" DefaultToolbarSet="DNNDefault" DefaultImageGallerySkin="Default" DefaultFlashGallerySkin="Default" DefaultLinksGallerySkin="Default" FCKDebugMode="false" UseFCKSource="false" OptionsOpenMode="ShowModalDialog" CustomOptionsDialog="Admin" />
      </providers>
    </htmlEditor>
    <navigationControl defaultProvider="SolpartMenuNavigationProvider">
      <providers>
        <clear />
        <add name="SolpartMenuNavigationProvider" type="DotNetNuke.NavigationControl.SolpartMenuNavigationProvider, DotNetNuke.SolpartMenuNavigationProvider" providerPath="~\Providers\NavigationProviders\SolpartMenuNavigationProvider\" />
        <add name="DNNMenuNavigationProvider" type="DotNetNuke.NavigationControl.DNNMenuNavigationProvider, DotNetNuke.DNNMenuNavigationProvider" providerPath="~\Providers\NavigationProviders\DNNMenuNavigationProvider\" />
        <add name="DNNTreeNavigationProvider" type="DotNetNuke.NavigationControl.DNNTreeNavigationProvider, DotNetNuke.DNNTreeNavigationProvider" providerPath="~\Providers\NavigationProviders\DNNTreeNavigationProvider\" />
        <add name="DNNDropDownNavigationProvider" type="DotNetNuke.NavigationControl.DNNDropDownNavigationProvider, DotNetNuke.DNNDropDownNavigationProvider" providerPath="~\Providers\NavigationProviders\DNNDropDownNavigationProvider\" />
        <add name="ASP2MenuNavigationProvider" type="DotNetNuke.NavigationControl.ASP2MenuNavigationProvider, DotNetNuke.ASP2MenuNavigationProvider" providerPath="~\Providers\NavigationProviders\ASP2MenuNavigationProvider\" />
      </providers>
    </navigationControl>
    <searchIndex defaultProvider="ModuleIndexProvider">
      <providers>
        <clear />
        <add name="ModuleIndexProvider" type="DotNetNuke.Services.Search.ModuleIndexer, DotNetNuke.Search.Index" providerPath="~\Providers\SearchProviders\ModuleIndexer\" />
      </providers>
    </searchIndex>
    <searchDataStore defaultProvider="SearchDataStoreProvider">
      <providers>
        <clear />
        <add name="SearchDataStoreProvider" type="DotNetNuke.Services.Search.SearchDataStore, DotNetNuke.Search.DataStore" providerPath="~\Providers\SearchProviders\SearchDataStore\" />
      </providers>
    </searchDataStore>
    <data defaultProvider="SqlDataProvider">
      <providers>
        <clear />
        <add name="SqlDataProvider" type="DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider" connectionStringName="SiteSqlServer" upgradeConnectionString="" providerPath="~\Providers\DataProviders\SqlDataProvider\" objectQualifier="dnn_" databaseOwner="dbo" />
      </providers>
    </data>
    <logging defaultProvider="DBLoggingProvider">
      <providers>
        <clear />
        <add name="XMLLoggingProvider" type="DotNetNuke.Services.Log.EventLog.XMLLoggingProvider, DotNetNuke.XMLLoggingProvider" configfilename="LogConfig.xml.resources" providerPath="~\Providers\LoggingProviders\XMLLoggingProvider\" />
        <add name="DBLoggingProvider" type="DotNetNuke.Services.Log.EventLog.DBLoggingProvider.DBLoggingProvider, DotNetNuke.Provider.DBLoggingProvider" providerPath="~\Providers\LoggingProviders\Provider.DBLoggingProvider\" />
      </providers>
    </logging>
    <scheduling defaultProvider="DNNScheduler">
      <providers>
        <clear />
        <add name="DNNScheduler" type="DotNetNuke.Services.Scheduling.DNNScheduling.DNNScheduler, DotNetNuke.DNNScheduler" providerPath="~\Providers\SchedulingProviders\DNNScheduler\" debug="false" maxThreads="1" />
      </providers>
    </scheduling>
    <friendlyUrl defaultProvider="DNNFriendlyUrl">
      <providers>
        <clear />
        <add name="DNNFriendlyUrl" type="DotNetNuke.Services.Url.FriendlyUrl.DNNFriendlyUrlProvider, DotNetNuke.HttpModules.UrlRewrite" includePageName="true" regexMatch="[^a-zA-Z0-9 _-]" />
      </providers>
    </friendlyUrl>
    <caching defaultProvider="FileBasedCachingProvider">
      <providers>
        <clear />
        <add name="FileBasedCachingProvider" type="DotNetNuke.Services.Cache.FileBasedCachingProvider.FBCachingProvider, DotNetNuke.Caching.FileBasedCachingProvider" providerPath="~\Providers\CachingProviders\FileBasedCachingProvider\" />
        <add name="BroadcastPollingCachingProvider" type="DotNetNuke.Services.Cache.BroadcastPollingCachingProvider.BPCachingProvider, DotNetNuke.Caching.BroadcastPollingCachingProvider" providerPath="~\Providers\CachingProviders\BroadcastPollingCachingProvider\" />
      </providers>
    </caching>
    <authentication defaultProvider="ADSIAuthenticationProvider">
      <providers>
        <clear />
        <add name="ADSIAuthenticationProvider" type="DotNetNuke.Security.Authentication.ADSIProvider, DotNetNuke.Authentication.ADSIProvider" providerPath="~\Providers\AuthenticationProviders\ADSIProvider\" />
      </providers>
    </authentication>
    <members defaultProvider="AspNetMembershipProvider">
      <providers>
        <clear />
        <add name="AspNetMembershipProvider" type="DotNetNuke.Security.Membership.AspNetMembershipProvider, DotNetNuke.Provider.AspNetProvider" providerPath="~\Providers\MembershipProviders\AspNetMembershipProvider\" />
      </providers>
    </members>
    <roles defaultProvider="DNNRoleProvider">
      <providers>
        <clear />
        <add name="DNNRoleProvider" type="DotNetNuke.Security.Membership.DNNRoleProvider, DotNetNuke.Provider.DNNProvider" providerPath="~\Providers\MembershipProviders\DNNMembershipProvider\" />
      </providers>
    </roles>
    <profiles defaultProvider="DNNProfileProvider">
      <providers>
        <clear />
        <add name="DNNProfileProvider" type="DotNetNuke.Security.Profile.DNNProfileProvider, DotNetNuke.Provider.DNNProvider" providerPath="~\Providers\MembershipProviders\DNNMembershipProvider\" />
      </providers>
    </profiles>
  </dotnetnuke>
</configuration>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Bruce Chapman DNN
Product Manager DNN Corp
Australia Australia
Bruce Chapman is the Product Manager for Cloud Services at DNN. He’s been an active member of the DNN Community since 2006 as a contributor, vendor and now employee of DNN Corp.

You can read his blog at http://dnnsoftware.com/blog or follow him on Twitter @brucerchapman

You may also be interested in...

| Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.150819.1 | Last Updated 19 Jun 2007
Article Copyright 2007 by Bruce Chapman DNN
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid