Przeglądaj źródła

单元测试调整

Murphy 3 lat temu
rodzic
commit
deed1d0a5f
19 zmienionych plików z 159 dodań i 291 usunięć
  1. 1 3
      MicroServices/Business/Buissness.UnitTest/Buissness.TestBase.csproj
  2. 7 23
      MicroServices/Business/Buissness.UnitTest/CoreTestBaseModule.cs
  3. 0 127
      MicroServices/Business/Buissness.UnitTest/CoreTestDataSeedContributor.cs
  4. 0 32
      MicroServices/Business/Buissness.UnitTest/MES/IC/sim_issue_typeRepository_Tests.cs
  5. 0 13
      MicroServices/Business/Buissness.UnitTest/MongoCollection.cs
  6. 0 14
      MicroServices/Business/Buissness.UnitTest/MongoDbCollectionFixtureBase.cs
  7. 0 27
      MicroServices/Business/Buissness.UnitTest/MongoDbFixture.cs
  8. 17 0
      MicroServices/Business/Business.Domain/Isim_baseRepository.cs
  9. 1 0
      MicroServices/Business/Business.Domain/Isim_issue_typeRepository.cs
  10. 19 0
      MicroServices/Business/Business.EntityFrameworkCore/Repository/sim_baseRepository.cs
  11. 24 0
      MicroServices/Business/Business.EntityFrameworkCore/Repository/sim_issue_typeRepository.cs
  12. 1 1
      MicroServices/Business/Bussiness.ApplicationTest/CoreApplicationTestModule.cs
  13. 1 1
      MicroServices/Business/Bussiness.Domain.Test/CoreDomainTestModule.cs
  14. 0 10
      MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/CoreEntityFrameworkCoreTestBase.cs
  15. 10 0
      MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/EntityFrameworkCoreTestBase.cs
  16. 16 13
      MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/EntityFrameworkCoreTestModule.cs
  17. 44 0
      MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/EntityFrameworkTestDataSeedContributor.cs
  18. 0 13
      MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/MES/IC/sim_issue_typeRepository_Tests.cs
  19. 18 14
      MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/Samples/SampleRepositoryTests.cs

+ 1 - 3
MicroServices/Business/Buissness.UnitTest/Buissness.TestBase.csproj

@@ -8,15 +8,13 @@
 
   <ItemGroup>
     <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.1" />
-    <PackageReference Include="Mongo2Go" Version="3.1.3" />
     <PackageReference Include="NSubstitute" Version="4.2.2" />
     <PackageReference Include="Shouldly" Version="4.1.0" />
-    <PackageReference Include="Volo.Abp.Authorization" Version="7.1.0" />
+    <PackageReference Include="Volo.Abp.Authorization" Version="6.0.0" />
     <PackageReference Include="Volo.Abp.Autofac" Version="7.1.0" />
     <PackageReference Include="Volo.Abp.BackgroundJobs.Domain" Version="4.4.0" />
     <PackageReference Include="Volo.Abp.Identity.Domain" Version="4.4.0" />
     <PackageReference Include="Volo.Abp.IdentityServer.Domain" Version="4.4.0" />
-    <PackageReference Include="Volo.Abp.Json" Version="7.1.0" />
     <PackageReference Include="Volo.Abp.TestBase" Version="7.1.0" />
     <PackageReference Include="xunit.extensibility.core" Version="2.4.2" />
   </ItemGroup>

+ 7 - 23
MicroServices/Business/Buissness.UnitTest/CoreTestBaseModule.cs

@@ -1,23 +1,18 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Volo.Abp.Authorization;
+using Microsoft.Extensions.DependencyInjection;
 using Volo.Abp;
-using Volo.Abp.Modularity;
+using Volo.Abp.Authorization;
 using Volo.Abp.Autofac;
-using Microsoft.Extensions.DependencyInjection;
-using Volo.Abp.Threading;
-using Volo.Abp.Data;
 using Volo.Abp.BackgroundJobs;
