master
  1<?xml version="1.0" encoding="utf-8" ?>
  2<configuration>
  3  <castle>
  4    <facilities>
  5      <!-- The Startable facility enables components that implement the IStartable
  6           interface to be automatically started when the IoC container is
  7           initialized and then automatically stopped when the IoC container is
  8           shut down.  So if you have a component that you want to ensure is
  9           initialized when the application starts, just make it implements IStartable. -->
 10      <facility id="Startable"
 11                type="Castle.Facilities.Startable.StartableFacility, Castle.MicroKernel" />
 12    </facilities>
 13
 14    <components>
 15      <component id="Core.RegisteredComponentResolver"
 16                 service="Gallio.Hosting.IRegisteredComponentResolver`1, Gallio"
 17                 type="Gallio.Hosting.RuntimeRegisteredComponentResolver`1, Gallio" />
 18
 19      <component id="Core.TestRunnerManager"
 20                 service="Gallio.Runner.ITestRunnerManager, Gallio"
 21                 type="Gallio.Runner.DefaultTestRunnerManager, Gallio" />
 22
 23      <component id="Core.TestHarnessFactory"
 24                 service="Gallio.Runner.Harness.ITestHarnessFactory, Gallio"
 25                 type="Gallio.Runner.Harness.DefaultTestHarnessFactory, Gallio" />
 26
 27      <component id="Core.ConsoleTestEnvironment"
 28           service="Gallio.Runner.Harness.ITestEnvironment, Gallio"
 29           type="Gallio.Runner.Harness.ConsoleTestEnvironment, Gallio" />
 30
 31      <component id="Core.TraceTestEnvironment"
 32                 service="Gallio.Runner.Harness.ITestEnvironment, Gallio"
 33                 type="Gallio.Runner.Harness.TraceTestEnvironment, Gallio" />
 34
 35      <component id="Core.UnhandledExceptionTestEnvironment"
 36                 service="Gallio.Runner.Harness.ITestEnvironment, Gallio"
 37                 type="Gallio.Runner.Harness.UnhandledExceptionTestEnvironment, Gallio" />
 38      
 39      <component id="Core.ReportManager"
 40                 service="Gallio.Runner.Reports.IReportManager, Gallio"
 41                 type="Gallio.Runner.Reports.DefaultReportManager, Gallio" />
 42
 43      <component id="Core.TestContextTracker"
 44                 service="Gallio.Model.Execution.ITestContextTracker, Gallio"
 45                 type="Gallio.Model.Execution.DefaultTestContextTracker, Gallio" />
 46      
 47      <component id="Core.PatternTestFramework"
 48                 service="Gallio.Model.ITestFramework, Gallio"
 49                 type="Gallio.Framework.Pattern.PatternTestFramework, Gallio" />
 50
 51      <component id="Core.PatternTestController"
 52                 service="Gallio.Framework.Pattern.PatternTestController, Gallio"
 53                 type="Gallio.Framework.Pattern.PatternTestController, Gallio" />
 54      
 55      <component id="Core.IsolatedAppDomainHostFactory"
 56                 service="Gallio.Hosting.IHostFactory, Gallio"
 57                 type="Gallio.Hosting.IsolatedAppDomainHostFactory, Gallio" />
 58      
 59      <component id="Core.IsolatedProcessHostFactory"
 60                 service="Gallio.Hosting.IHostFactory, Gallio"
 61                 type="Gallio.Hosting.IsolatedProcessHostFactory, Gallio" />
 62      
 63      <component id="Core.LocalTestDomainFactory"
 64                 service="Gallio.Runner.Domains.ITestDomainFactory, Gallio"
 65                 type="Gallio.Runner.Domains.LocalTestDomainFactory, Gallio" />
 66
 67      <component id="Core.IsolatedAppDomainTestDomainFactory"
 68                 service="Gallio.Runner.Domains.ITestDomainFactory, Gallio"
 69                 type="Gallio.Runner.Domains.HostTestDomainFactory, Gallio">
 70        <parameters>
 71          <hostFactory>${Core.IsolatedAppDomainHostFactory}</hostFactory>
 72        </parameters>
 73      </component>
 74
 75      <component id="Core.IsolatedProcessTestDomainFactory"
 76                 service="Gallio.Runner.Domains.ITestDomainFactory, Gallio"
 77                 type="Gallio.Runner.Domains.HostTestDomainFactory, Gallio">
 78        <parameters>
 79          <hostFactory>${Core.IsolatedProcessHostFactory}</hostFactory>
 80        </parameters>
 81      </component>
 82      
 83      <component id="Core.LocalAppDomainTestRunnerFactory"
 84                 service="Gallio.Runner.ITestRunnerFactory, Gallio"
 85                 type="Gallio.Runner.DomainTestRunnerFactory, Gallio">
 86        <parameters>
 87          <domainFactory>${Core.LocalTestDomainFactory}</domainFactory>
 88          <name>LocalAppDomain</name>
 89          <description>Runs tests within the same AppDomain as the test runner application itself.  This mode provides the least test isolation and is unable to control certain global AppDomain policies.  Only use this mode if the test runner process is expected to be terminated soon after the test run.</description>
 90        </parameters>
 91      </component>
 92      
 93      <component id="Core.IsolatedAppDomainTestRunnerFactory"
 94                 service="Gallio.Runner.ITestRunnerFactory, Gallio"
 95                 type="Gallio.Runner.DomainTestRunnerFactory, Gallio">
 96        <parameters>
 97          <domainFactory>${Core.IsolatedAppDomainTestDomainFactory}</domainFactory>
 98          <name>IsolatedAppDomain</name>
 99          <description>Runs tests within an isolated AppDomain of the test runner process.  This mode is most often used when running tests because it provides adequate isolation for most purposes, has a low overhead, and is easy to debug or profile.</description>
