2 using System.Collections.Generic;
\r
6 using NUnit.Framework;
\r
7 using Test_NUnit.Linq_101_Samples;
\r
13 namespace Test_NUnit_MySql
\r
15 namespace Test_NUnit_OracleODP
\r
17 namespace Test_NUnit_Oracle
\r
19 namespace Test_NUnit_PostgreSql
\r
21 namespace Test_NUnit_Sqlite
\r
23 namespace Test_NUnit_Ingres
\r
24 #elif MSSQL && L2SQL
\r
25 namespace Test_NUnit_MsSql_Strict
\r
27 namespace Test_NUnit_MsSql
\r
29 namespace Test_NUnit_Firebird
\r
33 public class ReadTests_Maths : TestBase
\r
39 Northwind db = CreateDB();
\r
41 var q = from c in db.OrderDetails
\r
42 where Math.Abs((double)c.ProductID) > 0.0
\r
45 var list = q.ToList();
\r
46 Assert.IsTrue(list.Count > 0);
\r
52 Northwind db = CreateDB();
\r
54 var q = from c in db.OrderDetails
\r
55 where Math.Abs((double)(c.Quantity)) > 0.0
\r
58 var list = q.ToList();
\r
59 Assert.IsTrue(list.Count > 0);
\r
62 //Devuelve el valor absoluto (positivo) de una expresión numérica.
\r
66 #if !DEBUG && (SQLITE && MONO)
\r
72 Northwind db = CreateDB();
\r
74 var q = from c in db.OrderDetails
\r
75 where Math.Exp((double)(c.Quantity)) > 0
\r
78 var list = q.ToList();
\r
79 Assert.IsTrue(list.Count > 0);
\r
83 //Devuelve el exponente de la base e de la expresión especificada.
\r
88 //Devuelve el menor entero mayor o igual que una expresión numérica.
\r
90 #if !DEBUG && (SQLITE && MONO)
\r
96 Northwind db = CreateDB();
\r
98 var q = from c in db.OrderDetails
\r
99 where Math.Floor((double)(c.Discount)) > 0
\r
102 var list = q.ToList();
\r
107 //Devuelve el mayor entero que es menor o igual que una expresión numérica.
\r
111 #if !DEBUG && (SQLITE)
\r
115 public void Log01()
\r
117 Northwind db = CreateDB();
\r
119 var q = from c in db.OrderDetails
\r
120 where Math.Log((double)(c.Discount + 1)) > 0.0
\r
123 Assert.AreEqual(838, q.Count());
\r
126 #if !DEBUG && (SQLITE)
\r
130 public void Log02()
\r
132 Northwind db = CreateDB();
\r
134 var q = from c in db.OrderDetails
\r
135 where Math.Log((double)(c.Discount + 1),3.0) > 0.0
\r
138 Assert.AreEqual(838, q.Count());
\r
142 //Devuelve el logaritmo natural de una expresión numérica.
\r
145 #if !DEBUG && (SQLITE && MONO)
\r
149 public void Log03()
\r
151 Northwind db = CreateDB();
\r
153 var q = from c in db.OrderDetails
\r
154 where Math.Log10((double)(c.Discount + 1)) > 0.0
\r
157 Assert.AreEqual(838, q.Count());
\r
161 //Devuelve el logaritmo en base 10 de una expresión numérica.
\r
165 #if !DEBUG && SQLITE
\r
171 Northwind db = CreateDB();
\r
173 var q = from c in db.OrderDetails
\r
174 where Math.Pow((double)(c.Discount), 2.0) > 0
\r
177 var list = q.ToList();
\r
180 //Devuelve el resultado de elevar una expresión numérica a una determinada potencia.
\r
183 #if !DEBUG && (MSSQL && !L2SQL)
\r
187 public void Round()
\r
189 Northwind db = CreateDB();
\r
191 var q = from c in db.OrderDetails
\r
192 where Math.Round((double)(c.Discount), MidpointRounding.AwayFromZero) > 0
\r
195 var list = q.ToList();
\r
199 #if !DEBUG && (SQLITE || (MSSQL && !L2SQL))
\r
203 [ExpectedException(typeof(NotSupportedException))]
\r
204 public void Round02()
\r
206 Northwind db = CreateDB();
\r
208 var q = from c in db.OrderDetails
\r
209 where Math.Round((double)(c.Discount)) > 0
\r
212 var list = q.ToList();
\r
216 //Devuelve una expresión numérica, redondeada a la longitud o precisión especificada. .
\r
221 #if !DEBUG && (SQLITE && MONO)
\r
225 public void Sign01()
\r
227 Northwind db = CreateDB();
\r
229 var q = from c in db.OrderDetails
\r
230 where Math.Sign((double)(c.Discount)) > 0d
\r
233 var list = q.ToList();
\r
235 //Devuelve el signo positivo (+), cero (0) o negativo (-) de una expresión numérica.
\r
240 //Devuelve el cuadrado de una expresión numérica.
\r
244 #if !DEBUG && (SQLITE && MONO)
\r
250 Northwind db = CreateDB();
\r
253 var q = from c in db.OrderDetails
\r
254 where Math.Sqrt((double)(c.Discount)) > 0
\r
257 var list = q.ToList();
\r