Skip to content

Commit e264d43

Browse files
authored
Merge pull request #463 from DataObjects-NET/master-non-csharp-test-projects
Non-CSharp test projects update
2 parents c9c92ab + 0cb314c commit e264d43

35 files changed

Lines changed: 3419 additions & 1148 deletions

Directory.Build.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,13 +66,13 @@
6666
<LangVersion>12.0</LangVersion> <!-- default language for net8.0 -->
6767
</PropertyGroup>
6868

69-
<PropertyGroup Condition = "$(Configuration.Contains('Debug')) == 'true'">
69+
<PropertyGroup Condition = "$(Configuration.Contains('Debug')) == 'true' AND $(MSBuildProjectName.Contains('Tests.VB')) == 'false'">
7070
<DefineConstants>$(DefineConstants);TRACE;DEBUG</DefineConstants>
7171
<DebugSymbols>true</DebugSymbols>
7272
<DebugType>portable</DebugType>
7373
</PropertyGroup>
7474

75-
<PropertyGroup Condition = "$(Configuration.Contains('Release')) == 'true'">
75+
<PropertyGroup Condition = "$(Configuration.Contains('Release')) == 'true' AND $(MSBuildProjectName.Contains('Tests.VB')) == 'false'">
7676
<DefineConstants>$(DefineConstants);TRACE</DefineConstants>
7777
</PropertyGroup>
7878

Orm.sln