100        </parameters>
101      </component>
102      
103      <component id="Core.IsolatedProcessTestRunnerFactory"
104                 service="Gallio.Runner.ITestRunnerFactory, Gallio"
105                 type="Gallio.Runner.DomainTestRunnerFactory, Gallio">
106        <parameters>
107          <domainFactory>${Core.IsolatedProcessTestDomainFactory}</domainFactory>
108          <name>IsolatedProcess</name>
109          <description>Runs tests within an isolated process external to the test runner.  This mode is used to force tests to run in a different process which can be monitored separately and may have different priviledges or process-level configuration.</description>
110        </parameters>
111      </component>
112
113      <component id="Core.Converter"
114                 service="Gallio.Framework.Data.Conversions.IConverter, Gallio"
115                 type="Gallio.Framework.Data.Conversions.RuntimeRuleBasedConverter, Gallio" />
116      
117      <component id="Core.ArrayToArrayConversionRule"
118                 service="Gallio.Framework.Data.Conversions.IConversionRule, Gallio"
119                 type="Gallio.Framework.Data.Conversions.ArrayToArrayConversionRule, Gallio" />      
120      
121      <component id="Core.ConvertibleToConvertibleConversionRule"
122                 service="Gallio.Framework.Data.Conversions.IConversionRule, Gallio"
123                 type="Gallio.Framework.Data.Conversions.ConvertibleToConvertibleConversionRule, Gallio" />      
124
125      <component id="Core.ObjectToStringConversionRule"
126                 service="Gallio.Framework.Data.Conversions.IConversionRule, Gallio"
127                 type="Gallio.Framework.Data.Conversions.ObjectToStringConversionRule, Gallio" />      
128
129      <component id="Core.StringToXmlDocumentConversionRule"
130                 service="Gallio.Framework.Data.Conversions.IConversionRule, Gallio"
131                 type="Gallio.Framework.Data.Conversions.StringToXmlDocumentConversionRule, Gallio" />      
132      
133      <component id="Core.XPathNavigableToXPathNavigatorConversionRule"
134                 service="Gallio.Framework.Data.Conversions.IConversionRule, Gallio"
135                 type="Gallio.Framework.Data.Conversions.XPathNavigableToXPathNavigatorConversionRule, Gallio" />
136
137      <component id="Core.XPathNavigatorToStringConversionRule"
138                 service="Gallio.Framework.Data.Conversions.IConversionRule, Gallio"
139                 type="Gallio.Framework.Data.Conversions.XPathNavigatorToStringConversionRule, Gallio" />
140
141      <component id="Core.XPathNavigatorToXmlSerializableTypeConversionRule"
142                 service="Gallio.Framework.Data.Conversions.IConversionRule, Gallio"
143                 type="Gallio.Framework.Data.Conversions.XPathNavigatorToXmlSerializableTypeConversionRule, Gallio" />
144      
145      <component id="Core.Formatter"
146                 service="Gallio.Framework.Data.Formatters.IFormatter, Gallio"
147                 type="Gallio.Framework.Data.Formatters.RuntimeRuleBasedFormatter, Gallio" />
148
149      <component id="Core.BooleanFormattingRule"
150                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
151                 type="Gallio.Framework.Data.Formatters.BooleanFormattingRule, Gallio" />
152      
153      <component id="Core.ByteFormattingRule"
154                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
155                 type="Gallio.Framework.Data.Formatters.ByteFormattingRule, Gallio" />
156      
157      <component id="Core.CharFormattingRule"
158                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
159                 type="Gallio.Framework.Data.Formatters.CharFormattingRule, Gallio" />
160      
161      <component id="Core.ConvertToStringFormattingRule"
162                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
163                 type="Gallio.Framework.Data.Formatters.ConvertToStringFormattingRule, Gallio" />
164      
165      <component id="Core.DateTimeFormattingRule"
166                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
167                 type="Gallio.Framework.Data.Formatters.DateTimeFormattingRule, Gallio" />
168      
169      <component id="Core.DBNullFormattingRule"
170                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
171                 type="Gallio.Framework.Data.Formatters.DBNullFormattingRule, Gallio" />
172      
173      <component id="Core.DecimalFormattingRule"
174                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
175                 type="Gallio.Framework.Data.Formatters.DecimalFormattingRule, Gallio" />
176      
177      <component id="Core.DictionaryEntryFormattingRule"
178                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
179                 type="Gallio.Framework.Data.Formatters.DictionaryEntryFormattingRule, Gallio" />
180      
181      <component id="Core.DoubleFormattingRule"
182                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
183                 type="Gallio.Framework.Data.Formatters.DoubleFormattingRule, Gallio" />
184      
185      <component id="Core.EnumerableFormattingRule"
186                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
187                 type="Gallio.Framework.Data.Formatters.EnumerableFormattingRule, Gallio" />
188      
189      <component id="Core.IntegerFormattingRule"
190                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
191                 type="Gallio.Framework.Data.Formatters.IntegerFormattingRule, Gallio" />
192      
193      <component id="Core.KeyValuePairFormattingRule"
194                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
195                 type="Gallio.Framework.Data.Formatters.KeyValuePairFormattingRule, Gallio" />
196      
197      <component id="Core.SByteFormattingRule"
198                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
199                 type="Gallio.Framework.Data.Formatters.SByteFormattingRule, Gallio" />
200      
201      <component id="Core.SingleFormattingRule"
202                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
203                 type="Gallio.Framework.Data.Formatters.SingleFormattingRule, Gallio" />
204      
205      <component id="Core.StringFormattingRule"
206                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
207                 type="Gallio.Framework.Data.Formatters.StringFormattingRule, Gallio" />
208      
209      <component id="Core.TypeFormattingRule"
210                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
211                 type="Gallio.Framework.Data.Formatters.TypeFormattingRule, Gallio" />
212      
213      <component id="Core.XPathNavigableFormattingRule"
214                 service="Gallio.Framework.Data.Formatters.IFormattingRule, Gallio"
215                 type="Gallio.Framework.Data.Formatters.XPathNavigableFormattingRule, Gallio" />
216    </components>
217  </castle>
218</configuration>