96 lines
2.8 KiB
C#
96 lines
2.8 KiB
C#
using System;
|
|
using AntJob.Data;
|
|
using NewLife;
|
|
using Xunit;
|
|
|
|
namespace AntTest;
|
|
|
|
public class TemplateHelperTests
|
|
{
|
|
[Fact]
|
|
public void BuildTest()
|
|
{
|
|
var tt = @"/*use His*/
|
|
insert into t1(xxx) select * from t2 where time between {dt} and {End}";
|
|
var start = DateTime.Now;
|
|
var end = start.AddSeconds(30);
|
|
|
|
var str = TemplateHelper.Build(tt, start, end);
|
|
Assert.NotNull(str);
|
|
Assert.NotEmpty(str);
|
|
Assert.DoesNotContain("{dt}", str);
|
|
Assert.DoesNotContain("{End}", str);
|
|
|
|
var rs = tt.Replace("{dt}", start.ToFullString()).Replace("{End}", end.ToFullString());
|
|
Assert.Equal(rs, str);
|
|
}
|
|
|
|
[Fact]
|
|
public void BuildTest2()
|
|
{
|
|
var tt = @"/*use His*/
|
|
insert into t1(xxx) select * from t2 where time between {dt:yyMMdd} and {End:HH:mm:ss}";
|
|
var start = DateTime.Now;
|
|
var end = start.AddSeconds(30);
|
|
|
|
var str = TemplateHelper.Build(tt, start, end);
|
|
Assert.NotNull(str);
|
|
Assert.NotEmpty(str);
|
|
Assert.DoesNotContain("{dt:yyMMdd}", str);
|
|
Assert.DoesNotContain("{End:HH:mm:ss}", str);
|
|
|
|
var rs = tt.Replace("{dt:yyMMdd}", start.ToString("yyMMdd")).Replace("{End:HH:mm:ss}", end.ToString("HH:mm:ss"));
|
|
Assert.Equal(rs, str);
|
|
}
|
|
|
|
[Fact]
|
|
public void BuildTest3()
|
|
{
|
|
var tt = @"/*use His*/
|
|
insert into t1(xxx) select * from t2 where time between {dt:yyMMdd} and {End:HH:mm:ss} time2 between {dt:yyMMdd} and {End:yyMMdd}";
|
|
var start = DateTime.Now;
|
|
var end = start.AddSeconds(30);
|
|
|
|
var str = TemplateHelper.Build(tt, start, end);
|
|
Assert.NotNull(str);
|
|
Assert.NotEmpty(str);
|
|
Assert.DoesNotContain("{dt:yyMMdd}", str);
|
|
Assert.DoesNotContain("{End:HH:mm:ss}", str);
|
|
Assert.DoesNotContain("{End:yyMMdd}", str);
|
|
|
|
var rs = tt
|
|
.Replace("{dt:yyMMdd}", start.ToString("yyMMdd"))
|
|
.Replace("{End:HH:mm:ss}", end.ToString("HH:mm:ss"))
|
|
.Replace("{End:yyMMdd}", end.ToString("yyMMdd"))
|
|
;
|
|
Assert.Equal(rs, str);
|
|
}
|
|
|
|
[Fact]
|
|
public void BuildTest4()
|
|
{
|
|
var tt = @"/*use his*/
|
|
select * from t1 where time between '{dt}' and '{End}'
|
|
|
|
/*use hist_bak*/
|
|
delete from t2 where time between '{dt}' and '{End}';
|
|
|
|
/*use hist_bak*/
|
|
/*batchinsert t2*/
|
|
";
|
|
var start = DateTime.Now;
|
|
var end = start.AddSeconds(30);
|
|
|
|
var str = TemplateHelper.Build(tt, start, end);
|
|
Assert.NotNull(str);
|
|
Assert.NotEmpty(str);
|
|
Assert.DoesNotContain("{dt}", str);
|
|
Assert.DoesNotContain("{End}", str);
|
|
|
|
var rs = tt
|
|
.Replace("{dt}", start.ToFullString())
|
|
.Replace("{End}", end.ToFullString())
|
|
;
|
|
Assert.Equal(rs, str);
|
|
}
|
|
} |