-using Volo.Abp.IdentityServer;
+using Volo.Abp.Data;
+using Volo.Abp.Modularity;
+using Volo.Abp.Threading;
 
 namespace Buissness.TestBase
 {
     [DependsOn(
         typeof(AbpAutofacModule),
-        typeof(AbpTestBaseModule)
+        typeof(AbpTestBaseModule),
+        typeof(AbpAuthorizationModule)
      )]
     public class CoreTestBaseModule : AbpModule
     {
@@ -32,17 +27,6 @@ namespace Buissness.TestBase
             //{
             //    identityServerBuilder.AddDeveloperSigningCredential(false, System.Guid.NewGuid().ToString());
             //});
-
-
-            //var stringArray = MongoDbFixture.ConnectionString.Split('?');
-            //var connectionString = stringArray[0].EnsureEndsWith('/') +
-            //                           "Db_" +
-            //                       Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
-            //Configure<AbpDbConnectionOptions>(options =>
-            //{
-            //    options.ConnectionStrings.Default = connectionString;
-            //});
         }
 
         public override void ConfigureServices(ServiceConfigurationContext context)

+ 0 - 127
MicroServices/Business/Buissness.UnitTest/CoreTestDataSeedContributor.cs

@@ -1,127 +0,0 @@
-
-using Business.Core.Utilities;
-using Bussiness.Model.MES.IC;
-using Bussiness.Model.Production;
-using Bussiness.Model.Sale;
-using Bussiness.Model.SRM;
-using Bussiness.Model.Tech;
-using Microsoft.Extensions.Hosting;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Volo.Abp.Data;
-using Volo.Abp.DependencyInjection;
-using Volo.Abp.Domain.Repositories;
-using Volo.Abp.MultiTenancy;
-
-namespace Buissness.TestBase
-{
-    public class CoreTestDataSeedContributor : IDataSeedContributor, ITransientDependency
-    {
-        private readonly IRepository<ic_item, long> _mysql_ic_item;
-        private readonly IRepository<ic_bom, long> _mysql_ic_bom;
-        private readonly IRepository<ic_bom_child, long> _mysql_ic_bom_child;
-        private readonly IRepository<mes_technique, long> _mysql_mes_technique;
-        private readonly IRepository<crm_seorder, long> _mysql_crm_seorder;
-        private readonly IRepository<crm_seorderentry, long> _mysql_crm_seorderentry;
-        private readonly IRepository<ic_item_stock, long> _mysql_ic_item_stock;
-        private readonly IRepository<ic_factory_details, long> _mysql_ic_factory_details;
-        private readonly IRepository<mes_oorder, long> _mysql_mes_oorder;
-        private readonly IRepository<srm_pr_main, long> _mysql_srm_pr_main;
-        private readonly IRepository<mes_mooccupy, long> _mysql_mes_mooccupy;
-        private readonly IRepository<mes_morder, long> _mysql_mes_morder;
-        private readonly IRepository<mes_moentry, long> _mysql_mes_moentry;
-        private readonly IRepository<mes_process, long> _mysql_mes_process;
-        private readonly IRepository<mes_tech_process, long> _mysql_mes_tech_process;
-        private readonly IRepository<srm_po_main, long> _mysql_srm_po_main;
-        private readonly IRepository<srm_po_list, long> _mysql_srm_po_list;
-        private readonly IRepository<srm_po_occupy, long> _mysql_srm_po_occupy;
-        private readonly IRepository<srm_purchase, long> _mysql_srm_purchase;
-        private readonly IRepository<ic_plan, long> _mysql_ic_plan;
-
-
-        private readonly ICurrentTenant _currentTenant;
-
-        public CoreTestDataSeedContributor(
-            IRepository<ic_item, long> mysql_ic_item,
-            IRepository<ic_bom, long> mysql_ic_bom,
-            IRepository<ic_bom_child, long> mysql_ic_bom_child,
-            IRepository<mes_technique, long> mysql_mes_technique,
-            IRepository<crm_seorder, long> mysql_crm_seorder,
-            IRepository<crm_seorderentry, long> mysql_crm_seorderentry,
-            IRepository<ic_item_stock, long> mysql_ic_item_stock,
-            IRepository<ic_factory_details, long> mysql_ic_factory_details,
-            IRepository<mes_oorder, long> mysql_mes_oorder,
-            IRepository<srm_pr_main, long> mysql_srm_pr_main,
-            IRepository<mes_mooccupy, long> mysql_mes_mooccupy,
-            IRepository<mes_morder, long> mysql_mes_morder,
-            IRepository<mes_moentry, long> mysql_mes_moentry,
-            IRepository<mes_process, long> mysql_mes_process,
-            IRepository<mes_tech_process, long> mysql_mes_tech_process,
-            IRepository<srm_po_main, long> mysql_srm_po_main,
-            IRepository<srm_po_list, long> mysql_srm_po_list,
-            IRepository<srm_po_occupy, long> mysql_srm_po_occupy,
-            IRepository<srm_purchase, long> mysql_srm_purchase,
-            IRepository<ic_plan, long> mysql_ic_plan,
-        ICurrentTenant currentTenant)
-        {
-            _mysql_ic_item = mysql_ic_item;
-            _mysql_ic_bom = mysql_ic_bom;
-            _mysql_ic_bom_child = mysql_ic_bom_child;
-            _mysql_mes_technique= mysql_mes_technique;
-            _mysql_crm_seorder = mysql_crm_seorder;
-            _mysql_crm_seorderentry = mysql_crm_seorderentry;
-            _mysql_ic_item_stock = mysql_ic_item_stock;
-            _mysql_ic_factory_details = mysql_ic_factory_details;
-            _mysql_mes_oorder = mysql_mes_oorder;
-            _mysql_srm_pr_main = mysql_srm_pr_main;
-            _mysql_mes_mooccupy = mysql_mes_mooccupy;
-            _mysql_mes_morder = mysql_mes_morder;
-            _mysql_mes_moentry = mysql_mes_moentry;
-            _mysql_mes_process= mysql_mes_process;
-            _mysql_mes_tech_process= mysql_mes_tech_process;
-            _mysql_srm_po_main = mysql_srm_po_main;
-            _mysql_srm_po_list = mysql_srm_po_list;
-            _mysql_srm_po_occupy = mysql_srm_po_occupy;
-            _mysql_srm_purchase = mysql_srm_purchase;
-            _mysql_ic_plan = mysql_ic_plan;
-            _currentTenant = currentTenant;
-        }
-
-        public async Task SeedAsync(DataSeedContext context)
-        {
-            /* Seed additional test data... */
-            using (_currentTenant.Change(context?.TenantId))
-            {
-                await Seedic_itemAsync();
-                await Seedic_bomAsync();
-                await Seedic_bom_childAsync();
-                await Seedmes_techniqueAsync();
-
-            }
-        }
-
-
-        private async Task Seedic_itemAsync()
-        {
-            await _mysql_ic_item.InsertAsync(new ic_item(new SnowFlake().NextId()) { factory_id=102, allowout=1});
-        }
-
-        private async Task Seedic_bomAsync()
-        {
-            await _mysql_ic_bom.InsertAsync(new ic_bom { factory_id=102,use_status=1});
-        }
-
-        public async Task Seedic_bom_childAsync()
-        {
-            await _mysql_ic_bom_child.InsertAsync(new ic_bom_child { factory_id=102, begin_day=DateTime.Now});
-        }
-
-        public async Task Seedmes_techniqueAsync()
-        {
-            await _mysql_mes_technique.InsertAsync(new mes_technique { factory_id=102, bom="1000"});
-        }
-    }
-}

+ 0 - 32
MicroServices/Business/Buissness.UnitTest/MES/IC/sim_issue_typeRepository_Tests.cs

@@ -1,32 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Buissness.TestBase;
-using Business.Domain;
-using Shouldly;
-using Volo.Abp.Modularity;
-using Xunit;
-
-namespace Buissness.TestBase
-{
-    public abstract class sim_issue_typeRepository_Tests<TStartupModule> : CoreTestBase<TStartupModule>
-        where TStartupModule : IAbpModule
-    {
-        public Isim_issue_typeRepository sim_issue_typeRepository { get; set; }
-
-        public sim_issue_typeRepository_Tests()
-        {
-            sim_issue_typeRepository = GetRequiredService<Isim_issue_typeRepository>();
-        }
-
-        [Fact]
-        public async Task Should_Find_By_TypeName()
-        {
-            var blogFromRepository = (await sim_issue_typeRepository.GetListAsync()).First();
-            var ic_bom = await sim_issue_typeRepository.FindByItemNameAsync(blogFromRepository.type_name);
-            ic_bom.ShouldNotBeNull();
-        }
-    }
-}

+ 0 - 13
MicroServices/Business/Buissness.UnitTest/MongoCollection.cs

@@ -1,13 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Buissness.TestBase
-{
-    public class MongoCollection : MongoDbCollectionFixtureBase
-    {
-
-    }
-}

+ 0 - 14
MicroServices/Business/Buissness.UnitTest/MongoDbCollectionFixtureBase.cs

@@ -1,14 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Xunit;
-
-namespace Buissness.TestBase
-{
-    public class MongoDbCollectionFixtureBase : ICollectionFixture<MongoDbFixture>
-    {
-
-    }
-}

+ 0 - 27
MicroServices/Business/Buissness.UnitTest/MongoDbFixture.cs

@@ -1,27 +0,0 @@
-using Mongo2Go;
-using MongoDB.Driver.Core.Configuration;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Buissness.TestBase
-{
-    public class MongoDbFixture : IDisposable
-    {
-        private static readonly MongoDbRunner MongoDbRunner;
-        public static readonly string ConnectionString;
-
-        static MongoDbFixture()
-        {
-            MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
-            ConnectionString = MongoDbRunner.ConnectionString;
-        }
-
-        public void Dispose()
-        {
-            MongoDbRunner?.Dispose();
-        }
-    }
-}

+ 17 - 0
MicroServices/Business/Business.Domain/Isim_baseRepository.cs

@@ -0,0 +1,17 @@
+using Bussiness.Model.MES.IC;
+using Bussiness.Model.SIM;
+using Microsoft.EntityFrameworkCore;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading;
+using System.Threading.Tasks;
+using Volo.Abp.Domain.Repositories;
+
+namespace Business.Domain
+{
+    public interface Isim_baseRepository : IBasicRepository<sim_base, long>
+    {
+    }
+}

+ 1 - 0
MicroServices/Business/Business.Domain/Isim_issue_typeRepository.cs

@@ -1,5 +1,6 @@
 using Bussiness.Model.MES.IC;
 using Bussiness.Model.SIM;
+using Microsoft.EntityFrameworkCore;
 using System;
 using System.Collections.Generic;
 using System.Linq;

+ 19 - 0
MicroServices/Business/Business.EntityFrameworkCore/Repository/sim_baseRepository.cs

@@ -0,0 +1,19 @@
+using Business.Domain;
+using Bussiness.Model.SIM;
+using Microsoft.EntityFrameworkCore;
+using System.Threading;
+using System.Threading.Tasks;
+using Volo.Abp.Domain.Repositories.EntityFrameworkCore;
+using Volo.Abp.EntityFrameworkCore;
+
+namespace Business.EntityFrameworkCore.Repository
+{
+    public class sim_baseRepository : EfCoreRepository<BusinessDbContext, sim_base, long>, Isim_baseRepository
+    {
+        public sim_baseRepository(IDbContextProvider<BusinessDbContext> dbContextProvider)
+            : base(dbContextProvider)
+        {
+
+        }
+    }
+}

+ 24 - 0
MicroServices/Business/Business.EntityFrameworkCore/Repository/sim_issue_typeRepository.cs

@@ -0,0 +1,24 @@
+using Business.Domain;
+using Bussiness.Model.SIM;
+using Microsoft.EntityFrameworkCore;
+using System.Threading;
+using System.Threading.Tasks;
+using Volo.Abp.Domain.Repositories.EntityFrameworkCore;
+using Volo.Abp.EntityFrameworkCore;
+
+namespace Business.EntityFrameworkCore.Repository
+{
+    public class sim_issue_typeRepository : EfCoreRepository<BusinessDbContext, sim_issue_type, long>, Isim_issue_typeRepository
+    {
+        public sim_issue_typeRepository(IDbContextProvider<BusinessDbContext> dbContextProvider)
+            : base(dbContextProvider)
+        {
+
+        }
+
+        public async Task<sim_issue_type> FindByItemNameAsync(string itemName, CancellationToken cancellationToken = default)
+        {
+            return await(await GetDbSetAsync()).FirstOrDefaultAsync(p => p.type_name ==itemName, GetCancellationToken(cancellationToken));
+        }
+    }
+}

+ 1 - 1
MicroServices/Business/Bussiness.ApplicationTest/CoreApplicationTestModule.cs

@@ -8,7 +8,7 @@ namespace Bussiness.ApplicationTest
 {
     [DependsOn(
         typeof(BusinessApplicationModule),
-        typeof(CoreEntityFrameworkCoreTestModule),
+        typeof(EntityFrameworkCoreTestModule),
         typeof(CoreTestBaseModule)
         )]
     public class CoreApplicationTestModule : AbpModule

+ 1 - 1
MicroServices/Business/Bussiness.Domain.Test/CoreDomainTestModule.cs

@@ -5,7 +5,7 @@ using Volo.Abp.Modularity;
 namespace Bussiness.Domain.Test
 {
     [DependsOn(
-        typeof(CoreEntityFrameworkCoreTestModule),
+        typeof(EntityFrameworkCoreTestModule),
         typeof(CoreTestBaseModule)
         )]
     public class CoreDomainTestModule : AbpModule

+ 0 - 10
MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/CoreEntityFrameworkCoreTestBase.cs

@@ -1,10 +0,0 @@
-using Buissness.TestBase;
-using Volo.Abp;
-
-namespace Bussiness.EntityFrameworkCore.Test
-{
-    public abstract class CoreEntityFrameworkCoreTestBase : CoreTestBase<CoreEntityFrameworkCoreTestModule> 
-    {
-
-    }
-}

+ 10 - 0
MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/EntityFrameworkCoreTestBase.cs

@@ -0,0 +1,10 @@
+using Buissness.TestBase;
+using Volo.Abp;
+
+namespace Bussiness.EntityFrameworkCore.Test
+{
+    public abstract class EntityFrameworkCoreTestBase : CoreTestBase<EntityFrameworkCoreTestModule> 
+    {
+
+    }
+}

+ 16 - 13
MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/CoreEntityFrameworkCoreTestModule.cs → MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/EntityFrameworkCoreTestModule.cs

@@ -9,7 +9,6 @@ using Volo.Abp;
 using Volo.Abp.EntityFrameworkCore;
 using Volo.Abp.EntityFrameworkCore.Sqlite;
 using Volo.Abp.Modularity;
-using Volo.Abp.Uow;
 
 namespace Bussiness.EntityFrameworkCore.Test
 {
@@ -17,14 +16,18 @@ namespace Bussiness.EntityFrameworkCore.Test
         typeof(CoreTestBaseModule),
         typeof(AbpEntityFrameworkCoreSqliteModule)
         )]
-    public class CoreEntityFrameworkCoreTestModule : AbpModule
+    public class EntityFrameworkCoreTestModule : AbpModule
     {
         private SqliteConnection _sqliteConnection;
 
         public override void ConfigureServices(ServiceConfigurationContext context)
         {
-            context.Services.AddAlwaysDisableUnitOfWorkTransaction();
+            //context.Services.AddAlwaysDisableUnitOfWorkTransaction();
             ConfigureInMemorySqlite(context.Services);
+            context.Services.AddAbpDbContext<BusinessDbContext>(options =>
+            {
+                options.AddDefaultRepositories(includeAllEntities: true);
+            });
         }
 
         private void ConfigureInMemorySqlite(IServiceCollection services)
@@ -59,19 +62,19 @@ namespace Bussiness.EntityFrameworkCore.Test
                 context.GetService<IRelationalDatabaseCreator>().CreateTables();
             }
 
-            var optionsBang = new DbContextOptionsBuilder<BusinessBangDbContext>().UseSqlite(connection).Options;
+            //var optionsBang = new DbContextOptionsBuilder<BusinessBangDbContext>().UseSqlite(connection).Options;
 
-            using (var context = new BusinessBangDbContext(optionsBang))
-            {
-                context.GetService<IRelationalDatabaseCreator>().CreateTables();
-            }
+            //using (var context = new BusinessBangDbContext(optionsBang))
+            //{
+            //    context.GetService<IRelationalDatabaseCreator>().CreateTables();
+            //}
 
-            var optionsExt = new DbContextOptionsBuilder<BusinessExtDbContext>().UseSqlite(connection).Options;
+            //var optionsExt = new DbContextOptionsBuilder<BusinessExtDbContext>().UseSqlite(connection).Options;
 
-            using (var context = new BusinessExtDbContext(optionsExt))
-            {
-                context.GetService<IRelationalDatabaseCreator>().CreateTables();
-            }
+            //using (var context = new BusinessExtDbContext(optionsExt))
+            //{
+            //    context.GetService<IRelationalDatabaseCreator>().CreateTables();
+            //}
 
             return connection;
         }

+ 44 - 0
MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/EntityFrameworkTestDataSeedContributor.cs

@@ -0,0 +1,44 @@
+using Bussiness.Model.SIM;
+using NSubstitute;
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Data;
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Domain.Repositories;
+using Volo.Abp.MultiTenancy;
+
+namespace Bussiness.EntityFrameworkCore.Test
+{
+    public class EntityFrameworkTestDataSeedContributor : IDataSeedContributor, ITransientDependency
+    {
+        private readonly ICurrentTenant _currentTenant;
+
+        private readonly IRepository<sim_base, long> _simbaseRepository;
+
+        public EntityFrameworkTestDataSeedContributor(ICurrentTenant currentTenant, IRepository<sim_base, long> simbaseRepository)
+        {
+            _currentTenant = currentTenant;
+            _simbaseRepository = simbaseRepository;
+        }
+
+        public async Task SeedAsync(DataSeedContext context)
+        {
+            /* Seed additional test data... */
+            using (_currentTenant.Change(context?.TenantId))
+            {
+                await Seedsim_baseAsync();
+            }
+        }
+
+
+
+        private async Task Seedsim_baseAsync()
+        {
+            var testissue = new sim_base { factory_id = 10101, tenant_id = 101, org_id = 101, sim_grade = "AA", sim_level = 1, rise_cycle = 0.5m, interval_days = 1, rise_time = DateTime.Now };
+            testissue.GenerateNewId();
+            await _simbaseRepository.InsertAsync(testissue);
+        }
+    }
+}
+
+

+ 0 - 13
MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/MES/IC/sim_issue_typeRepository_Tests.cs

@@ -1,13 +0,0 @@
-using Buissness.TestBase;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Bussiness.EntityFrameworkCore.Test
-{
-    public class sim_issue_typeRepository_Tests : sim_issue_typeRepository_Tests<CoreEntityFrameworkCoreTestModule>
-    {
-    }
-}

+ 18 - 14
MicroServices/Business/Bussiness.EntityFrameworkCore.Test/EntityFrameworkCore/Samples/SampleRepositoryTests.cs

@@ -1,8 +1,10 @@
 using Bussiness.Model.SIM;
 using Microsoft.EntityFrameworkCore;
+using NSubstitute;
 using Shouldly;
 using System;
 using System.Linq;
+using System.Runtime.Intrinsics.Arm;
 using System.Threading.Tasks;
 using Volo.Abp.Domain.Repositories;
 using Volo.Abp.Identity;
@@ -15,7 +17,7 @@ namespace Bussiness.EntityFrameworkCore.Test.Samples
      * (like default AppUser repository IRepository<AppUser, Guid> here).
      * Only test your custom repository methods.
      */
-    public class SampleRepositoryTests : CoreEntityFrameworkCoreTestBase
+    public class SampleRepositoryTests : EntityFrameworkCoreTestBase
     {
         private readonly IRepository<sim_base, long> _simbaseRepository;
 
@@ -25,21 +27,23 @@ namespace Bussiness.EntityFrameworkCore.Test.Samples
         }
 
         [Fact]
-        public async Task Should_Query_AppUser()
+        public async Task Should_Be_Null()
         {
-            /* Need to manually start Unit Of Work because
-             * FirstOrDefaultAsync should be executed while db connection / context is available.
-             */
-            await WithUnitOfWorkAsync(async () =>
-            {
-                //Act
-                var simbase = await (await _simbaseRepository.GetQueryableAsync())
-                    .Where(u => u.rise_time>DateTime.MaxValue)
-                    .FirstOrDefaultAsync();
+            var testissue = new sim_base { factory_id = 10101, tenant_id = 101, org_id = 101, sim_grade = "AA", sim_level = 1, rise_cycle = 0.5m, interval_days = 1, rise_time = DateTime.Now };
+            testissue.GenerateNewId();
+            _simbaseRepository.InsertAsync(testissue);
+            var test= _simbaseRepository.FindAsync(u => u.rise_time > DateTime.MaxValue);
+            test.Result.ShouldBeNull();
+        }
 
-                //Assert
-                simbase.ShouldNotBeNull();
-            });
+        [Fact]
+        public async Task Should_Not_Be_Null()
+        {
+            var testissue = new sim_base { factory_id = 10101, tenant_id = 101, org_id = 101, sim_grade = "AA", sim_level = 1, rise_cycle = 0.5m, interval_days = 1, rise_time = DateTime.Now };
+            testissue.GenerateNewId();
+             _simbaseRepository.InsertAsync(testissue);
+            var test = _simbaseRepository.FindAsync(u => u.rise_time < DateTime.MaxValue);
+            test.Result.ShouldNotBeNull();
         }
     }
 }