diff --git a/ConventionTests.sln b/ConventionTests.sln
index c497571..a4cc3ee 100644
--- a/ConventionTests.sln
+++ b/ConventionTests.sln
@@ -1,11 +1,12 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
-VisualStudioVersion = 14.0.22823.1
+VisualStudioVersion = 14.0.24720.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{AF9054EE-FE89-47A4-9156-BE54A837F2F7}"
ProjectSection(SolutionItems) = preProject
appveyor.yml = appveyor.yml
+ GitVersionConfig.yaml = GitVersionConfig.yaml
README.md = README.md
EndProjectSection
EndProject
diff --git a/ConventionTests.sln.DotSettings b/ConventionTests.sln.DotSettings
index bcc6c47..5be309a 100644
--- a/ConventionTests.sln.DotSettings
+++ b/ConventionTests.sln.DotSettings
@@ -10,5 +10,6 @@
MQ
<Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" />
<Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" />
+ True
True
True
\ No newline at end of file
diff --git a/GitVersionConfig.yaml b/GitVersionConfig.yaml
index 995ac05..0d06d01 100644
--- a/GitVersionConfig.yaml
+++ b/GitVersionConfig.yaml
@@ -1 +1,4 @@
-next-version: 2.3.0
\ No newline at end of file
+next-version: 3.0.0
+branches:
+ master:
+ tag: beta
\ No newline at end of file
diff --git a/Samples/SampleApp.Tests/ProjectConfigurationTests.cs b/Samples/SampleApp.Tests/ProjectConfigurationTests.cs
index 1564718..5197bf1 100644
--- a/Samples/SampleApp.Tests/ProjectConfigurationTests.cs
+++ b/Samples/SampleApp.Tests/ProjectConfigurationTests.cs
@@ -2,54 +2,51 @@
{
using System;
using System.IO;
- using System.Xml.Linq;
- using NSubstitute;
using NUnit.Framework;
- using SampleApp.Domain;
- using SampleApp.Dtos;
using TestStack.ConventionTests;
using TestStack.ConventionTests.ConventionData;
using TestStack.ConventionTests.Conventions;
- using TestStack.ConventionTests.Internal;
[TestFixture]
public class ProjectConfigurationTests
{
- IProjectLocator projectLocator;
- IProjectProvider projectProvider;
+ string projectLocation;
- [SetUp]
- public void Setup()
+ public ProjectConfigurationTests()
{
- projectLocator = Substitute.For();
- projectProvider = Substitute.For();
- projectProvider
- .LoadProjectDocument(Arg.Any())
- .Returns(XDocument.Parse(File.ReadAllText(Path.GetFullPath(Path.Combine(Environment.CurrentDirectory, @"..\..\..\SampleApp\SampleApp.csproj")))));
+ projectLocation = Path.GetFullPath(Path.Combine(Environment.CurrentDirectory, @"..\..\..\SampleApp\SampleApp.csproj"));
}
[Test]
public void debug_configurations_should_have_debug_type_pdb_only()
{
- Convention.Is(new ConfigurationHasSpecificValue(ConfigurationType.Debug, "DebugType", "full"), new ProjectPropertyGroups(typeof(DomainClass).Assembly, projectProvider, projectLocator));
+ var configurationHasSpecificValue = new ConfigurationHasSpecificValue(ConfigurationType.Debug, "DebugType", "full");
+ var projectPropertyGroups = new ProjectPropertyGroups(projectLocation);
+ Convention.Is(configurationHasSpecificValue, projectPropertyGroups);
}
[Test]
public void debug_configurations_should_have_optimize_false()
{
- Convention.Is(new ConfigurationHasSpecificValue(ConfigurationType.Debug, "Optimize", "false"), new ProjectPropertyGroups(typeof(DomainClass).Assembly, projectProvider, projectLocator));
+ var configurationHasSpecificValue = new ConfigurationHasSpecificValue(ConfigurationType.Debug, "Optimize", "false");
+ var projectPropertyGroups = new ProjectPropertyGroups(projectLocation);
+ Convention.Is(configurationHasSpecificValue, projectPropertyGroups);
}
[Test]
public void release_configurations_should_have_debug_type_pdb_only()
{
- Convention.Is(new ConfigurationHasSpecificValue(ConfigurationType.Release, "DebugType", "pdbonly"), new ProjectPropertyGroups(typeof(DomainClass).Assembly, projectProvider, projectLocator));
+ var configurationHasSpecificValue = new ConfigurationHasSpecificValue(ConfigurationType.Release, "DebugType", "pdbonly");
+ var projectPropertyGroups = new ProjectPropertyGroups(projectLocation);
+ Convention.Is(configurationHasSpecificValue, projectPropertyGroups);
}
[Test]
public void release_configurations_should_have_optimize_true()
{
- Convention.Is(new ConfigurationHasSpecificValue(ConfigurationType.Release, "Optimize", "true"), new ProjectPropertyGroups(typeof(DomainClass).Assembly, projectProvider, projectLocator));
+ var configurationHasSpecificValue = new ConfigurationHasSpecificValue(ConfigurationType.Release, "Optimize", "true");
+ var projectPropertyGroups = new ProjectPropertyGroups(projectLocation);
+ Convention.Is(configurationHasSpecificValue, projectPropertyGroups);
}
}
}
\ No newline at end of file
diff --git a/Samples/SampleApp.Tests/SqlScriptTests.cs b/Samples/SampleApp.Tests/SqlScriptTests.cs
index c86a91b..b9319df 100644
--- a/Samples/SampleApp.Tests/SqlScriptTests.cs
+++ b/Samples/SampleApp.Tests/SqlScriptTests.cs
@@ -1,5 +1,7 @@
namespace SampleApp.Tests
{
+ using System;
+ using System.IO;
using NUnit.Framework;
using SampleApp.Domain;
using TestStack.ConventionTests;
@@ -9,11 +11,17 @@
[TestFixture]
public class SqlScriptTests
{
+ string projectLocation;
+
+ public SqlScriptTests()
+ {
+ projectLocation = Path.GetFullPath(Path.Combine(Environment.CurrentDirectory, @"..\..\..\SampleApp\SampleApp.csproj"));
+ }
+
[Test]
- [Explicit] // Only works when shadow copy disabled for tests
public void SqlScriptsShouldBeEmbeddedResources()
{
- Convention.Is(new FilesAreEmbeddedResources(".sql"), new ProjectFileItems(typeof(DomainClass).Assembly));
+ Convention.Is(new FilesAreEmbeddedResources(".sql"), new ProjectFileItems(projectLocation));
}
}
}
diff --git a/TestStack.ConventionTests.Tests/ConventionAssertionClassTests.cs b/TestStack.ConventionTests.Tests/ConventionAssertionClassTests.cs
deleted file mode 100644
index 36d9d01..0000000
--- a/TestStack.ConventionTests.Tests/ConventionAssertionClassTests.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-namespace TestStack.ConventionTests.Tests
-{
- using ApprovalTests.Reporters;
- using NUnit.Framework;
-
- [TestFixture]
- [UseReporter(typeof(QuietReporter))] //NOTE: Can we take care of this in IsWithApprovedExceptions?
- public class ConventionAssertionClassTests
- {
- [Test]
- public void approval_mismatch()
- {
- //NOTE Do not approve any changes to this test
- var ex = Assert.Throws(() => Convention.IsWithApprovedExeptions(new FailingConvention(), new FakeData()));
-
- StringAssert.Contains("Approved exceptions for convention differs", ex.Message);
- StringAssert.Contains("Failed Approval: Received file ", ex.Message);
- StringAssert.Contains("does not match approved file", ex.Message);
- }
-
- class FakeData : IConventionData
- {
- public string Description { get { return "Fake data"; } }
-
- public bool HasData { get { return true; } }
- }
-
- class FailingConvention : IConvention
- {
- public void Execute(FakeData data, IConventionResultContext result)
- {
- result.Is("Header", new[] {"Different"});
- }
-
- public string ConventionReason
- {
- get { return "Because fail.."; }
- }
- }
- }
-}
\ No newline at end of file
diff --git a/TestStack.ConventionTests.Tests/ConventionData/ProjectPropertyGroupsTests.cs b/TestStack.ConventionTests.Tests/ConventionData/ProjectPropertyGroupsTests.cs
index 6843a8d..7d899e1 100644
--- a/TestStack.ConventionTests.Tests/ConventionData/ProjectPropertyGroupsTests.cs
+++ b/TestStack.ConventionTests.Tests/ConventionData/ProjectPropertyGroupsTests.cs
@@ -23,10 +23,10 @@ public void Setup()
public void can_parse_a_normal_project_file_to_read_global_debug_and_release_property_groups()
{
projectProvider
- .LoadProjectDocument(Arg.Any())
+ .LoadProjectDocument()
.Returns(XDocument.Parse(Resources.ProjectFileWithBinReference));
- var projectGroups = new ProjectPropertyGroups(typeof(ProjectPropertyGroups).Assembly, projectProvider, Substitute.For());
+ var projectGroups = new ProjectPropertyGroups(projectProvider);
Assert.That(projectGroups.PropertyGroups.Length, Is.EqualTo(3));
Assert.That(projectGroups.PropertyGroups.Any(item => item.Debug));
diff --git a/TestStack.ConventionTests.Tests/CsvReportTests.cs b/TestStack.ConventionTests.Tests/CsvReportTests.cs
index e9649c3..95d7064 100644
--- a/TestStack.ConventionTests.Tests/CsvReportTests.cs
+++ b/TestStack.ConventionTests.Tests/CsvReportTests.cs
@@ -1,14 +1,13 @@
namespace TestStack.ConventionTests.Tests
{
using System.Linq;
- using ApprovalTests.Reporters;
using NUnit.Framework;
+ using Shouldly;
using TestAssembly.Collections;
using TestStack.ConventionTests.ConventionData;
using TestStack.ConventionTests.Reporting;
using TestStack.ConventionTests.Tests.TestConventions;
-
- [UseReporter(typeof(DiffReporter))]
+
public class CsvReportTests
{
[Test]
@@ -17,9 +16,11 @@ public void Can_run_convention_with_simple_reporter()
var typesToVerify = typeof (Leaf).Assembly.GetExportedTypes()
.Where(t => t.Namespace == typeof (Leaf).Namespace);
- Convention.IsWithApprovedExeptions(new CollectionsRelationsConvention(),
+ var failures = Convention.GetFailures(new CollectionsRelationsConvention(),
new Types(typesToVerify, "Entities"),
new CsvReporter());
+
+ failures.ShouldMatchApproved();
}
}
}
\ No newline at end of file
diff --git a/TestStack.ConventionTests.Tests/MvcConventions.cs b/TestStack.ConventionTests.Tests/MvcConventions.cs
index 261ae8c..41cbfdf 100644
--- a/TestStack.ConventionTests.Tests/MvcConventions.cs
+++ b/TestStack.ConventionTests.Tests/MvcConventions.cs
@@ -1,14 +1,12 @@
namespace TestStack.ConventionTests.Tests
{
- using ApprovalTests;
- using ApprovalTests.Reporters;
using NUnit.Framework;
+ using Shouldly;
using TestAssembly.Controllers;
using TestStack.ConventionTests.ConventionData;
using TestStack.ConventionTests.Conventions;
[TestFixture]
- [UseReporter(typeof(DiffReporter))]
public class MvcConventions
{
[Test]
@@ -17,8 +15,9 @@ public void controller_conventions()
var types = Types.InAssemblyOf();
var convention = new MvcControllerNameAndBaseClassConvention();
- var ex = Assert.Throws(() => Convention.Is(convention, types));
- Approvals.Verify(ex.Message);
+ var failures = Convention.GetFailures(convention, types);
+
+ failures.ShouldMatchApproved();
}
[Test]
@@ -27,8 +26,9 @@ public void api_controller_conventions()
var types = Types.InAssemblyOf();
var convention = new ApiControllerNamingAndBaseClassConvention();
- var ex = Assert.Throws(() => Convention.Is(convention, types));
- Approvals.Verify(ex.Message);
+ var failures = Convention.GetFailures(convention, types);
+
+ failures.ShouldMatchApproved();
}
}
}
\ No newline at end of file
diff --git a/TestStack.ConventionTests.Tests/ProjectBasedConventions.all_configuration_groups_should_have_optimize_true_if_property_defined.approved.txt b/TestStack.ConventionTests.Tests/ProjectBasedConventions.all_configuration_groups_should_have_optimize_true_if_property_defined.approved.txt
index 183a444..096f871 100644
--- a/TestStack.ConventionTests.Tests/ProjectBasedConventions.all_configuration_groups_should_have_optimize_true_if_property_defined.approved.txt
+++ b/TestStack.ConventionTests.Tests/ProjectBasedConventions.all_configuration_groups_should_have_optimize_true_if_property_defined.approved.txt
@@ -1,4 +1,4 @@
-'Optimize property in Release|AnyCPU must have a value of true' for 'Project property groups in TestStack.ConventionTests.Tests'
---------------------------------------------------------------------------------------------------------------------------------
+'Optimize property in Release|AnyCPU must have a value of true' for 'Project property groups in ProjectName'
+------------------------------------------------------------------------------------------------------------
Optimize:false
diff --git a/TestStack.ConventionTests.Tests/ProjectBasedConventions.all_configuration_groups_should_have_platform_AnyCPU.approved.txt b/TestStack.ConventionTests.Tests/ProjectBasedConventions.all_configuration_groups_should_have_platform_AnyCPU.approved.txt
index f8ebe7a..34f7c3e 100644
--- a/TestStack.ConventionTests.Tests/ProjectBasedConventions.all_configuration_groups_should_have_platform_AnyCPU.approved.txt
+++ b/TestStack.ConventionTests.Tests/ProjectBasedConventions.all_configuration_groups_should_have_platform_AnyCPU.approved.txt
@@ -1,4 +1,12 @@
-'Platform property in Release|x86 must have a value of AnyCPU' for 'Project property groups in TestStack.ConventionTests.Tests'
--------------------------------------------------------------------------------------------------------------------------------
+'Platform property in Global must have a value of AnyCPU' for 'Project property groups in ProjectName'
+------------------------------------------------------------------------------------------------------
+
+
+'Platform property in Release|AnyCPU must have a value of AnyCPU' for 'Project property groups in ProjectName'
+--------------------------------------------------------------------------------------------------------------
+
+
+'Platform property in Release|x86 must have a value of AnyCPU' for 'Project property groups in ProjectName'
+-----------------------------------------------------------------------------------------------------------
Platform:x86
diff --git a/TestStack.ConventionTests.Tests/ProjectBasedConventions.assemblies_referencing_bin_obj.approved.txt b/TestStack.ConventionTests.Tests/ProjectBasedConventions.assemblies_referencing_bin_obj.approved.txt
index 1e8871b..57b2b9c 100644
--- a/TestStack.ConventionTests.Tests/ProjectBasedConventions.assemblies_referencing_bin_obj.approved.txt
+++ b/TestStack.ConventionTests.Tests/ProjectBasedConventions.assemblies_referencing_bin_obj.approved.txt
@@ -1,4 +1,4 @@
-'Project must not reference dlls from bin or obj directories' for 'Project references in TestStack.ConventionTests.Tests'
--------------------------------------------------------------------------------------------------------------------------
+'Project must not reference dlls from bin or obj directories' for 'Project references in ProjectName'
+-----------------------------------------------------------------------------------------------------
bin\Debug\ApprovalTests.dll
diff --git a/TestStack.ConventionTests.Tests/ProjectBasedConventions.assemblies_referencing_bin_obj_with_approved_exceptions.approved.txt b/TestStack.ConventionTests.Tests/ProjectBasedConventions.assemblies_referencing_bin_obj_with_approved_exceptions.approved.txt
index 1e8871b..57b2b9c 100644
--- a/TestStack.ConventionTests.Tests/ProjectBasedConventions.assemblies_referencing_bin_obj_with_approved_exceptions.approved.txt
+++ b/TestStack.ConventionTests.Tests/ProjectBasedConventions.assemblies_referencing_bin_obj_with_approved_exceptions.approved.txt
@@ -1,4 +1,4 @@
-'Project must not reference dlls from bin or obj directories' for 'Project references in TestStack.ConventionTests.Tests'
--------------------------------------------------------------------------------------------------------------------------
+'Project must not reference dlls from bin or obj directories' for 'Project references in ProjectName'
+-----------------------------------------------------------------------------------------------------
bin\Debug\ApprovalTests.dll
diff --git a/TestStack.ConventionTests.Tests/ProjectBasedConventions.cs b/TestStack.ConventionTests.Tests/ProjectBasedConventions.cs
index b2734fd..dd2c76e 100644
--- a/TestStack.ConventionTests.Tests/ProjectBasedConventions.cs
+++ b/TestStack.ConventionTests.Tests/ProjectBasedConventions.cs
@@ -1,17 +1,15 @@
namespace TestStack.ConventionTests.Tests
{
using System.Xml.Linq;
- using ApprovalTests;
- using ApprovalTests.Reporters;
using NSubstitute;
using NUnit.Framework;
+ using Shouldly;
using TestStack.ConventionTests.ConventionData;
using TestStack.ConventionTests.Conventions;
using TestStack.ConventionTests.Internal;
using TestStack.ConventionTests.Tests.Properties;
[TestFixture]
- [UseReporter(typeof(DiffReporter))]
public class ProjectBasedConventions
{
IProjectProvider projectProvider;
@@ -20,107 +18,98 @@ public class ProjectBasedConventions
public void Setup()
{
projectProvider = Substitute.For();
+ projectProvider.GetName().Returns("ProjectName");
}
[Test]
public void assemblies_referencing_bin_obj()
{
projectProvider
- .LoadProjectDocument(Arg.Any())
+ .LoadProjectDocument()
.Returns(XDocument.Parse(Resources.ProjectFileWithBinReference));
-
- var projectLocator = Substitute.For();
- var project = new ProjectReferences(typeof(ProjectBasedConventions).Assembly, projectProvider, projectLocator);
- var ex = Assert.Throws(() => Convention.Is(new ProjectDoesNotReferenceDllsFromBinOrObjDirectories(), project));
-
- Approvals.Verify(ex.Message);
+
+ var project = new ProjectReferences(projectProvider);
+ var failures = Convention.GetFailures(new ProjectDoesNotReferenceDllsFromBinOrObjDirectories(), project);
+
+ failures.ShouldMatchApproved();
}
[Test]
public void assemblies_referencing_bin_obj_with_approved_exceptions()
{
projectProvider
- .LoadProjectDocument(Arg.Any())
+ .LoadProjectDocument()
.Returns(XDocument.Parse(Resources.ProjectFileWithBinReference));
+ var project = new ProjectReferences(projectProvider);
+ var failures = Convention.GetFailures(new ProjectDoesNotReferenceDllsFromBinOrObjDirectories(), project);
- var projectLocator = Substitute.For();
- var project = new ProjectReferences(typeof(ProjectBasedConventions).Assembly, projectProvider, projectLocator);
- Convention.IsWithApprovedExeptions(new ProjectDoesNotReferenceDllsFromBinOrObjDirectories(), project);
+ failures.ShouldMatchApproved();
}
[Test]
public void scripts_not_embedded_resources()
{
projectProvider
- .LoadProjectDocument(Arg.Any())
+ .LoadProjectDocument()
.Returns(XDocument.Parse(Resources.ProjectFileWithInvalidSqlScriptFile));
+
+ var project = new ProjectFileItems(projectProvider);
+ var failures = Convention.GetFailures(new FilesAreEmbeddedResources(".sql"), project);
- var projectLocator = Substitute.For();
- var project = new ProjectFileItems(typeof (ProjectBasedConventions).Assembly, projectProvider, projectLocator);
- var ex = Assert.Throws(() => Convention.Is(new FilesAreEmbeddedResources(".sql"), project));
-
- Approvals.Verify(ex.Message);
+ failures.ShouldMatchApproved();
}
[Test]
public void scripts_not_embedded_resources_with_approved_exceptions()
{
- var projectLocator = Substitute.For();
- var project = new ProjectFileItems(typeof (ProjectBasedConventions).Assembly, projectProvider, projectLocator);
+ var project = new ProjectFileItems(projectProvider);
projectProvider
- .LoadProjectDocument(Arg.Any())
+ .LoadProjectDocument()
.Returns(XDocument.Parse(Resources.ProjectFileWithInvalidSqlScriptFile));
- Convention.IsWithApprovedExeptions(new FilesAreEmbeddedResources(".sql"), project);
+ Convention.GetFailures(new FilesAreEmbeddedResources(".sql"), project);
}
[Test]
public void release_debug_type_should_be_pdb_only()
{
projectProvider
- .LoadProjectDocument(Arg.Any())
+ .LoadProjectDocument()
.Returns(XDocument.Parse(Resources.ProjectFileWithReleaseDebugTypeFull));
- var projectLocator = Substitute.For();
- var propertyGroups = new ProjectPropertyGroups(typeof(ProjectBasedConventions).Assembly, projectProvider, projectLocator);
- var ex =
- Assert.Throws(
- () => Convention.Is(new ConfigurationHasSpecificValue(ConfigurationType.Release, "DebugType", "pdbonly"), propertyGroups));
+ var propertyGroups = new ProjectPropertyGroups(projectProvider);
+ var failures = Convention.GetFailures(new ConfigurationHasSpecificValue(ConfigurationType.Release, "DebugType", "pdbonly"), propertyGroups);
- Approvals.Verify(ex.Message);
+ failures.ShouldMatchApproved();
}
[Test]
public void all_configuration_groups_should_have_platform_AnyCPU()
{
projectProvider
- .LoadProjectDocument(Arg.Any())
+ .LoadProjectDocument()
.Returns(XDocument.Parse(Resources.ProjectFileWithReleaseDebugTypeFull));
- var projectLocator = Substitute.For();
- var propertyGroups = new ProjectPropertyGroups(typeof(ProjectBasedConventions).Assembly, projectProvider, projectLocator);
- var ex =
- Assert.Throws(
- () => Convention.Is(new ConfigurationHasSpecificValue(ConfigurationType.All, "Platform", "AnyCPU"), propertyGroups));
+ var propertyGroups = new ProjectPropertyGroups(projectProvider);
+ var failures = Convention.GetFailures(new ConfigurationHasSpecificValue(ConfigurationType.All, "Platform", "AnyCPU"), propertyGroups);
- Approvals.Verify(ex.Message);
+ failures.ShouldMatchApproved();
}
[Test]
public void all_configuration_groups_should_have_optimize_true_if_property_defined()
{
projectProvider
- .LoadProjectDocument(Arg.Any())
+ .LoadProjectDocument()
.Returns(XDocument.Parse(Resources.ProjectFileWithReleaseDebugTypeFull));
- var projectLocator = Substitute.For();
- var propertyGroups = new ProjectPropertyGroups(typeof(ProjectBasedConventions).Assembly, projectProvider, projectLocator);
- var ex =
- Assert.Throws(
- () => Convention.Is(new ConfigurationHasSpecificValue(ConfigurationType.All, "Optimize", "true"), propertyGroups));
+ var propertyGroups = new ProjectPropertyGroups(projectProvider);
+ var failures =
+ Convention.GetFailures(new ConfigurationHasSpecificValue(ConfigurationType.All, "Optimize", "true"),
+ propertyGroups);
- Approvals.Verify(ex.Message);
+ failures.ShouldMatchApproved();
}
}
}
\ No newline at end of file
diff --git a/TestStack.ConventionTests.Tests/ProjectBasedConventions.release_debug_type_should_be_pdb_only.approved.txt b/TestStack.ConventionTests.Tests/ProjectBasedConventions.release_debug_type_should_be_pdb_only.approved.txt
index 525c95e..132cc84 100644
--- a/TestStack.ConventionTests.Tests/ProjectBasedConventions.release_debug_type_should_be_pdb_only.approved.txt
+++ b/TestStack.ConventionTests.Tests/ProjectBasedConventions.release_debug_type_should_be_pdb_only.approved.txt
@@ -1,9 +1,9 @@
-'DebugType property in Release|AnyCPU must have a value of pdbonly' for 'Project property groups in TestStack.ConventionTests.Tests'
-------------------------------------------------------------------------------------------------------------------------------------
+'DebugType property in Release|AnyCPU must have a value of pdbonly' for 'Project property groups in ProjectName'
+----------------------------------------------------------------------------------------------------------------
DebugType:full
-'DebugType property in Release|x86 must have a value of pdbonly' for 'Project property groups in TestStack.ConventionTests.Tests'
----------------------------------------------------------------------------------------------------------------------------------
+'DebugType property in Release|x86 must have a value of pdbonly' for 'Project property groups in ProjectName'
+-------------------------------------------------------------------------------------------------------------
DebugType:full
diff --git a/TestStack.ConventionTests.Tests/ProjectBasedConventions.scripts_not_embedded_resources.approved.txt b/TestStack.ConventionTests.Tests/ProjectBasedConventions.scripts_not_embedded_resources.approved.txt
index 3202fa8..2b1d9bb 100644
--- a/TestStack.ConventionTests.Tests/ProjectBasedConventions.scripts_not_embedded_resources.approved.txt
+++ b/TestStack.ConventionTests.Tests/ProjectBasedConventions.scripts_not_embedded_resources.approved.txt
@@ -1,4 +1,4 @@
-'.sql Files must be embedded resources' for 'Project file items in TestStack.ConventionTests.Tests'
----------------------------------------------------------------------------------------------------
+'.sql Files must be embedded resources' for 'Project file items in ProjectName'
+-------------------------------------------------------------------------------
Scripts\Script2.sql
diff --git a/TestStack.ConventionTests.Tests/TestStack.ConventionTests.Tests.csproj b/TestStack.ConventionTests.Tests/TestStack.ConventionTests.Tests.csproj
index fd63170..842230f 100644
--- a/TestStack.ConventionTests.Tests/TestStack.ConventionTests.Tests.csproj
+++ b/TestStack.ConventionTests.Tests/TestStack.ConventionTests.Tests.csproj
@@ -31,12 +31,6 @@
4
-
- ..\packages\ApprovalTests.3.0.01\lib\net40\ApprovalTests.dll
-
-
- ..\packages\ApprovalUtilities.3.0.01\lib\net35\ApprovalUtilities.dll
-
..\packages\Autofac.3.1.1\lib\net40\Autofac.dll
@@ -46,6 +40,10 @@
..\packages\NUnit.2.6.2\lib\nunit.framework.dll
+
+ ..\packages\Shouldly.2.7.0-beta0002\lib\net40\Shouldly.dll
+ True
+
@@ -61,7 +59,6 @@
-
diff --git a/TestStack.ConventionTests.Tests/TypeBasedConventions.cs b/TestStack.ConventionTests.Tests/TypeBasedConventions.cs
index f78eda9..5e30e75 100644
--- a/TestStack.ConventionTests.Tests/TypeBasedConventions.cs
+++ b/TestStack.ConventionTests.Tests/TypeBasedConventions.cs
@@ -1,14 +1,12 @@
namespace TestStack.ConventionTests.Tests
{
- using ApprovalTests;
- using ApprovalTests.Reporters;
using NUnit.Framework;
+ using Shouldly;
using TestAssembly;
using TestStack.ConventionTests.ConventionData;
using TestStack.ConventionTests.Conventions;
[TestFixture]
- [UseReporter(typeof (DiffReporter))]
public class TypeBasedConventions
{
readonly Types nhibernateEntities;
@@ -22,29 +20,33 @@ public TypeBasedConventions()
[Test]
public void all_classes_have_default_constructor()
{
- var ex = Assert.Throws(()=>Convention.Is(new AllClassesHaveDefaultConstructor(), nhibernateEntities));
+ var failures = Convention.GetFailures(new AllClassesHaveDefaultConstructor(), nhibernateEntities);
- Approvals.Verify(ex.Message);
+ failures.ShouldMatchApproved();
}
[Test]
public void all_classes_have_default_constructor_wth_approved_exceptions()
{
- Convention.IsWithApprovedExeptions(new AllClassesHaveDefaultConstructor(), nhibernateEntities);
+ var failures = Convention.GetFailures(new AllClassesHaveDefaultConstructor(), nhibernateEntities);
+
+ failures.ShouldMatchApproved();
}
[Test]
public void all_methods_are_virtual()
{
- var ex = Assert.Throws(()=>Convention.Is(new AllMethodsAreVirtual(), nhibernateEntities));
+ var failures = Convention.GetFailures(new AllMethodsAreVirtual(), nhibernateEntities);
- Approvals.Verify(ex.Message);
+ failures.ShouldMatchApproved();
}
[Test]
public void all_methods_are_virtual_wth_approved_exceptions()
{
- Convention.IsWithApprovedExeptions(new AllMethodsAreVirtual(), nhibernateEntities);
+ var failures = Convention.GetFailures(new AllMethodsAreVirtual(), nhibernateEntities);
+
+ failures.ShouldMatchApproved();
}
[Test]
@@ -53,8 +55,9 @@ public void dtos_exists_in_dto_namespace()
var types = Types.InAssemblyOf();
var convention = new ClassTypeHasSpecificNamespace(t => t.Name.EndsWith("Dto"), "TestAssembly.Dtos", "Dto");
- var ex = Assert.Throws(() =>Convention.Is(convention, types));
- Approvals.Verify(ex.Message);
+ var failures = Convention.GetFailures(convention, types);
+
+ failures.ShouldMatchApproved();
}
[Test]
@@ -63,7 +66,7 @@ public void dtos_exists_in_dto_namespace_wth_approved_exceptions()
var types = Types.InAssemblyOf();
var convention = new ClassTypeHasSpecificNamespace(t => t.Name.EndsWith("Dto"), "TestAssembly.Dtos", "Dto");
- Convention.IsWithApprovedExeptions(convention, types);
+ Convention.GetFailures(convention, types);
}
}
}
diff --git a/TestStack.ConventionTests.Tests/packages.config b/TestStack.ConventionTests.Tests/packages.config
index 468ba84..0f0fc04 100644
--- a/TestStack.ConventionTests.Tests/packages.config
+++ b/TestStack.ConventionTests.Tests/packages.config
@@ -1,8 +1,7 @@
-
-
+
\ No newline at end of file
diff --git a/TestStack.ConventionTests/Convention.cs b/TestStack.ConventionTests/Convention.cs
index adf34cb..f9496e4 100644
--- a/TestStack.ConventionTests/Convention.cs
+++ b/TestStack.ConventionTests/Convention.cs
@@ -2,6 +2,7 @@
{
using System;
using System.Collections.Generic;
+ using System.Linq;
using System.Reflection;
using TestStack.ConventionTests.ConventionData;
using TestStack.ConventionTests.Internal;
@@ -10,7 +11,6 @@
public static class Convention
{
static IResultsProcessor[] defaultProcessors;
- static IResultsProcessor[] defaultApprovalProcessors;
static Convention()
{
@@ -32,26 +32,31 @@ public static void Is(IConvention convention, TDataSou
ITestResultProcessor resultProcessor = null)
where TDataSource : IConventionData
{
- if (defaultProcessors == null || defaultApprovalProcessors == null)
+ if (defaultProcessors == null)
Init(Assembly.GetCallingAssembly());
- Execute(convention, data, defaultProcessors, resultProcessor ?? new ConventionReportTextRenderer());
+
+ Execute(convention, data, defaultProcessors.Concat(new[] { new ThrowOnFailureResultsProcessor() }), resultProcessor ?? new ConventionReportTextRenderer());
}
///
- /// Verifies a convention, any exceptions are written to ApprovalTests to approve
+ /// Verifies a convention, returning the failures as a string instead of throwing an exception
+ ///
+ /// Allows you to approve or assert against the failures yourself
///
- /// Convention.IsWithApprovedExeptions(new SomeConvention(), Types.InAssemblyOf<SomeTypeOfMine>())
- public static void IsWithApprovedExeptions(IConvention convention, TDataSource data,
+ /// Convention.GetFailures(new SomeConvention(), Types.InAssemblyOf<SomeTypeOfMine>())
+ public static string GetFailures(IConvention convention, TDataSource data,
ITestResultProcessor resultProcessor = null)
where TDataSource : IConventionData
{
- if (defaultProcessors == null || defaultApprovalProcessors == null)
+ if (defaultProcessors == null)
Init(Assembly.GetCallingAssembly());
- Execute(convention, data, defaultApprovalProcessors, resultProcessor ?? new ConventionReportTextRenderer());
+ var captureFailuresProcessor = new CaptureFailuresProcessor();
+ Execute(convention, data, defaultProcessors.Concat(new [] { captureFailuresProcessor }), resultProcessor ?? new ConventionReportTextRenderer());
+ return captureFailuresProcessor.Failures;
}
static void Execute(IConvention convention, TDataSource data,
- IResultsProcessor[] processors, ITestResultProcessor resultProcessor)
+ IEnumerable processors, ITestResultProcessor resultProcessor)
where TDataSource : IConventionData
{
var dataDescription = string.Format("{0} in {1}", data.GetType().GetSentenceCaseName(), data.Description);
@@ -63,22 +68,17 @@ static void Init(Assembly assembly)
{
var customReporters = assembly.GetCustomAttributes(typeof(ConventionReporterAttribute), false);
- defaultProcessors = new IResultsProcessor[customReporters.Length + 2];
- defaultApprovalProcessors = new IResultsProcessor[customReporters.Length + 2];
+ defaultProcessors = new IResultsProcessor[customReporters.Length + 1];
for (var index = 0; index < customReporters.Length; index++)
{
var customReporter = (ConventionReporterAttribute)customReporters[index];
var resultsProcessor = (IResultsProcessor)Activator.CreateInstance(customReporter.ReporterType);
defaultProcessors[index] = resultsProcessor;
- defaultApprovalProcessors[index] = resultsProcessor;
}
var conventionReportTraceRenderer = new ConventionReportTraceRenderer();
- defaultProcessors[defaultProcessors.Length - 2] = conventionReportTraceRenderer;
- defaultApprovalProcessors[defaultProcessors.Length - 2] = conventionReportTraceRenderer;
- defaultProcessors[defaultProcessors.Length - 1] = new ThrowOnFailureResultsProcessor();
- defaultApprovalProcessors[defaultProcessors.Length - 1] = new ApproveResultsProcessor();
+ defaultProcessors[defaultProcessors.Length - 1] = conventionReportTraceRenderer;
}
}
}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/ConventionData/AbstractProjectData.cs b/TestStack.ConventionTests/ConventionData/AbstractProjectData.cs
index 071949a..7688060 100644
--- a/TestStack.ConventionTests/ConventionData/AbstractProjectData.cs
+++ b/TestStack.ConventionTests/ConventionData/AbstractProjectData.cs
@@ -1,33 +1,29 @@
namespace TestStack.ConventionTests.ConventionData
{
- using System.Reflection;
+ using System.IO;
using System.Xml.Linq;
using TestStack.ConventionTests.Internal;
public abstract class AbstractProjectData : IConventionData
{
- protected AbstractProjectData(Assembly assembly, IProjectProvider projectProvider = null, IProjectLocator projectLocator = null)
+ protected AbstractProjectData(IProjectProvider projectProvider)
{
- Assembly = assembly;
- ProjectProvider = projectProvider ?? new ProjectProvider();
- ProjectLocator = projectLocator ?? new AssemblyProjectLocator();
+ ProjectProvider = projectProvider;
+ }
+ protected AbstractProjectData(string projectFilePath)
+ {
+ ProjectProvider = new ProjectFileFromDiskProvider(projectFilePath);
}
-
- public Assembly Assembly { get; private set; }
-
- public IProjectLocator ProjectLocator { get; private set; }
public IProjectProvider ProjectProvider { get; private set; }
- public string Description { get { return Assembly.GetName().Name; } }
+ public string Description { get { return ProjectProvider.GetName(); } }
- public bool HasData { get { return ProjectLocator.ResolveProjectFilePath(Assembly) != null; } }
+ public bool HasData { get { return true; } }
protected XDocument GetProject()
{
- var location = ProjectLocator.ResolveProjectFilePath(Assembly);
- var project = ProjectProvider.LoadProjectDocument(location);
- return project;
+ return ProjectProvider.LoadProjectDocument();
}
}
}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/ConventionData/ProjectFileItems.cs b/TestStack.ConventionTests/ConventionData/ProjectFileItems.cs
index fdeb0f8..4d1665f 100644
--- a/TestStack.ConventionTests/ConventionData/ProjectFileItems.cs
+++ b/TestStack.ConventionTests/ConventionData/ProjectFileItems.cs
@@ -1,7 +1,6 @@
namespace TestStack.ConventionTests.ConventionData
{
using System.Linq;
- using System.Reflection;
using System.Xml.Linq;
using TestStack.ConventionTests.Internal;
@@ -10,8 +9,12 @@
///
public class ProjectFileItems : AbstractProjectData
{
- public ProjectFileItems(Assembly assembly, IProjectProvider projectProvider = null, IProjectLocator projectLocator = null)
- : base(assembly, projectProvider, projectLocator)
+ public ProjectFileItems(IProjectProvider projectProvider)
+ : base(projectProvider)
+ {
+ }
+
+ public ProjectFileItems(string projectFilePath) : base(projectFilePath)
{
}
diff --git a/TestStack.ConventionTests/ConventionData/ProjectPropertyGroups.cs b/TestStack.ConventionTests/ConventionData/ProjectPropertyGroups.cs
index d48be37..5a5d32a 100644
--- a/TestStack.ConventionTests/ConventionData/ProjectPropertyGroups.cs
+++ b/TestStack.ConventionTests/ConventionData/ProjectPropertyGroups.cs
@@ -2,14 +2,17 @@
{
using System.Collections.Generic;
using System.Linq;
- using System.Reflection;
using System.Xml.Linq;
using TestStack.ConventionTests.Internal;
public class ProjectPropertyGroups : AbstractProjectData
{
- public ProjectPropertyGroups(Assembly assembly, IProjectProvider projectProvider = null, IProjectLocator projectLocator = null)
- : base(assembly, projectProvider, projectLocator)
+ public ProjectPropertyGroups(IProjectProvider projectProvider)
+ : base(projectProvider)
+ {
+ }
+ public ProjectPropertyGroups(string projectFileLocation)
+ : base(projectFileLocation)
{
}
diff --git a/TestStack.ConventionTests/ConventionData/ProjectReferences.cs b/TestStack.ConventionTests/ConventionData/ProjectReferences.cs
index e5e60d2..8ef4e95 100644
--- a/TestStack.ConventionTests/ConventionData/ProjectReferences.cs
+++ b/TestStack.ConventionTests/ConventionData/ProjectReferences.cs
@@ -1,16 +1,18 @@
namespace TestStack.ConventionTests.ConventionData
{
- using System;
using System.Collections.Generic;
using System.Linq;
- using System.Reflection;
using System.Xml.Linq;
using TestStack.ConventionTests.Internal;
public class ProjectReferences : AbstractProjectData
{
- public ProjectReferences(Assembly assembly, IProjectProvider projectProvider = null, IProjectLocator projectLocator = null)
- : base(assembly, projectProvider, projectLocator)
+ public ProjectReferences(IProjectProvider projectProvider)
+ : base(projectProvider)
+ {
+ }
+
+ public ProjectReferences(string projectFilePath) : base(projectFilePath)
{
}
diff --git a/TestStack.ConventionTests/Internal/AssemblyProjectLocator.cs b/TestStack.ConventionTests/Internal/AssemblyProjectLocator.cs
deleted file mode 100644
index 7241e0e..0000000
--- a/TestStack.ConventionTests/Internal/AssemblyProjectLocator.cs
+++ /dev/null
@@ -1,43 +0,0 @@
-namespace TestStack.ConventionTests.Internal
-{
- using System;
- using System.Reflection;
- using Mono.Cecil;
- using Mono.Cecil.Cil;
-
- public class AssemblyProjectLocator : IProjectLocator
- {
- public string ResolveProjectFilePath(Assembly assembly)
- {
- var readerParameters = new ReaderParameters {ReadSymbols = true, ReadingMode = ReadingMode.Deferred};
- var definition = AssemblyDefinition.ReadAssembly(assembly.Location, readerParameters);
- var methodDefinition = GetMethodWithBody(definition);
- var document = GetMethodDocument(methodDefinition);
- return document.Url;
- }
-
- static Document GetMethodDocument(MethodDefinition methodDefinition)
- {
- var instruction = methodDefinition.Body.Instructions[0];
- var document = instruction.SequencePoint.Document;
- return document;
- }
-
- static MethodDefinition GetMethodWithBody(AssemblyDefinition definition)
- {
- foreach (var type in definition.MainModule.Types)
- {
- if (type.HasMethods == false) continue;
-
- foreach (var method in type.Methods)
- {
- if (method.HasBody)
- {
- return method;
- }
- }
- }
- throw new InvalidOperationException("Couldn't find any type with methods with body");
- }
- }
-}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/Internal/ConventionContext.cs b/TestStack.ConventionTests/Internal/ConventionContext.cs
index 2f9c870..c628d4a 100644
--- a/TestStack.ConventionTests/Internal/ConventionContext.cs
+++ b/TestStack.ConventionTests/Internal/ConventionContext.cs
@@ -10,14 +10,14 @@ public class ConventionContext : IConventionResultContext, IConventionFormatCont
{
readonly string dataDescription;
readonly IList formatters;
- readonly IList processors;
+ readonly IEnumerable processors;
readonly ITestResultProcessor testResultProcessor;
readonly IList results = new List();
string conventionReason;
bool resultSet;
public ConventionContext(string dataDescription, IList formatters,
- IList processors, ITestResultProcessor testResultProcessor)
+ IEnumerable processors, ITestResultProcessor testResultProcessor)
{
this.formatters = formatters;
this.processors = processors;
diff --git a/TestStack.ConventionTests/Internal/ConventionTestsApprovalTextWriter.cs b/TestStack.ConventionTests/Internal/ConventionTestsApprovalTextWriter.cs
deleted file mode 100644
index 7a35101..0000000
--- a/TestStack.ConventionTests/Internal/ConventionTestsApprovalTextWriter.cs
+++ /dev/null
@@ -1,35 +0,0 @@
-namespace TestStack.ConventionTests.Internal
-{
- using ApprovalTests;
- using ApprovalTests.Core;
-
- public class ConventionTestsApprovalTextWriter : ApprovalTextWriter, IApprovalWriter
- {
- readonly int count;
-
-
- public ConventionTestsApprovalTextWriter(string formattedResult, int count, string extensionWithoutDot)
- : base(formattedResult, extensionWithoutDot)
- {
- this.count = count;
- }
-
- string IApprovalWriter.GetApprovalFilename(string basename)
- {
- if (count == 0)
- {
- return GetApprovalFilename(basename);
- }
- return GetApprovalFilename(basename + count);
- }
-
- string IApprovalWriter.GetReceivedFilename(string basename)
- {
- if (count == 0)
- {
- return GetReceivedFilename(basename);
- }
- return GetReceivedFilename(basename + count);
- }
- }
-}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/Internal/IProjectLocator.cs b/TestStack.ConventionTests/Internal/IProjectLocator.cs
deleted file mode 100644
index 7bd0721..0000000
--- a/TestStack.ConventionTests/Internal/IProjectLocator.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-namespace TestStack.ConventionTests.Internal
-{
- using System.Reflection;
-
- public interface IProjectLocator
- {
- string ResolveProjectFilePath(Assembly assembly);
- }
-}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/Internal/IProjectProvider.cs b/TestStack.ConventionTests/Internal/IProjectProvider.cs
index 2431303..c4eb1c9 100644
--- a/TestStack.ConventionTests/Internal/IProjectProvider.cs
+++ b/TestStack.ConventionTests/Internal/IProjectProvider.cs
@@ -4,6 +4,7 @@
public interface IProjectProvider
{
- XDocument LoadProjectDocument(string resolveProjectFilePath);
+ XDocument LoadProjectDocument();
+ string GetName();
}
}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/Internal/ProjectFileFromDiskProvider.cs b/TestStack.ConventionTests/Internal/ProjectFileFromDiskProvider.cs
new file mode 100644
index 0000000..6ccfd86
--- /dev/null
+++ b/TestStack.ConventionTests/Internal/ProjectFileFromDiskProvider.cs
@@ -0,0 +1,25 @@
+namespace TestStack.ConventionTests.Internal
+{
+ using System.IO;
+ using System.Xml.Linq;
+
+ public class ProjectFileFromDiskProvider : IProjectProvider
+ {
+ readonly string projectFilePath;
+
+ public ProjectFileFromDiskProvider(string projectFilePath)
+ {
+ this.projectFilePath = projectFilePath;
+ }
+
+ public XDocument LoadProjectDocument()
+ {
+ return XDocument.Load(projectFilePath);
+ }
+
+ public string GetName()
+ {
+ return Path.GetFileNameWithoutExtension(projectFilePath);
+ }
+ }
+}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/Internal/ProjectProvider.cs b/TestStack.ConventionTests/Internal/ProjectProvider.cs
deleted file mode 100644
index 4c79b67..0000000
--- a/TestStack.ConventionTests/Internal/ProjectProvider.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-namespace TestStack.ConventionTests.Internal
-{
- using System.Xml.Linq;
-
- public class ProjectProvider : IProjectProvider
- {
- public XDocument LoadProjectDocument(string resolveProjectFilePath)
- {
- return XDocument.Load(resolveProjectFilePath);
- }
- }
-}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/Reporting/ApproveResultsProcessor.cs b/TestStack.ConventionTests/Reporting/ApproveResultsProcessor.cs
deleted file mode 100644
index c670d78..0000000
--- a/TestStack.ConventionTests/Reporting/ApproveResultsProcessor.cs
+++ /dev/null
@@ -1,50 +0,0 @@
-namespace TestStack.ConventionTests.Reporting
-{
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using ApprovalTests;
- using ApprovalTests.Core.Exceptions;
- using TestStack.ConventionTests.Internal;
-
- public class ApproveResultsProcessor : IResultsProcessor
- {
- public void Process(IConventionFormatContext context, params ConventionResult[] results)
- {
- var failedApprovals = new List();
- for (var count = 0; count < results.Length; count++)
- {
- var result = results[count];
- try
- {
- //TODO Law of Demeter
- var formattedResult = context.TestResultProcessor.Process(context, result);
- var recommendedFileExtension = context.TestResultProcessor.RecommendedFileExtension;
- Approvals.Verify(new ConventionTestsApprovalTextWriter(formattedResult, count, recommendedFileExtension));
- }
- catch (ApprovalException ex)
- {
- failedApprovals.Add(ex);
- }
- }
- if (failedApprovals.Count == 0)
- {
- return;
- }
- if (failedApprovals.Count == 1)
- {
- var ex = failedApprovals[0];
- throw new ConventionFailedException("Approved exceptions for convention differs" +
- Environment.NewLine +
- Environment.NewLine +
- ex.Message, ex);
- }
- throw new ConventionFailedException("Approved exceptions for convention differs" +
- Environment.NewLine +
- Environment.NewLine +
- string.Join(Environment.NewLine,
- failedApprovals.Select(x => x.Message)),
- new AggregateException(failedApprovals.ToArray()));
- }
- }
-}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/Reporting/CaptureFailuresProcessor.cs b/TestStack.ConventionTests/Reporting/CaptureFailuresProcessor.cs
new file mode 100644
index 0000000..a2c40b1
--- /dev/null
+++ b/TestStack.ConventionTests/Reporting/CaptureFailuresProcessor.cs
@@ -0,0 +1,32 @@
+namespace TestStack.ConventionTests.Reporting
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Linq;
+ using TestStack.ConventionTests.Internal;
+
+ public class CaptureFailuresProcessor : IResultsProcessor
+ {
+ public void Process(IConventionFormatContext context, params ConventionResult[] results)
+ {
+ var failedApprovals = results.Select(result => context.TestResultProcessor.Process(context, result)).ToList();
+ switch (failedApprovals.Count)
+ {
+ case 0:
+ Failures = string.Empty;
+ break;
+ case 1:
+ Failures = failedApprovals[0];
+ break;
+ default:
+ Failures = string.Join(Environment.NewLine, failedApprovals);
+ break;
+ }
+ }
+
+ ///
+ /// The captured failures
+ ///
+ public string Failures { get; private set; }
+ }
+}
\ No newline at end of file
diff --git a/TestStack.ConventionTests/TestStack.ConventionTests.csproj b/TestStack.ConventionTests/TestStack.ConventionTests.csproj
index ef84d96..b3bfa49 100644
--- a/TestStack.ConventionTests/TestStack.ConventionTests.csproj
+++ b/TestStack.ConventionTests/TestStack.ConventionTests.csproj
@@ -35,24 +35,6 @@
bin\Release\TestStack.ConventionTests.xml
-
- ..\packages\ApprovalTests.3.0.01\lib\net40\ApprovalTests.dll
-
-
- ..\packages\ApprovalUtilities.3.0.01\lib\net35\ApprovalUtilities.dll
-
-
- ..\packages\Mono.Cecil.0.9.5.4\lib\net40\Mono.Cecil.dll
-
-
- ..\packages\Mono.Cecil.0.9.5.4\lib\net40\Mono.Cecil.Mdb.dll
-
-
- ..\packages\Mono.Cecil.0.9.5.4\lib\net40\Mono.Cecil.Pdb.dll
-
-
- ..\packages\Mono.Cecil.0.9.5.4\lib\net40\Mono.Cecil.Rocks.dll
-
@@ -73,11 +55,10 @@
-
-
+
@@ -101,18 +82,16 @@
-
-
-
+
@@ -124,7 +103,6 @@
-
Designer
diff --git a/TestStack.ConventionTests/packages.config b/TestStack.ConventionTests/packages.config
deleted file mode 100644
index 9e75dc7..0000000
--- a/TestStack.ConventionTests/packages.config
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/packages/ApprovalTests.3.0.01/ApprovalTests.3.0.01.nupkg b/packages/ApprovalTests.3.0.01/ApprovalTests.3.0.01.nupkg
deleted file mode 100644
index f08966c..0000000
Binary files a/packages/ApprovalTests.3.0.01/ApprovalTests.3.0.01.nupkg and /dev/null differ
diff --git a/packages/ApprovalTests.3.0.01/ApprovalTests.3.0.01.nuspec b/packages/ApprovalTests.3.0.01/ApprovalTests.3.0.01.nuspec
deleted file mode 100644
index 9fd5754..0000000
--- a/packages/ApprovalTests.3.0.01/ApprovalTests.3.0.01.nuspec
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
- ApprovalTests
- 3.0.01
- ApprovalTests
- Llewellyn Falco & Dan Gilkerson
- Llewellyn Falco & Dan Gilkerson
- https://github.com/approvals/ApprovalTests.Net
- http://approvaltests.sourceforge.net/sites/all/themes/corolla/logo.png
- false
- A picture's worth a 1000 tests.
- Unit testing asserts can be difficult to use.
- Approval tests simplify this by taking a snapshot of the results,
- and confirming that they have not changed.
-
-
- en-US
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/packages/ApprovalTests.3.0.01/lib/net40/ApprovalTests.XML b/packages/ApprovalTests.3.0.01/lib/net40/ApprovalTests.XML
deleted file mode 100644
index ad6c9b8..0000000
--- a/packages/ApprovalTests.3.0.01/lib/net40/ApprovalTests.XML
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
- ApprovalTests
-
-
-
-
- Uses PortFactory.AspPort
-
-
-
-
- Throws exception if Html is incorrectly formatted
-
-
-
-
- Throws exception if Xml is incorrectly formatted
-
-
-
-
diff --git a/packages/ApprovalTests.3.0.01/lib/net40/ApprovalTests.dll b/packages/ApprovalTests.3.0.01/lib/net40/ApprovalTests.dll
deleted file mode 100644
index a1b8b38..0000000
Binary files a/packages/ApprovalTests.3.0.01/lib/net40/ApprovalTests.dll and /dev/null differ
diff --git a/packages/ApprovalTests.3.0.01/lib/net40/ApprovalTests.pdb b/packages/ApprovalTests.3.0.01/lib/net40/ApprovalTests.pdb
deleted file mode 100644
index e4147b7..0000000
Binary files a/packages/ApprovalTests.3.0.01/lib/net40/ApprovalTests.pdb and /dev/null differ
diff --git a/packages/ApprovalUtilities.3.0.01/ApprovalUtilities.3.0.01.nupkg b/packages/ApprovalUtilities.3.0.01/ApprovalUtilities.3.0.01.nupkg
deleted file mode 100644
index 7df2199..0000000
Binary files a/packages/ApprovalUtilities.3.0.01/ApprovalUtilities.3.0.01.nupkg and /dev/null differ
diff --git a/packages/ApprovalUtilities.3.0.01/ApprovalUtilities.3.0.01.nuspec b/packages/ApprovalUtilities.3.0.01/ApprovalUtilities.3.0.01.nuspec
deleted file mode 100644
index c8c0479..0000000
--- a/packages/ApprovalUtilities.3.0.01/ApprovalUtilities.3.0.01.nuspec
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
- ApprovalUtilities
- 3.0.01
- Llewellyn Falco & Dan Gilkerson
- Llewellyn Falco & Dan Gilkerson
- https://github.com/approvals/ApprovalTests.Net
- http://approvaltests.sourceforge.net/sites/all/themes/corolla/logo.png
- false
- Common helper classes developed with ApprovalTests
- en-US
-
-
\ No newline at end of file
diff --git a/packages/ApprovalUtilities.3.0.01/lib/net35/ApprovalUtilities.XML b/packages/ApprovalUtilities.3.0.01/lib/net35/ApprovalUtilities.XML
deleted file mode 100644
index ba7dd24..0000000
--- a/packages/ApprovalUtilities.3.0.01/lib/net35/ApprovalUtilities.XML
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- ApprovalUtilities
-
-
-
-
- A better string formatter for enumerables.
-
-
-
-
diff --git a/packages/ApprovalUtilities.3.0.01/lib/net35/ApprovalUtilities.dll b/packages/ApprovalUtilities.3.0.01/lib/net35/ApprovalUtilities.dll
deleted file mode 100644
index ae235fd..0000000
Binary files a/packages/ApprovalUtilities.3.0.01/lib/net35/ApprovalUtilities.dll and /dev/null differ
diff --git a/packages/ApprovalUtilities.3.0.01/lib/net35/ApprovalUtilities.pdb b/packages/ApprovalUtilities.3.0.01/lib/net35/ApprovalUtilities.pdb
deleted file mode 100644
index 57fa91e..0000000
Binary files a/packages/ApprovalUtilities.3.0.01/lib/net35/ApprovalUtilities.pdb and /dev/null differ