mirror of
https://github.com/dotnetcore/Util.git
synced 2026-10-20 22:26:14 +08:00
e90f41f80c
2. 对文字提示, 气泡卡片 ,气泡确认框相关扩展方法进行重构. 3. 重构输入框自动完成组件, 调整表达式绑定相关设置. 4. 补齐 <util-list> 相关标签的属性. 5. 修复在未设置 ngModel, 或已设置 formControlName 时, 输入框 `允许清除` 全局配置导致的问题.
84 lines
3.4 KiB
C#
84 lines
3.4 KiB
C#
using Util.Data;
|
|
using Util.Generators.Configuration;
|
|
using Util.Generators.Contexts;
|
|
using Util.Generators.Tests.Samples;
|
|
using Xunit;
|
|
|
|
namespace Util.Generators.Tests.Contexts {
|
|
/// <summary>
|
|
/// 项目上下文测试
|
|
/// </summary>
|
|
public class ProjectContextTest {
|
|
/// <summary>
|
|
/// 测试复制
|
|
/// </summary>
|
|
[Fact]
|
|
public void TestClone() {
|
|
//创建项目上下文
|
|
var generatorContext = new GeneratorContext {
|
|
TemplateRootPath = "Templates",
|
|
OutputRootPath = "Output"
|
|
};
|
|
var projectContext = new ProjectContext( generatorContext ) {
|
|
Name = "Project",
|
|
UnitOfWorkName = "UnitOfWork",
|
|
DbType = DatabaseType.MySql,
|
|
TargetDbType = DatabaseType.PgSql,
|
|
ConnectionString = "ConnectionString",
|
|
Client = {
|
|
AppName = "ClientApp",
|
|
Port = "Port"
|
|
},
|
|
Enabled = true,
|
|
Utc = true,
|
|
I18n = true,
|
|
EnableSchema = true,
|
|
ProjectType = ProjectType.Ui,
|
|
ApiPort = "80",
|
|
UiPort = "90",
|
|
Extend = "{\"Id\":\"1\",\"Name\":\"Name\"}"
|
|
};
|
|
|
|
//添加架构列表
|
|
projectContext.Schemas.Add( "a" );
|
|
projectContext.Schemas.Add( "b" );
|
|
|
|
//添加实体上下文1
|
|
var entityContext1 = new EntityContext( projectContext, "a" );
|
|
projectContext.Entities.Add( entityContext1 );
|
|
|
|
//添加实体上下文2
|
|
var entityContext2 = new EntityContext( projectContext, "b" );
|
|
projectContext.Entities.Add( entityContext2 );
|
|
|
|
//复制副本
|
|
var clone = projectContext.Clone( generatorContext );
|
|
|
|
//验证项目上下文
|
|
Assert.NotSame( projectContext, clone );
|
|
Assert.Equal( projectContext.Name, clone.Name );
|
|
Assert.Equal( projectContext.UnitOfWorkName, clone.UnitOfWorkName );
|
|
Assert.Equal( projectContext.DbType, clone.DbType );
|
|
Assert.Equal( projectContext.TargetDbType, clone.TargetDbType );
|
|
Assert.Equal( projectContext.ConnectionString, clone.ConnectionString );
|
|
Assert.Equal( projectContext.Client.AppName, clone.Client.AppName );
|
|
Assert.Equal( projectContext.Client.Port, clone.Client.Port );
|
|
Assert.Equal( projectContext.Enabled, clone.Enabled );
|
|
Assert.Equal( projectContext.Utc, clone.Utc );
|
|
Assert.Equal( projectContext.I18n, clone.I18n );
|
|
Assert.Equal( projectContext.ProjectType, clone.ProjectType );
|
|
Assert.Equal( projectContext.ApiPort, clone.ApiPort );
|
|
Assert.Equal( projectContext.UiPort, clone.UiPort );
|
|
Assert.Equal( projectContext.EnableSchema, clone.EnableSchema );
|
|
Assert.Equal( projectContext.GetExtend<TestExtend>().Id, clone.GetExtend<TestExtend>().Id );
|
|
Assert.Equal( projectContext.GetExtend<TestExtend>().Name, clone.GetExtend<TestExtend>().Name );
|
|
|
|
//验证架构列表
|
|
Assert.Equal( 2, clone.Schemas.Count );
|
|
|
|
//验证实体上下文
|
|
Assert.Equal( 2, clone.Entities.Count );
|
|
}
|
|
}
|
|
}
|