Lines changed: 146 additions & 131 deletions
Large diffs are not rendered by default.
Lines changed: 190 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,190 @@
1+
module ArithmeticOperationsCompilersTest
2+
3+
open FsUnit
4+
open NUnit.Framework
5+
open Xtensive.Orm
6+
open Xtensive.Orm.Tests
7+
open Model
8+
open Microsoft.FSharp.Linq
9+
10+
[<TestFixture>]
11+
type Fixture() =
12+
inherit AutoBuildTest()
13+
14+
override this.BuildConfiguration() =
15+
let config = base.BuildConfiguration ()
16+
config.Types.Register typeof<X>
17+
config
18+
19+
[<Test>]
20+
member this.AdditionStringTest() =
21+
use session = base.Domain.OpenSession ()
22+
use ts = session.OpenTransaction ()
23+
X (StringField = "John") |> ignore
24+
let alll = session.Query.All<X> ()
25+
let query =
26+
query {
27+
for x in alll do
28+
if (x.StringField + x.StringField) = "JohnJohn" then
29+
yield x
30+
}
31+
let list = query |> Seq.toArray
32+
Assert.That(list.Length, Is.EqualTo(1))
33+
let fetched = list.[0]
34+
Assert.That(fetched.StringField, Is.EqualTo("John"))
35+
36+
[<Test>]
37+
member this.AdditionDateTimeTest() =
38+
use session = base.Domain.OpenSession ()
39+
use ts = session.OpenTransaction ()
40+
X (DateTimeField = new System.DateTime(System.DateTime.Now.Year, 2, 15)) |> ignore
41+
let alll = session.Query.All<X> ()
42+
let query =
43+
query {
44+
for x in alll do
45+
if (x.DateTimeField + System.TimeSpan.FromDays(2)) > new System.DateTime(System.DateTime.Now.Year, 2, 15) then
46+
yield x
47+
}
48+
let list = query |> Seq.toArray
49+
Assert.That(list.Length, Is.EqualTo(1))
50+
let fetched = list.[0]
51+
Assert.That(fetched.DateTimeField, Is.EqualTo(new System.DateTime(System.DateTime.Now.Year, 2, 15)))
52+
53+
[<Test>]
54+
member this.AdditionTimeSpanTest() =
55+
Require.ProviderIsNot (StorageProvider.PostgreSql)
56+
use session = base.Domain.OpenSession ()
57+
use ts = session.OpenTransaction ()
58+
X (TimeSpanField = System.TimeSpan.FromTicks(111222333)) |> ignore
59+
let alll = session.Query.All<X> ()
60+
let query =
61+
query {
62+
for x in alll do
63+
if (x.TimeSpanField + System.TimeSpan.FromDays(2)) > System.TimeSpan.FromTicks(111222333) + System.TimeSpan.FromDays(1) then
64+
yield x
65+
}
66+
let list = query |> Seq.toArray
67+
Assert.That(list.Length, Is.EqualTo(1))
68+
let fetched = list.[0]
69+
Assert.That(fetched.TimeSpanField, Is.EqualTo(System.TimeSpan.FromTicks(111222333)))
70+
71+
[<Test>]
72+
member this.AdditionDecimalTest() =
73+
use session = base.Domain.OpenSession ()
74+
use ts = session.OpenTransaction ()
75+
X (DecimalField = decimal 16.0) |> ignore
76+
let alll = session.Query.All<X> ()
77+
let query =
78+
query {
79+
for x in alll do
80+
if x.DecimalField + x.DecimalField <= decimal 35 then
81+
yield x
82+
}
83+
let list = query |> Seq.toArray
84+
Assert.That(list.Length, Is.EqualTo(1))
85+
let fetched = list.[0]
86+
Assert.That(fetched.DecimalField, Is.EqualTo(decimal 16))
87+
88+
[<Test>]
89+
member this.SubtractionDateTimeTest1() =
90+
use session = base.Domain.OpenSession ()
91+
use ts = session.OpenTransaction ()
92+
X (DateTimeField = new System.DateTime(System.DateTime.Now.Year, 2, 15)) |> ignore
93+
let alll = session.Query.All<X> ()
94+
let query =
95+
query {
96+
for x in alll do
97+
if (x.DateTimeField - System.TimeSpan.FromDays(2)) > new System.DateTime(System.DateTime.Now.Year, 2, 10) then
98+
yield x
99+
}
100+
let list = query |> Seq.toArray
101+
Assert.That(list.Length, Is.EqualTo(1))
102+
let fetched = list.[0]
103+
Assert.That(fetched.DateTimeField, Is.EqualTo(new System.DateTime(System.DateTime.Now.Year, 2, 15)))
104+
105+
[<Test>]
106+
member this.SubtractionDateTimeTest2() =
107+
use session = base.Domain.OpenSession ()
108+
use ts = session.OpenTransaction ()
109+
X (DateTimeField = new System.DateTime(System.DateTime.Now.Year, 2, 15)) |> ignore
110+
let alll = session.Query.All<X> ()
111+
let query =
112+
query {
113+
for x in alll do
114+
if (x.DateTimeField - new System.DateTime(System.DateTime.Now.Year, 2, 10)) > System.TimeSpan.FromDays(2) then
115+
yield x
116+
}
117+
let list = query |> Seq.toArray
118+
Assert.That(list.Length, Is.EqualTo(1))
119+
let fetched = list.[0]
120+
Assert.That(fetched.DateTimeField, Is.EqualTo(new System.DateTime(System.DateTime.Now.Year, 2, 15)))
121+
122+
[<Test>]
123+
member this.SubtractionTimeSpanTest() =
124+
Require.ProviderIsNot (StorageProvider.PostgreSql)
125+
use session = base.Domain.OpenSession ()
126+
use ts = session.OpenTransaction ()
127+
X (TimeSpanField = System.TimeSpan.FromTicks(111222333)) |> ignore
128+
let alll = session.Query.All<X> ()
129+
let query =
130+
query {
131+
for x in alll do
132+
if (x.TimeSpanField - System.TimeSpan.FromTicks(111222)) > System.TimeSpan.FromTicks(111222) then
133+
yield x
134+
}
135+
let list = query |> Seq.toArray
136+
Assert.That(list.Length, Is.EqualTo(1))
137+
let fetched = list.[0]
138+
Assert.That(fetched.TimeSpanField, Is.EqualTo(System.TimeSpan.FromTicks(111222333)))
139+
140+
[<Test>]
141+
member this.SubtractionDecimalTest() =
142+
use session = base.Domain.OpenSession ()
143+
use ts = session.OpenTransaction ()
144+
X (DecimalField = decimal 16.0) |> ignore
145+
let alll = session.Query.All<X> ()
146+
let query =
147+
query {
148+
for x in alll do
149+
if x.DecimalField - x.DecimalField + decimal 3 <= decimal 5 then
150+
yield x
151+
}
152+
let list = query |> Seq.toArray
153+
Assert.That(list.Length, Is.EqualTo(1))
154+
let fetched = list.[0]
155+
Assert.That(fetched.DecimalField, Is.EqualTo(decimal 16))
156+
157+
[<Test>]
158+
member this.MultiplyDecimalTest() =
159+
Require.ProviderIsNot StorageProvider.Firebird
160+
use session = base.Domain.OpenSession ()
161+
use ts = session.OpenTransaction ()
162+
X (DecimalField = decimal 16.0) |> ignore
163+
let alll = session.Query.All<X> ()
164+
let query =
165+
query {
166+
for x in alll do
167+
if x.DecimalField * x.DecimalField <= decimal 350 then
168+
yield x
169+
}
170+
let list = query |> Seq.toArray
171+
Assert.That(list.Length, Is.EqualTo(1))
172+
let fetched = list.[0]
173+
Assert.That(fetched.DecimalField, Is.EqualTo(decimal 16))
174+
175+
[<Test>]
176+
member this.DivideDecimalTest() =
177+
use session = base.Domain.OpenSession ()
178+
use ts = session.OpenTransaction ()
179+
X (DecimalField = decimal 16.0) |> ignore
180+
let alll = session.Query.All<X> ()
181+
let query =
182+
query {
183+
for x in alll do
184+
if x.DecimalField / decimal 2 <= decimal 16 then
185+
yield x
186+
}
187+
let list = query |> Seq.toArray
188+
Assert.That(list.Length, Is.EqualTo(1))
189+
let fetched = list.[0]
190+
Assert.That(fetched.DecimalField, Is.EqualTo(decimal 16))

0 commit comments

Comments
 (0)