Re: SVN Not building?
Cory Foy <[email protected]> Thu, 28 Aug 2008 12:59:34 -0400
| Newsgroups | gmane.comp.windows.dotnet.nunit.devel |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format.
--------------080909060205030508000104
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Charlie Poole wrote:
> The build-all target builds the current config for all targets.
> So it's ignoring your setting of the target as mono-2.0 and
> attempting to build debug for all the supported targets you
> have installed.
>
> I'm guessing you meant to use
> nant mono-2.0 build
>
Ah, thanks. Ok, here are the other files that need to be modified.
Mostly missing references.
src/NUnitCore/core/nunit.core.build
src/ClientUtilities/util/nunit.util.build
src/GuiRunner/nunit-gui/nunit-gui.build
src/PNUnit/agent/pnunit-agent.build
src/PNUnit/launcher/pnunit-launcher.build
src/NUnitFramework/framework/nunit.framework.build
src/NUnitFramework/tests/nunit.framework.tests.build
src/NUnitFramework/tests/NullableTypesTests.cs
With these changes, everything builds. Almost everything was either
missing references or missing includes. The only exception was the
NullableTypesTests - that whole thing doesn't compile, complaining that:
[csc]
/Users/foyc/Workspace/nunit/nunit20/src/NUnitFramework/tests/NullableTypesTests.cs(35,20):
error CS1502: The best overloaded method match for
`NUnit.Framework.Assert.Greater(int, int)' has some invalid arguments
[csc]
/Users/foyc/Workspace/nunit/nunit20/build/mono/2.0/debug/lib/nunit.framework.dll
(Location of the symbol related to previous error)
[csc]
/Users/foyc/Workspace/nunit/nunit20/src/NUnitFramework/tests/NullableTypesTests.cs(35,20):
error CS1503: Argument 1: Cannot convert type `int?' to `int'
and about 70 other similar errors. So I just added to the preprocess #if
to ignore the tests if MONO.
Next up is to run the tests and see where we can get. ;)
--
Cory Foy
http://www.cornetdesign.com
http://www.agileflorida.com
--------------080909060205030508000104
Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
name="nunit.core.build"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="nunit.core.build"
<?xml version="1.0"?>
<project name="NUnitCore" default="build" basedir=".">
<patternset id="source-files">
<include name="AbstractTestCaseDecoration.cs"/>
<include name="AssemblyInfo.cs"/>
<include name="AssemblyHelper.cs"/>
<include name="AssemblyReader.cs"/>
<include name="AssemblyResolver.cs"/>
<include name="CoreExtensions.cs"/>
<include name="CultureDetector.cs"/>
<include name="DirectorySwapper.cs"/>
<include name="EventListenerTextWriter.cs"/>
<include name="EventPump.cs"/>
<include name="EventQueue.cs"/>
<include name="ExpectedExceptionProcessor.cs"/>
<include name="ExtensionHost.cs"/>
<include name="ExtensionPoint.cs"/>
<include name="IgnoreDecorator.cs"/>
<include name="InvalidSuiteException.cs"/>
<include name="InvalidTestFixtureException.cs"/>
<include name="LegacySuite.cs"/>
<include name="Log4NetCapture.cs"/>
<include name="LogCapture.cs"/>
<include name="MethodHelper.cs"/>
<include name="NamespaceTreeBuilder.cs"/>
<include name="NoTestFixturesException.cs"/>
<include name="NTrace.cs"/>
<include name="NullListener.cs"/>
<include name="NUnitConfiguration.cs"/>
<include name="NUnitException.cs"/>
<include name="NUnitFramework.cs"/>
<include name="NUnitTestFixture.cs"/>
<include name="NUnitTestMethod.cs"/>
<include name="ParameterizedTestMethodSuite.cs"/>
<include name="PlatformHelper.cs"/>
<include name="ProxyTestRunner.cs"/>
<include name="QueuingEventListener.cs"/>
<include name="Reflect.cs"/>
<include name="RemoteTestRunner.cs"/>
<include name="SetUpFixture.cs"/>
<include name="SimpleTestRunner.cs"/>
<include name="StringTextWriter.cs"/>
<include name="SuiteBuilderAttribute.cs"/>
<include name="TestBuilderAttribute.cs"/>
<include name="TestCaseBuilder.cs"/>
<include name="TestCaseBuilderAttribute.cs"/>
<include name="TestContext.cs"/>
<include name="TestDecoratorAttribute.cs"/>
<include name="TestFixture.cs"/>
<include name="TestFixtureBuilder.cs"/>
<include name="TestMethod.cs"/>
<include name="TestRunnerThread.cs"/>
<include name="TestSuite.cs"/>
<include name="TestSuiteBuilder.cs"/>
<include name="TextCapture.cs"/>
<include name="ThreadedTestRunner.cs"/>
<include name="TypeHelper.cs"/>
<include name="Builders/CombinatorialStrategy.cs"/>
<include name="Builders/CombinatorialTestCaseProvider.cs"/>
<include name="Builders/CombiningStrategy.cs"/>
<include name="Builders/DataSourceProvider.cs"/>
<include name="Builders/InlineDataPointProvider.cs"/>
<include name="Builders/TestCaseFactoryProvider.cs"/>
<include name="Builders/LegacySuiteBuilder.cs"/>
<include name="Builders/NUnitTestCaseBuilder.cs"/>
<include name="Builders/NUnitTestFixtureBuilder.cs"/>
<include name="Builders/PairwiseStrategy.cs"/>
<include name="Builders/ProviderCache.cs"/>
<include name="Builders/ProviderInfo.cs"/>
<include name="Builders/SequentialStrategy.cs"/>
<include name="Builders/SetUpFixtureBuilder.cs"/>
<include name="Builders/TestAssemblyBuilder.cs"/>
<include name="Builders/TestCaseParameterProvider.cs"/>
<include name="Builders/ParameterizedTestCaseBuilder.cs"/>
<include name="Extensibility/DataPointProviders.cs"/>
<include name="Extensibility/EventListenerCollection.cs"/>
<include name="Extensibility/FrameworkRegistry.cs"/>
<include name="Extensibility/SuiteBuilderCollection.cs"/>
<include name="Extensibility/TestCaseProviders.cs"/>
<include name="Extensibility/TestCaseBuilderCollection.cs"/>
<include name="Extensibility/TestDecoratorCollection.cs"/>
</patternset>
<target name="build">
<csc target="library"
output="${current.build.dir}/nunit.core.dll"
debug="${build.debug}"
define="${build.defines}">
<sources>
<patternset refid="source-files"/>
<include name="../../GeneratedAssemblyInfo.cs"/>
</sources>
<nowarn>
<warning number="618,1699" if="${runtime.version=='2.0'}"/>
</nowarn>
<references>
<include name="System.Configuration.dll"/>
<include name="${current.build.dir}/nunit.core.interfaces.dll"/>
</references>
</csc>
</target>
<target name="package">
<copy todir="${package.src.dir}/NUnitCore/core">
<fileset>
<patternset refid="source-files"/>
<include name="results.xsd"/> <!-- Need to check this -->
<include name="summary.xslt"/> <!-- and this -->
<include name="nunit.core.build"/>
</fileset>
</copy>
</target>
</project>
--------------080909060205030508000104
Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
name="nunit.util.build"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="nunit.util.build"
<?xml version="1.0"?>
<project name="NUnitUtil" default="build" basedir=".">
<patternset id="source-files">
<include name="AggregatingTestRunner.cs"/>
<include name="AssemblyInfo.cs"/>
<include name="AssemblyList.cs"/>
<include name="AssemblyWatcher.cs"/>
<include name="CategoryExpression.cs"/>
<include name="CategoryManager.cs"/>
<include name="CommandLineOptions.cs"/>
<include name="ConsoleWriter.cs"/>
<include name="ISettings.cs"/>
<include name="ITestEvents.cs"/>
<include name="ITestLoader.cs"/>
<include name="MemorySettingsStorage.cs"/>
<include name="MultipleTestDomainRunner.cs"/>
<include name="NUnitProject.cs"/>
<include name="NUnitRegistry.cs"/>
<include name="PathUtils.cs"/>
<include name="ProcessRunner.cs"/>
<include name="ProjectConfig.cs"/>
<include name="ProjectConfigCollection.cs"/>
<include name="ProjectFormatException.cs"/>
<include name="RecentFileEntry.cs"/>
<include name="RecentFiles.cs"/>
<include name="RecentFilesCollection.cs"/>
<include name="RegistrySettingsStorage.cs"/>
<include name="RemoteTestAgent.cs"/>
<include name="ResultSummarizer.cs"/>
<include name="ServerBase.cs"/>
<include name="ServerUtilities.cs"/>
<include name="Services.cs"/>
<include name="SettingsGroup.cs"/>
<include name="SettingsStorage.cs"/>
<include name="StackTraceFilter.cs"/>
<include name="TestAgent.cs"/>
<include name="TestDomain.cs"/>
<include name="TestEventArgs.cs"/>
<include name="TestEventDispatcher.cs"/>
<include name="TestExceptionHandler.cs"/>
<include name="TestLoader.cs"/>
<include name="TestObserver.cs"/>
<include name="TestResultItem.cs"/>
<include name="TestRunnerFactory.cs"/>
<include name="TestServer.cs"/>
<include name="VSProject.cs"/>
<include name="VSProjectConfig.cs"/>
<include name="VSProjectConfigCollection.cs"/>
<include name="XmlResultTransform.cs"/>
<include name="XmlResultVisitor.cs"/>
<include name="XmlSettingsStorage.cs"/>
<include name="Extensibility/IProjectConverter.cs"/>
<include name="Extensibility/ProjectConverterCollection.cs"/>
<include name="ProjectConverters/VisualStudioConverter.cs"/>
<include name="Services/AddinManager.cs"/>
<include name="Services/AddinRegistry.cs"/>
<include name="Services/ClientExtensions.cs"/>
<include name="Services/DomainManager.cs"/>
<include name="Services/ProjectService.cs"/>
<include name="Services/RecentFilesService.cs"/>
<include name="Services/ServiceManager.cs"/>
<include name="Services/SettingsService.cs"/>
<include name="Services/TestAgency.cs"/>
</patternset>
<patternset id="resource-files">
<include name="Transform.resx"/>
</patternset>
<target name="build">
<csc target="library"
output="${current.build.dir}/nunit.util.dll"
debug="${build.debug}" define="${build.defines}">
<sources>
<patternset refid="source-files"/>
<include name="../../GeneratedAssemblyInfo.cs"/>
</sources>
<nowarn>
<warning number="618"/>
<warning number="1699" if="${runtime.version=='2.0'}"/>
</nowarn>
<resources prefix="NUnit.Util">
<patternset refid="resource-files"/>
</resources>
<references>
<include name="System.Runtime.Remoting.dll"/>
<include name="System.Configuration.dll"/>
<include name="${current.build.dir}/nunit.core.interfaces.dll"/>
<include name="${current.build.dir}/nunit.core.dll"/>
<include name="${current.lib.dir}/nunit.framework.dll"/>
</references>
</csc>
</target>
<target name="package">
<copy todir="${package.src.dir}/ClientUtilities/util">
<fileset>
<patternset refid="source-files"/>
<patternset refid="resource-files"/>
<include name="nunit.util.build"/>
</fileset>
</copy>
</target>
</project>
--------------080909060205030508000104
Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
name="nunit-gui.build"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="nunit-gui.build"
<?xml version="1.0"?>
<project name="NUnitGuiRunner" default="build" basedir=".">
<patternset id="source-files">
<include name="AboutBox.cs"/>
<include name="AddinDialog.cs"/>
<include name="AppEntry.cs"/>
<include name="AssemblyInfo.cs"/>
<include name="DetailResults.cs"/>
<include name="ExceptionDetailsForm.cs"/>
<include name="GuiOptions.cs"/>
<include name="NUnitForm.cs"/>
<include name="OptionsDialog.cs"/>
<include name="ProjectEditor.cs"/>
<include name="SettingsPages/AdvancedLoaderSettingsPage.cs"/>
<include name="SettingsPages/AssemblyReloadSettingsPage.cs"/>
<include name="SettingsPages/GuiSettingsPage.cs"/>
<include name="SettingsPages/TestLoaderSettingsPage.cs"/>
<include name="SettingsPages/TestResultSettingsPage.cs"/>
<include name="SettingsPages/TreeSettingsPage.cs"/>
<include name="SettingsPages/VisualStudioSettingsPage.cs"/>
</patternset>
<patternset id="resource-files">
<include name="AboutBox.resx"/>
<include name="AddinDialog.resx"/>
<include name="ExceptionDetailsForm.resx"/>
<include name="NUnitForm.resx"/>
<include name="OptionsDialog.resx"/>
<include name="ProjectEditor.resx"/>
<include name="App.ico"/>
<include name="Logo.ico"/>
<include name="SettingsPages/AdvancedLoaderSettingsPage.resx"/>
<include name="SettingsPages/AssemblyReloadSettingsPage.resx"/>
<include name="SettingsPages/GuiSettingsPage.resx"/>
<include name="SettingsPages/TestLoaderSettingsPage.resx"/>
<include name="SettingsPages/TestResultSettingsPage.resx"/>
<include name="SettingsPages/TreeSettingsPage.resx"/>
<include name="SettingsPages/VisualStudioSettingsPage.resx"/>
</patternset>
<target name="build">
<csc target="library"
output="${current.build.dir}/nunit-gui-runner.dll"
win32icon="Logo.ico" debug="${build.debug}"
define="${build.defines}">
<sources>
<patternset refid="source-files"/>
<include name="../../GeneratedAssemblyInfo.cs"/>
</sources>
<nowarn>
<warning number="618,1699" if="${runtime.version=='2.0'}"/>
</nowarn>
<resources>
<patternset refid="resource-files"/>
</resources>
<references>
<include name="System.Windows.Forms.dll"/>
<include name="System.Drawing.dll"/>
<include name="System.Configuration.dll"/>
<include name="${current.build.dir}/nunit.core.dll"/>
<include name="${current.build.dir}/nunit.core.interfaces.dll"/>
<include name="${current.build.dir}/nunit.util.dll"/>
<include name="${current.build.dir}/nunit.uikit.dll"/>
<include name="${current.build.dir}/nunit.core.dll"/>
<include name="${current.lib.dir}/nunit.framework.dll"/>
</references>
</csc>
</target>
<target name="package">
<copy todir="${package.src.dir}/GuiRunner/nunit-gui">
<fileset>
<patternset refid="source-files"/>
<patternset refid="resource-files"/>
<include name="nunit-gui.build"/>
</fileset>
</copy>
</target>
</project>
--------------080909060205030508000104
Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
name="pnunit-agent.build"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="pnunit-agent.build"
<?xml version="1.0"?>
<project name="PNUnitAgent" default="build" basedir=".">
<patternset id="source-files">
<include name="Agent.cs"/>
<include name="AgentConfig.cs"/>
<include name="AssemblyInfo.cs"/>
<include name="PNUnitTestRunner.cs"/>
</patternset>
<target name="build">
<csc target="exe"
output="${current.build.dir}/pnunit-agent.exe"
debug="${build.debug}"
define="${build.defines}">
<sources basedir=".">
<patternset refid="source-files"/>
</sources>
<references>
<include name="System.Runtime.Remoting.dll"/>
<include name="${current.lib.dir}/pnunit.framework.dll"/>
<include name="${current.build.dir}/nunit.core.dll"/>
<include name="${current.build.dir}/nunit.core.interfaces.dll"/>
<include name="${current.build.dir}/nunit.util.dll"/>
<include name="${current.build.dir}/log4net.dll"/>
</references>
</csc>
</target>
<target name="package">
<copy todir="${package.src.dir}/PNUnit/agent">
<fileset>
<patternset refid="source-files"/>
<include name="App.ico"/>
<include name="pnunit-agent.build"/>
</fileset>
</copy>
</target>
</project>
--------------080909060205030508000104
Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
name="pnunit-launcher.build"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="pnunit-launcher.build"
<?xml version="1.0"?>
<project name="PNUnitLauncher" default="build" basedir=".">
<patternset id="source-files">
<include name="AssemblyInfo.cs"/>
<include name="Barrier.cs"/>
<include name="launcher.cs"/>
<include name="Runner.cs"/>
<include name="TestConf.cs"/>
</patternset>
<target name="build">
<csc target="exe"
output="${current.build.dir}/pnunit-launcher.exe"
debug="${build.debug}"
define="${build.defines}">
<sources basedir=".">
<patternset refid="source-files"/>
</sources>
<references>
<include name="System.Runtime.Remoting.dll"/>
<include name="${current.lib.dir}/pnunit.framework.dll"/>
<include name="${current.build.dir}/nunit.core.dll"/>
<include name="${current.build.dir}/nunit.core.interfaces.dll"/>
<include name="${current.build.dir}/log4net.dll"/>
</references>
</csc>
</target>
<target name="package">
<copy todir="${package.src.dir}/PNUnit/launcher">
<fileset>
<patternset refid="source-files"/>
<include name="App.ico"/>
<include name="pnunit-launcher.build"/>
</fileset>
</copy>
</target>
</project>
--------------080909060205030508000104
Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
name="nunit.framework.build"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="nunit.framework.build"
<?xml version="1.0"?>
<project name="NUnitFramework" default="build" basedir=".">
<patternset id="source-files">
<include name="Constraints/BinaryOperations.cs"/>
<include name="Constraints/CollectionConstraints.cs"/>
<include name="Constraints/ComparisonConstraints.cs"/>
<include name="Constraints/Constraint.cs"/>
<include name="Constraints/ConstraintBuilder.cs"/>
<include name="Constraints/ConstraintFactory.cs"/>
<include name="Constraints/ConstraintModifier.cs"/>
<include name="Constraints/ConstraintOperators.cs"/>
<include name="Constraints/ContainsConstraint.cs"/>
<include name="Constraints/DirectoryConstraints.cs"/>
<include name="Constraints/EmptyConstraint.cs"/>
<include name="Constraints/EqualConstraint.cs"/>
<include name="Constraints/IConstraint.cs"/>
<include name="Constraints/MessageWriter.cs"/>
<include name="Constraints/MsgUtils.cs"/>
<include name="Constraints/Numerics.cs"/>
<include name="Constraints/PathConstraints.cs"/>
<include name="Constraints/PrefixConstraints.cs"/>
<include name="Constraints/PropertyConstraint.cs"/>
<include name="Constraints/RangeConstraint.cs"/>
<include name="Constraints/SameAsConstraint.cs"/>
<include name="Constraints/StringConstraints.cs"/>
<include name="Constraints/ThrowsConstraint.cs"/>
<include name="Constraints/TypeConstraints.cs"/>
<include name="AssemblyInfo.cs"/>
<include name="Assert.cs"/>
<include name="AssertionException.cs"/>
<include name="AssertionHelper.cs"/>
<include name="CategoryAttribute.cs"/>
<include name="Catch.cs"/>
<include name="CollectionAssert.cs"/>
<include name="DataSourceAttribute.cs"/>
<include name="DescriptionAttribute.cs"/>
<include name="DirectoryAssert.cs"/>
<include name="ExpectedExceptionAttribute.cs"/>
<include name="ExplicitAttribute.cs"/>
<include name="FactoriesAttribute.cs"/>
<include name="FileAssert.cs"/>
<include name="GlobalSettings.cs"/>
<include name="Has.cs"/>
<include name="IExpectException.cs"/>
<include name="IgnoreAttribute.cs"/>
<include name="IgnoreException.cs"/>
<include name="IncludeExcludeAttributes.cs"/>
<include name="InconclusiveException.cs"/>
<include name="Is.cs"/>
<include name="ITestCaseData.cs"/>
<include name="JoinTypeAttributes.cs"/>
<include name="List.cs"/>
<include name="ListMapper.cs"/>
<include name="PropertyAttribute.cs"/>
<include name="RandomAttribute.cs"/>
<include name="RangeAttribute.cs"/>
<include name="RequiredAddinAttribute.cs"/>
<include name="SetCultureAttribute.cs"/>
<include name="SetUpAttribute.cs"/>
<include name="SetUpFixtureAttribute.cs"/>
<include name="StringAssert.cs"/>
<include name="SuccessException.cs"/>
<include name="SuiteAttribute.cs"/>
<include name="TearDownAttribute.cs"/>
<include name="TestAttribute.cs"/>
<include name="TestCaseAttribute.cs"/>
<include name="TestCaseData.cs"/>
<include name="TestCasesAttribute.cs"/>
<include name="TestFixtureAttribute.cs"/>
<include name="TestFixtureSetUpAttribute.cs"/>
<include name="TestFixtureTearDownAttribute.cs"/>
<include name="Text.cs"/>
<include name="TextMessageWriter.cs"/>
<include name="Throws.cs"/>
<include name="ValuesAttribute.cs"/>
</patternset>
<target name="build">
<csc target="library"
output="${current.lib.dir}/nunit.framework.dll"
doc="${current.lib.dir}/nunit.framework.xml"
debug="${build.debug}"
define="${build.defines}">
<nowarn>
<warning number="618,672"/>
<warning number="1699" if="${runtime.version=='2.0'}"/>
</nowarn>
<sources basedir=".">
<patternset refid="source-files"/>
<include name="../../GeneratedAssemblyInfo.cs" />
</sources>
</csc>
<!-- Needed locally by some NUnit tests -->
<copy file="${current.lib.dir}/nunit.framework.dll"
todir="${current.test.dir}"/>
</target>
<target name="package">
<copy todir="${package.src.dir}/NUnitFramework/framework">
<fileset>
<patternset refid="source-files"/>
<include name="nunit.framework.build"/>
</fileset>
</copy>
</target>
</project>
--------------080909060205030508000104
Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
name="nunit.framework.tests.build"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="nunit.framework.tests.build"
<?xml version="1.0"?>
<project name="NUnitFrameworkTests" default="build" basedir=".">
<patternset id="source-files">
<include name="Constraints/AndTest.cs"/>
<include name="Constraints/CollectionConstraintTests.cs"/>
<include name="Constraints/ComparisonConstraintTests.cs"/>
<include name="Constraints/ConstraintTestBase.cs"/>
<include name="Constraints/EmptyTest.cs"/>
<include name="Constraints/EqualTest.cs"/>
<include name="Constraints/NotTest.cs"/>
<include name="Constraints/OrTest.cs"/>
<include name="Constraints/MsgUtilTests.cs"/>
<include name="Constraints/PathConstraintTests.cs"/>
<include name="Constraints/SameAsTest.cs"/>
<include name="Constraints/StringConstraintTests.cs"/>
<include name="Constraints/TypeConstraintTests.cs"/>
<include name="Syntax/CollectionTests.cs"/>
<include name="Syntax/ComparisonTests.cs"/>
<include name="Syntax/EqualityTests.cs"/>
<include name="Syntax/OperatorOverrides.cs"/>
<include name="Syntax/OperatorTests.cs"/>
<include name="Syntax/PathConstraintTests.cs"/>
<include name="Syntax/PropertyTests.cs"/>
<include name="Syntax/SimpleConstraints.cs"/>
<include name="Syntax/StringConstraints.cs"/>
<include name="Syntax/SyntaxTest.cs"/>
<include name="Syntax/TypeConstraints.cs"/>
<include name="ArrayEqualsFailureMessageFixture.cs"/>
<include name="ArrayEqualsFixture.cs"/>
<include name="ArrayNotEqualFixture.cs"/>
<include name="AssertSyntaxTests.cs"/>
<include name="AssertThrowsTests.cs"/>
<include name="CollectionAssertTest.cs"/>
<include name="CollectionAdapter.cs"/>
<include name="ConditionAssertTests.cs"/>
<include name="DirectoryAssertTests.cs"/>
<include name="EqualsFixture.cs"/>
<include name="FileAssertTests.cs"/>
<include name="GreaterEqualFixture.cs"/>
<include name="GreaterFixture.cs"/>
<include name="LessEqualFixture.cs"/>
<include name="LessFixture.cs"/>
<include name="ListContentsTests.cs"/>
<include name="MessageChecker.cs"/>
<include name="NotEqualFixture.cs"/>
<include name="NotSameFixture.cs"/>
<include name="NullableTypesTests.cs"/>
<include name="RangeTests.cs"/>
<include name="SameFixture.cs"/>
<include name="StringAssertTests.cs"/>
<include name="TestFixtureAttributeTests.cs"/>
<include name="TextMessageWriterTests.cs"/>
<include name="TypeAssertTest.cs"/>
</patternset>
<patternset id="resource-files">
<include name="TestImage1.jpg"/>
<include name="TestImage2.jpg"/>
<include name="TestText1.txt"/>
<include name="TestText2.txt"/>
</patternset>
<target name="build">
<csc target="library"
output="${current.test.dir}/nunit.framework.tests.dll"
debug="${build.debug}"
define="${build.defines}">
<nowarn>
<warning number="618,672"/>
</nowarn>
<sources>
<patternset refid="source-files"/>
<include name="../../GeneratedAssemblyInfo.cs"/>
</sources>
<resources prefix="NUnit.Framework.Tests">
<patternset refid="resource-files"/>
</resources>
<references>
<include name="${current.lib.dir}/nunit.framework.dll"/>
<include name="System.Data.dll"/>
<include name="System.Drawing.dll"/>
</references>
</csc>
</target>
<target name="package">
<copy todir="${package.src.dir}/NUnitFramework/tests">
<fileset>
<patternset refid="source-files"/>
<patternset refid="resource-files"/>
<include name="nunit.framework.tests.build"/>
</fileset>
</copy>
</target>
</project>
--------------080909060205030508000104
Content-Type: text/plain; x-mac-type="0"; x-mac-creator="0";
name="NullableTypesTests.cs"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="NullableTypesTests.cs"
using System;
namespace NUnit.Framework.Tests
{
#if (NET_2_0 && !MONO)
[TestFixture, Category("Generics")]
public class NullableTypesTests
{
[Test]
public void CanTestForNull()
{
int? nullInt = null;
int? five = 5;
Assert.IsNull(nullInt);
Assert.IsNotNull(five);
Assert.That(nullInt, Is.Null);
Assert.That(five, Is.Not.Null);
}
[Test]
public void CanCompareNullableInts()
{
int? five = 5;
int? answer = 2 + 3;
Assert.AreEqual(five, answer);
Assert.AreEqual(five, 5);
Assert.AreEqual(5, five);
Assert.That(five, Is.EqualTo(answer));
Assert.That(five, Is.EqualTo(5));
Assert.That(5, Is.EqualTo(five));
Assert.Greater(five, 3);
Assert.GreaterOrEqual(five, 5);
Assert.Less(3, five);
Assert.LessOrEqual(5, five);
Assert.That(five, Is.GreaterThan(3));
Assert.That(five, Is.GreaterThanOrEqualTo(5));
Assert.That(3, Is.LessThan(five));
Assert.That(5, Is.LessThanOrEqualTo(five));
}
[Test]
public void CanCompareNullableDoubles()
{
double? five = 5.0;
double? answer = 2.0 + 3.0;
Assert.AreEqual(five, answer);
Assert.AreEqual(five, 5.0);
Assert.AreEqual(5.0, five);
Assert.That(five, Is.EqualTo(answer));
Assert.That(five, Is.EqualTo(5.0));
Assert.That(5.0, Is.EqualTo(five));
Assert.Greater(five, 3.0);
Assert.GreaterOrEqual(five, 5.0);
Assert.Less(3.0, five);
Assert.LessOrEqual(5.0, five);
Assert.That(five, Is.GreaterThan(3.0));
Assert.That(five, Is.GreaterThanOrEqualTo(5.0));
Assert.That(3.0, Is.LessThan(five));
Assert.That(5.0, Is.LessThanOrEqualTo(five));
}
[Test]
public void CanTestForNaN()
{
double? anNaN = Double.NaN;
Assert.IsNaN(anNaN);
Assert.That(anNaN, Is.NaN);
}
[Test]
public void CanCompareNullableDecimals()
{
decimal? five = 5m;
decimal? answer = 2m + 3m;
Assert.AreEqual(five, answer);
Assert.AreEqual(five, 5m);
Assert.AreEqual(5m, five);
Assert.That(five, Is.EqualTo(answer));
Assert.That(five, Is.EqualTo(5m));
Assert.That(5m, Is.EqualTo(five));
Assert.Greater(five, 3m);
Assert.GreaterOrEqual(five, 5m);
Assert.Less(3m, five);
Assert.LessOrEqual(5m, five);
Assert.That(five, Is.GreaterThan(3m));
Assert.That(five, Is.GreaterThanOrEqualTo(5m));
Assert.That(3m, Is.LessThan(five));
Assert.That(5m, Is.LessThanOrEqualTo(five));
}
[Test]
public void CanCompareWithTolerance()
{
double? five = 5.0;
Assert.AreEqual(5.0000001, five, .0001);
Assert.That( five, Is.EqualTo(5.0000001).Within(.0001));
float? three = 3.0f;
Assert.AreEqual(3.00001f, three, .001);
Assert.That( three, Is.EqualTo(3.00001f).Within(.001));
}
private enum Colors
{
Red,
Blue,
Green
}
[Test]
public void CanCompareNullableEnums()
{
Colors? color = Colors.Red;
Colors? other = Colors.Red;
Assert.AreEqual(color, other);
Assert.AreEqual(color, Colors.Red);
Assert.AreEqual(Colors.Red, color);
}
[Test]
public void CanCompareNullableMixedNumerics()
{
int? int5 = 5;
double? double5 = 5.0;
decimal? decimal5 = 5.00m;
Assert.AreEqual(int5, double5);
Assert.AreEqual(int5, decimal5);
Assert.AreEqual(double5, int5);
Assert.AreEqual(double5, decimal5);
Assert.AreEqual(decimal5, int5);
Assert.AreEqual(decimal5, double5);
Assert.That(int5, Is.EqualTo(double5));
Assert.That(int5, Is.EqualTo(decimal5));
Assert.That(double5, Is.EqualTo(int5));
Assert.That(double5, Is.EqualTo(decimal5));
Assert.That(decimal5, Is.EqualTo(int5));
Assert.That(decimal5, Is.EqualTo(double5));
Assert.AreEqual(5, double5);
Assert.AreEqual(5, decimal5);
Assert.AreEqual(5.0, int5);
Assert.AreEqual(5.0, decimal5);
Assert.AreEqual(5m, int5);
Assert.AreEqual(5m, double5);
Assert.That(5, Is.EqualTo(double5));
Assert.That(5, Is.EqualTo(decimal5));
Assert.That(5.0, Is.EqualTo(int5));
Assert.That(5.0, Is.EqualTo(decimal5));
Assert.That(5m, Is.EqualTo(int5));
Assert.That(5m, Is.EqualTo(double5));
Assert.AreEqual(double5, 5);
Assert.AreEqual(decimal5, 5);
Assert.AreEqual(int5, 5.0);
Assert.AreEqual(decimal5, 5.0);
Assert.AreEqual(int5, 5m);
Assert.AreEqual(double5, 5m);
Assert.That(double5, Is.EqualTo(5));
Assert.That(decimal5, Is.EqualTo(5));
Assert.That(int5, Is.EqualTo(5.0));
Assert.That(decimal5, Is.EqualTo(5.0));
Assert.That(int5, Is.EqualTo(5m));
Assert.That(double5, Is.EqualTo(5m));
Assert.Greater(int5, 3.0);
Assert.Greater(int5, 3m);
Assert.Greater(double5, 3);
Assert.Greater(double5, 3m);
Assert.Greater(decimal5, 3);
Assert.Greater(decimal5, 3.0);
Assert.That(int5, Is.GreaterThan(3.0));
Assert.That(int5, Is.GreaterThan(3m));
Assert.That(double5, Is.GreaterThan(3));
Assert.That(double5, Is.GreaterThan(3m));
Assert.That(decimal5, Is.GreaterThan(3));
Assert.That(decimal5, Is.GreaterThan(3.0));
Assert.Less(3.0, int5);
Assert.Less(3m, int5);
Assert.Less(3, double5);
Assert.Less(3m, double5);
Assert.Less(3, decimal5);
Assert.Less(3.0, decimal5);
Assert.That(3.0, Is.LessThan(int5));
Assert.That(3m, Is.LessThan(int5));
Assert.That(3, Is.LessThan(double5));
Assert.That(3m, Is.LessThan(double5));
Assert.That(3, Is.LessThan(decimal5));
Assert.That(3.0, Is.LessThan(decimal5));
}
private struct MyStruct
{
int i;
string s;
public MyStruct(int i, string s)
{
this.i = i;
this.s = s;
}
}
[Test]
public void CanCompareNullableStructs()
{
MyStruct struct1 = new MyStruct(5, "Hello");
MyStruct struct2 = new MyStruct(5, "Hello");
Nullable<MyStruct> one = new MyStruct(5, "Hello");
Nullable<MyStruct> two = new MyStruct(5, "Hello");
Assert.AreEqual(struct1, struct2); // Control
Assert.AreEqual(one, two);
Assert.AreEqual(one, struct1);
Assert.AreEqual(struct2, two);
}
}
#endif
}
--------------080909060205030508000104
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
--------------080909060205030508000104
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
nunit-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/nunit-developer
--------------080909060205030508000104--