JD2022-TU1/main/build/sharpmake/Tools/PlumeSolution.cs

556 lines
16 KiB
C#

using System;
using System.IO;
using System.Linq;
using JustDance.Tools.Extern;
using Sharpmake;
namespace JustDance.Tools
{
[Generate]
public class PlumeSolution : BaseSolution
{
public PlumeSolution()
{
Name = "Plume";
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.RegisterProjectsOfType<PlumeFrameworkProject>(target);
conf.RegisterProjectsOfType<PlumeConsoleModuleProject>(target);
conf.RegisterProjectsOfType<PlumeWPFModuleProject>(target);
conf.RegisterProjectsOfType<PlumeServiceProject>(target);
conf.RegisterProjectsOfType<PlumeFrameworkTestsProject>(target);
conf.RegisterProjectsOfType<PlumeConsoleModuleTestsProject>(target);
conf.RegisterProjectsOfType<PlumeWPFModuleTestsProject>(target);
conf.RegisterProjectsOfType<PlumeServiceTestsProject>(target);
conf.SolutionPath = ToolsPath + @"framework\Plume\";
}
}
#region PlumeTestsProjects
/// <summary>
/// Base class for a test project
/// </summary>
public class TestsProject : BaseProject
{
public TestsProject() : base("framework")
{
SourceRootPath = string.Format(Path.Combine(Globals.BranchRoot + @"tools.tests\", @"[project.ProjectType].tests\Plume.tests\src.tests\[project.Name]"));
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByNuGetPackage.Add(Externs.NUnit);
conf.ReferencesByNuGetPackage.Add(Externs.NSubstitute);
conf.SolutionFolder = "framework.tests/plume.tests/";
}
}
public abstract class PlumeFrameworkTestsProject : TestsProject
{
protected PlumeFrameworkTestsProject()
{
SourceRootPath = string.Format(Path.Combine(Globals.BranchRoot + @"tools.tests\", @"[project.ProjectType].tests\Plume.tests\src.tests\framework.tests\[project.Name]"));
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.Options.Add(Options.Vc.Compiler.GenerateXMLDocumentation.Enable);
conf.Options.Add(Options.CSharp.TreatWarningsAsErrors.Enabled);
conf.SolutionFolder = "framework.tests/plume.tests/framework.tests";
}
}
public abstract class PlumeConsoleModuleTestsProject : TestsProject
{
protected PlumeConsoleModuleTestsProject()
{
SourceRootPath = string.Format(Path.Combine(Globals.BranchRoot + @"tools.tests\", @"[project.ProjectType].tests\Plume.tests\src.tests\modules.tests\Console\[project.Name]"));
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.SolutionFolder = "framework.tests/plume.tests/modules.tests/console";
}
}
public abstract class PlumeWPFModuleTestsProject : TestsProject
{
protected PlumeWPFModuleTestsProject()
{
SourceRootPath = string.Format(Path.Combine(Globals.BranchRoot + @"tools.tests\", @"[project.ProjectType].tests\Plume.tests\src.tests\modules.tests\WPF\[project.Name]"));
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.SolutionFolder = "framework.tests/plume.tests/modules.tests/wpf";
}
}
public abstract class PlumeServiceTestsProject : TestsProject
{
protected PlumeServiceTestsProject()
{
SourceRootPath = string.Format(Path.Combine(Globals.BranchRoot + @"tools.tests\", @"[project.ProjectType].tests\Plume.tests\src.tests\services.tests\[project.Name]"));
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.Options.Add(Options.CSharp.TreatWarningsAsErrors.Disabled);
conf.SolutionFolder = "framework.tests/plume.tests/services.tests";
}
}
#endregion
#region PlumeTestsFramework
/// <summary>
/// Unit tests of <see cref="Plume_Core"/>
/// </summary>
[Generate]
public class Plume_Core_Tests : PlumeFrameworkTestsProject
{
public Plume_Core_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Core>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Interfaces"/>
/// </summary>
[Generate]
public class Plume_Interfaces_Tests : PlumeFrameworkTestsProject
{
public Plume_Interfaces_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Interfaces>(target);
conf.AddPublicDependency<Plume_Tests_Shared>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Interfaces_Console"/>
/// </summary>
[Generate]
public class Plume_Interfaces_Console_Tests : PlumeFrameworkTestsProject
{
public Plume_Interfaces_Console_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Interfaces_Console>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Interfaces_WPF"/>
/// </summary>
[Generate]
public class Plume_Interfaces_WPF_Tests : PlumeFrameworkTestsProject
{
public Plume_Interfaces_WPF_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Interfaces_WPF>(target);
conf.AddPublicDependency<Plume_Tests_Shared>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Tests_Shared"/>
/// </summary>
[Generate]
public class Plume_Tests_Shared : TestsProject
{
public Plume_Tests_Shared()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Interfaces_WPF>(target);
conf.ReferencesByName.Add("WindowsBase");
conf.ReferencesByName.Add("PresentationCore");
conf.ReferencesByName.Add("PresentationFramework");
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Application"/>
/// </summary>
[Generate]
public class Plume_Application_Tests : PlumeFrameworkTestsProject
{
public Plume_Application_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Application>(target);
conf.AddPublicDependency<Plume_Tests_Shared>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Application_Console"/>
/// </summary>
[Generate]
public class Plume_Application_Console_Tests : PlumeFrameworkTestsProject
{
public Plume_Application_Console_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Application_Console>(target);
conf.AddPublicDependency<Plume_Tests_Shared>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Application_WPF"/>
/// </summary>
[Generate]
public class Plume_Application_WPF_Tests : PlumeFrameworkTestsProject
{
public Plume_Application_WPF_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Application_WPF>(target);
conf.AddPublicDependency<Plume_Tests_Shared>(target);
conf.ReferencesByName.Add("WindowsBase");
conf.ReferencesByName.Add("PresentationCore");
conf.ReferencesByName.Add("PresentationFramework");
}
}
/// <summary>
/// Unit tests of <see cref="Plume_WPF"/>
/// </summary>
[Generate]
public class Plume_WPF_Tests : PlumeFrameworkTestsProject
{
public Plume_WPF_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_WPF>(target);
conf.AddPublicDependency<Plume_Tests_Shared>(target);
}
}
#endregion
#region PlumeTestsServices
/// <summary>
/// Unit tests of <see cref="Plume_MetaData_Service"/>
/// </summary>
[Generate]
public class Plume_MetaData_Service_Tests : PlumeServiceTestsProject
{
public Plume_MetaData_Service_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_MetaData_Service>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_MetaData_ElasticSearch"/>
/// </summary>
[Generate]
public class Plume_MetaData_ElasticSearch_Tests : PlumeServiceTestsProject
{
public Plume_MetaData_ElasticSearch_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_MetaData_ElasticSearch>(target);
conf.ReferencesByNuGetPackage.Add(Externs.FluentAssertions);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Perforce_Service"/>
/// </summary>
[Generate]
public class Plume_Perforce_Service_Tests : PlumeServiceTestsProject
{
public Plume_Perforce_Service_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Perforce_Service>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Bloomberg_Service"/>
/// </summary>
[Generate]
public class Plume_Bloomberg_Service_Tests : PlumeServiceTestsProject
{
public Plume_Bloomberg_Service_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Bloomberg_Service>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Quik_Service"/>
/// </summary>
[Generate]
public class Plume_Quik_Service_Tests : PlumeServiceTestsProject
{
public Plume_Quik_Service_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Quik_Service>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Tracking_Service"/>
/// </summary>
[Generate]
public class Plume_Tracking_Service_Tests : PlumeServiceTestsProject
{
public Plume_Tracking_Service_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Tracking_Service>(target);
}
}
#endregion
#region PlumeTestsModules
/// <summary>
/// Unit tests of <see cref="Plume_HelloWorld"/>
/// </summary>
[Generate]
public class Plume_HelloWorld_Tests : PlumeConsoleModuleTestsProject
{
public Plume_HelloWorld_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_HelloWorld>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Perforce"/>
/// </summary>
[Generate]
public class Plume_Perforce_Tests : PlumeWPFModuleTestsProject
{
public Plume_Perforce_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Perforce>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Properties"/>
/// </summary>
[Generate]
public class Plume_Properties_Tests : PlumeWPFModuleTestsProject
{
public Plume_Properties_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Properties>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_TextEditor"/>
/// </summary>
[Generate]
public class Plume_TextEditor_Tests : PlumeWPFModuleTestsProject
{
public Plume_TextEditor_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_TextEditor>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Tracking"/>
/// </summary>
[Generate]
public class Plume_Tracking_Tests : PlumeWPFModuleTestsProject
{
public Plume_Tracking_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Tracking>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_ImageViewer"/>
/// </summary>
[Generate]
public class Plume_ImageViewer_Tests : PlumeWPFModuleTestsProject
{
public Plume_ImageViewer_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_ImageViewer>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_Output"/>
/// </summary>
[Generate]
public class Plume_Output_Tests : PlumeWPFModuleTestsProject
{
public Plume_Output_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_Output>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_ErrorList"/>
/// </summary>
[Generate]
public class Plume_ErrorList_Tests : PlumeWPFModuleTestsProject
{
public Plume_ErrorList_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_ErrorList>(target);
}
}
/// <summary>
/// Unit tests of <see cref="Plume_CrashReporter"/>
/// </summary>
[Generate]
public class Plume_CrashReporter_Tests : PlumeWPFModuleTestsProject
{
public Plume_CrashReporter_Tests()
{
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Plume_CrashReporter>(target);
}
}
#endregion
}