mirror of https://github.com/abpframework/abp.git
committed by
GitHub
20 changed files with 218 additions and 30 deletions
@ -0,0 +1,70 @@ |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using Volo.Abp.Cli.ProjectBuilding.Building; |
|||
|
|||
namespace Volo.Abp.Cli.ProjectBuilding.Templates.App |
|||
{ |
|||
public class AppTemplateRemoveMongodbCollectionFixtureStep : ProjectBuildPipelineStep |
|||
{ |
|||
public override void Execute(ProjectBuildContext context) |
|||
{ |
|||
//MyCompanyName.MyProjectName.Application.Tests
|
|||
RemoveFile(context, "/aspnet-core/test/MyCompanyName.MyProjectName.Application.Tests/MyProjectNameApplicationCollection.cs"); |
|||
RemoveKeyword(context, |
|||
"/aspnet-core/test/MyCompanyName.MyProjectName.Application.Tests/Samples/SampleAppServiceTests.cs", |
|||
"[Collection(MyProjectNameTestConsts.CollectionDefinitionName)]"); |
|||
|
|||
//MyCompanyName.MyProjectName.Domain.Tests
|
|||
RemoveFile(context, "/aspnet-core/test/MyCompanyName.MyProjectName.Domain.Tests/MyProjectNameDomainCollection.cs"); |
|||
RemoveKeyword(context, |
|||
"/aspnet-core/test/MyCompanyName.MyProjectName.Domain.Tests/Samples/SampleDomainTests.cs", |
|||
"[Collection(MyProjectNameTestConsts.CollectionDefinitionName)]"); |
|||
|
|||
//MyCompanyName.MyProjectName.EntityFrameworkCore.Tests
|
|||
RemoveFile(context, "/aspnet-core/test/MyCompanyName.MyProjectName.EntityFrameworkCore.Tests/EntityFrameworkCore/MyProjectNameEntityFrameworkCoreCollection.cs"); |
|||
RemoveFile(context, "/aspnet-core/test/MyCompanyName.MyProjectName.EntityFrameworkCore.Tests/EntityFrameworkCore/MyProjectNameEntityFrameworkCoreCollectionFixtureBase.cs"); |
|||
RemoveFile(context, "/aspnet-core/test/MyCompanyName.MyProjectName.EntityFrameworkCore.Tests/EntityFrameworkCore/MyProjectNameEntityFrameworkCoreFixture.cs"); |
|||
RemoveKeyword(context, |
|||
"/aspnet-core/test/MyCompanyName.MyProjectName.EntityFrameworkCore.Tests/EntityFrameworkCore/Samples/SampleRepositoryTests.cs", |
|||
"[Collection(MyProjectNameTestConsts.CollectionDefinitionName)]"); |
|||
|
|||
//MyCompanyName.MyProjectName.Web.Tests
|
|||
RemoveFile(context, "/aspnet-core/test/MyCompanyName.MyProjectName.Web.Tests/MyProjectNameWebCollection.cs"); |
|||
RemoveKeyword(context, |
|||
"/aspnet-core/test/MyCompanyName.MyProjectName.Web.Tests/Pages/Index_Tests.cs", |
|||
"[Collection(MyProjectNameTestConsts.CollectionDefinitionName)]"); |
|||
|
|||
//MyCompanyName.MyProjectName.TestBase
|
|||
RemoveFile(context, "/aspnet-core/test/MyCompanyName.MyProjectName.TestBase/MyProjectNameTestConsts.cs"); |
|||
} |
|||
|
|||
private static void RemoveFile(ProjectBuildContext context, string targetModuleFilePath) |
|||
{ |
|||
var file = context.Files.FirstOrDefault(x => x.Name == targetModuleFilePath); |
|||
if (file != null) |
|||
{ |
|||
context.Files.Remove(file); |
|||
} |
|||
} |
|||
|
|||
private static void RemoveKeyword(ProjectBuildContext context, string targetModuleFilePath, string keyword) |
|||
{ |
|||
var file = context.GetFile(targetModuleFilePath); |
|||
|
|||
file.NormalizeLineEndings(); |
|||
|
|||
var lines = file.GetLines(); |
|||
var newLines = new List<string>(); |
|||
|
|||
for (var i = 0; i < lines.Length; i++) |
|||
{ |
|||
if (!lines[i].Contains(keyword)) |
|||
{ |
|||
newLines.Add(lines[i]); |
|||
} |
|||
} |
|||
|
|||
file.SetLines(newLines); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
using MyCompanyName.MyProjectName.EntityFrameworkCore; |
|||
using Xunit; |
|||
|
|||
namespace MyCompanyName.MyProjectName |
|||
{ |
|||
[CollectionDefinition(MyProjectNameTestConsts.CollectionDefinitionName)] |
|||
public class MyProjectNameApplicationCollection : MyProjectNameEntityFrameworkCoreCollectionFixtureBase |
|||
{ |
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
using MyCompanyName.MyProjectName.EntityFrameworkCore; |
|||
using Xunit; |
|||
|
|||
namespace MyCompanyName.MyProjectName |
|||
{ |
|||
[CollectionDefinition(MyProjectNameTestConsts.CollectionDefinitionName)] |
|||
public class MyProjectNameDomainCollection : MyProjectNameEntityFrameworkCoreCollectionFixtureBase |
|||
{ |
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,10 @@ |
|||
using Xunit; |
|||
|
|||
namespace MyCompanyName.MyProjectName.EntityFrameworkCore |
|||
{ |
|||
[CollectionDefinition(MyProjectNameTestConsts.CollectionDefinitionName)] |
|||
public class MyProjectNameEntityFrameworkCoreCollection : ICollectionFixture<MyProjectNameEntityFrameworkCoreFixture> |
|||
{ |
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,10 @@ |
|||
using MyCompanyName.MyProjectName.EntityFrameworkCore; |
|||
using Xunit; |
|||
|
|||
namespace MyCompanyName.MyProjectName.EntityFrameworkCore |
|||
{ |
|||
public class MyProjectNameEntityFrameworkCoreCollectionFixtureBase : ICollectionFixture<MyProjectNameEntityFrameworkCoreFixture> |
|||
{ |
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,12 @@ |
|||
using System; |
|||
|
|||
namespace MyCompanyName.MyProjectName.EntityFrameworkCore |
|||
{ |
|||
public class MyProjectNameEntityFrameworkCoreFixture : IDisposable |
|||
{ |
|||
public void Dispose() |
|||
{ |
|||
|
|||
} |
|||
} |
|||
} |
|||
@ -1,10 +0,0 @@ |
|||
using Xunit; |
|||
|
|||
namespace MyCompanyName.MyProjectName.MongoDB |
|||
{ |
|||
[CollectionDefinition(Name)] |
|||
public class MongoTestCollection : ICollectionFixture<MongoDbFixture> |
|||
{ |
|||
public const string Name = "MongoDB Collection"; |
|||
} |
|||
} |
|||
@ -0,0 +1,10 @@ |
|||
using Xunit; |
|||
|
|||
namespace MyCompanyName.MyProjectName.MongoDB |
|||
{ |
|||
[CollectionDefinition(MyProjectNameTestConsts.CollectionDefinitionName)] |
|||
public class MyProjectNameMongoCollection : MyProjectNameMongoDbCollectionFixtureBase |
|||
{ |
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,10 @@ |
|||
using MyCompanyName.MyProjectName.MongoDB; |
|||
using Xunit; |
|||
|
|||
namespace MyCompanyName.MyProjectName.MongoDB |
|||
{ |
|||
public class MyProjectNameMongoDbCollectionFixtureBase : ICollectionFixture<MyProjectNameMongoDbFixture> |
|||
{ |
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,7 @@ |
|||
namespace MyCompanyName.MyProjectName |
|||
{ |
|||
public static class MyProjectNameTestConsts |
|||
{ |
|||
public const string CollectionDefinitionName = "MyProjectName collection"; |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
using MyCompanyName.MyProjectName.EntityFrameworkCore; |
|||
using Xunit; |
|||
|
|||
namespace MyCompanyName.MyProjectName |
|||
{ |
|||
[CollectionDefinition(MyProjectNameTestConsts.CollectionDefinitionName)] |
|||
public class MyProjectNameWebCollection : MyProjectNameEntityFrameworkCoreCollectionFixtureBase |
|||
{ |
|||
|
|||
} |
|||
} |
|||
Loading…
Reference in new issue