Skip to content

Commit 52ca58f

Browse files
committed
Адаптировал тесты
1 parent e06de8c commit 52ca58f

File tree

3 files changed

+17
-17
lines changed

3 files changed

+17
-17
lines changed

src/OneScript.StandardLibrary/OneScript.StandardLibrary.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
<TargetFramework>$(TargetFrameworkVersion)</TargetFramework>
66
<Configurations>Debug;Release;LinuxDebug</Configurations>
77
<Platforms>AnyCPU</Platforms>
8+
<LangVersion>12</LangVersion>
89
</PropertyGroup>
910

1011
<PropertyGroup>

src/Tests/OneScript.Core.Tests/HelperClasses/TestClassWithConverters.cs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,6 @@ public TestDto ReturnValueConversion()
3636
[BslValueConverter<TestDtoConverter>]
3737
public TestDto DtoProperty { get; set; }
3838

39-
[ContextProperty("ДТОТолькоЧтение", "DtoReadOnly", CanWrite = false)]
40-
[BslValueConverter<TestDtoConverter>]
41-
public TestDto DtoReadOnlyProperty => new TestDto { Integer = 100 };
42-
4339
[ScriptConstructor]
4440
public static IValue DefaultConstructor([BslValueConverter<TestDtoConverter>] TestDto dto)
4541
{

src/Tests/OneScript.Core.Tests/ValueConvertersTest.cs

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -79,46 +79,49 @@ public void CallsConverterForReturnValue()
7979
}
8080

8181
[Fact]
82-
public void CallsConverterForPropertyReadWrite()
82+
public void CallsConverterForPropertyWrite()
8383
{
8484
var engine = CreateEngine();
8585
var compiler = engine.GetCompilerService();
8686

8787
var code = engine.Loader.FromString(
8888
"Перем Результат Экспорт;\n" +
89-
"Instance.ДТО = Новый Структура(\"Integer\", 77);\n" +
90-
"Результат = Instance.ДТО;");
89+
"Instance.ДТО = Новый Структура(\"Integer\", 77);\n");
9190

9291
var context = new ExternalContextData();
9392
context.Add("Instance", new TestClassWithConverters());
9493

9594
var module = engine.AttachedScriptsFactory.CompileModuleFromSource(compiler, code, context, engine.NewProcess());
9695

97-
var instance = engine.NewObject(module, engine.NewProcess(), context);
98-
var result = instance.GetPropValue("Результат") as StructureImpl;
99-
result.Should().NotBeNull();
100-
result!.GetIndexedValue(ValueFactory.Create("Integer")).AsNumber().Should().Be(77);
96+
engine.NewObject(module, engine.NewProcess(), context);
97+
98+
context["Instance"].As<TestClassWithConverters>().DtoProperty.Integer.Should().Be(77);
10199
}
102100

103101
[Fact]
104-
public void CallsConverterForReadOnlyProperty()
102+
public void CallsConverterForPropertyRead()
105103
{
106104
var engine = CreateEngine();
107105
var compiler = engine.GetCompilerService();
108106

109-
var code = engine.Loader.FromString(
110-
"Перем Результат Экспорт;\n" +
111-
"Результат = Instance.ДТОТолькоЧтение;");
107+
var code = engine.Loader.FromString("Перем Результат Экспорт;\n" +
108+
"Результат = Instance.ДТО;");
112109

113110
var context = new ExternalContextData();
114-
context.Add("Instance", new TestClassWithConverters());
111+
context.Add("Instance", new TestClassWithConverters
112+
{
113+
DtoProperty = new TestDto
114+
{
115+
Integer = 77
116+
}
117+
});
115118

116119
var module = engine.AttachedScriptsFactory.CompileModuleFromSource(compiler, code, context, engine.NewProcess());
117120

118121
var instance = engine.NewObject(module, engine.NewProcess(), context);
119122
var result = instance.GetPropValue("Результат") as StructureImpl;
120123
result.Should().NotBeNull();
121-
result!.GetIndexedValue(ValueFactory.Create("Integer")).AsNumber().Should().Be(100);
124+
result!.GetIndexedValue(ValueFactory.Create("Integer")).AsNumber().Should().Be(77);
122125
}
123126

124127
private static ScriptingEngine CreateEngine()

0 commit comments

Comments
 (0)