<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProductVersion>8.0.50727</ProductVersion>
    <SchemaVersion>2.0</SchemaVersion>
    <ProjectGuid>{E8C995C3-FF81-491B-A3B7-9D7C753BDDC3}</ProjectGuid>
    <OutputType>Library</OutputType>
    <AssemblyName>vs2008-stomp-test</AssemblyName>
    <RootNamespace>Apache.NMS.Stomp.Test</RootNamespace>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>bin\Debug</OutputPath>
    <DefineConstants>DEBUG</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <ConsolePause>false</ConsolePause>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <DebugType>none</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>bin\Release</OutputPath>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <ConsolePause>false</ConsolePause>
  </PropertyGroup>
  <ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Xml" />
    <Reference Include="System.Data" />
    <Reference Include="nunit.framework, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>lib\NUnit\mono-2.0\nunit.framework.dll</HintPath>
    </Reference>
    <Reference Include="nunit.framework.extensions, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>lib\NUnit\mono-2.0\nunit.framework.extensions.dll</HintPath>
    </Reference>
    <Reference Include="Apache.NMS.Test, Version=1.3.0.1809, Culture=neutral, PublicKeyToken=82756feee3957618">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>lib\Apache.NMS\mono-2.0\Apache.NMS.Test.dll</HintPath>
    </Reference>
    <Reference Include="Apache.NMS, Version=1.3.0.1809, Culture=neutral, PublicKeyToken=82756feee3957618">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>lib\Apache.NMS\mono-2.0\Apache.NMS.dll</HintPath>
    </Reference>
  </ItemGroup>
  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
  <ItemGroup>
    <ProjectReference Include="vs2008-stomp.csproj">
      <Project>{AA51947C-1370-44DC-8692-1C8EFC5945F7}</Project>
      <Name>vs2008-stomp</Name>
    </ProjectReference>
  </ItemGroup>
  <ItemGroup>
    <None Include="nmsprovider-test.config" />
    <None Include="LICENSE.txt" />
    <None Include="keyfile\NMSKey.snk" />
    <None Include="Apache.NMS.Stomp.Test.nunit" />
  </ItemGroup>
  <ProjectExtensions>
    <MonoDevelop>
      <Properties>
        <Policies>
          <TextStylePolicy FileWidth="120" RemoveTrailingWhitespace="True" inheritsSet="VisualStudio" inheritsScope="text/plain" />
          <StandardHeader Text="/*&#xA; * Licensed to the Apache Software Foundation (ASF) under one or more&#xA; * contributor license agreements.  See the NOTICE file distributed with&#xA; * this work for additional information regarding copyright ownership.&#xA; * The ASF licenses this file to You under the Apache License, Version 2.0&#xA; * (the &quot;License&quot;); you may not use this file except in compliance with&#xA; * the License.  You may obtain a copy of the License at&#xA; *&#xA; *     http://www.apache.org/licenses/LICENSE-2.0&#xA; *&#xA; * Unless required by applicable law or agreed to in writing, software&#xA; * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&#xA; * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&#xA; * See the License for the specific language governing permissions and&#xA; * limitations under the License.&#xA; */&#xA;" inheritsSet="MITX11License" />
        </Policies>
      </Properties>
    </MonoDevelop>
  </ProjectExtensions>
  <ItemGroup>
    <Compile Include="src\test\csharp\StompHelperTest.cs" />
    <Compile Include="src\test\csharp\AsyncConsumeTest.cs" />
    <Compile Include="src\test\csharp\BadConsumeTest.cs" />
    <Compile Include="src\test\csharp\BytesMessageTest.cs" />
    <Compile Include="src\test\csharp\ConnectionTest.cs" />
    <Compile Include="src\test\csharp\MessageTest.cs" />
    <Compile Include="src\test\csharp\ProducerTest.cs" />
    <Compile Include="src\test\csharp\TextMessageTest.cs" />
    <Compile Include="src\test\csharp\ConsumerTest.cs" />
    <Compile Include="src\test\csharp\DurableTest.cs" />
    <Compile Include="src\test\csharp\NMSPropertyTest.cs" />
    <Compile Include="src\test\csharp\TempDestinationTest.cs" />
    <Compile Include="src\test\csharp\TransactionTest.cs" />
    <Compile Include="src\test\csharp\StompRedeliveryPolicyTest.cs" />
    <Compile Include="src\test\csharp\IndividualAckTest.cs" />
    <Compile Include="src\test\csharp\ExclusiveConsumerTest.cs" />
    <Compile Include="src\test\csharp\Util\MessageDispatchChannelTest.cs" />
    <Compile Include="src\test\csharp\MessageListenerRedeliveryTest.cs" />
    <Compile Include="src\test\csharp\StompTopicTransactionTest.cs" />
    <Compile Include="src\test\csharp\StompTransactionTestSupport.cs" />
    <Compile Include="src\test\csharp\StompQueueTransactionTest.cs" />
    <Compile Include="src\test\csharp\Commands\BytesMessageTest.cs" />
    <Compile Include="src\test\csharp\Commands\CommandTest.cs" />
    <Compile Include="src\test\csharp\Commands\MessageTest.cs" />
    <Compile Include="src\test\csharp\Commands\TextMessageTest.cs" />
    <Compile Include="src\test\csharp\NMSConnectionFactoryTest.cs" />
    <Compile Include="src\test\csharp\Threads\DedicatedTaskRunnerTest.cs" />
    <Compile Include="src\test\csharp\Commands\MapMessageTest.cs" />
    <Compile Include="src\test\csharp\Protocol\XmlPrimitiveMapMarshalerTest.cs" />
    <Compile Include="src\test\csharp\MapMessageTest.cs" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="src\test\csharp\Protocol\" />
  </ItemGroup>
</Project>