Me continuamos, Vamos a ver las condicionales en Cunit, que lo podemos implementar de distinta forma,
pero en general las condicionales son pruebas unitarias que se van a ejecutar en cierto escenario.
No siempre va a depender un poco del contexto.
Por ejemplo, correr una prueba solamente si el sistema operativo, el Linux, pero de lo contrario
si estamos en Windows quizá no tenga mucho sentido, ya sea por la configuración del sistema operativo,
por la característica.
Quizás en Windows no se aplica, pero si se aplicar correctamente en Linux Mint Touch se fijan.
Entonces podríamos agrupar esta prueba unitaria para que se ejecuten en cierto contexto en 7 configuraciones
y no solamente en sistema operativo, sino también según la versión de Java, por ejemplo, ejecutar
solamente en Java 1.8 8 o en la versión 11 Villada.
Claro, porque cada uno tiene su propia característica y lo mismo quizá no tenga sentido ejecutar una
prueba unitaria donde vamos a probar cierta característica del lenguaje.
Vamos a utilizar algunas funcionalidades, pero quizá en otra versión no esté disponible.
Lo mismo para el ambiente.
Otro contexto podríamos tener una variable, no sé.
A ver, ambiente, desarrollo, producción cada una.
Esta variable va a tener configuraciones propia, alguna cierta característica y cierta prueba también
cierta.
Preguntaria entonces en desarrollo podríamos querer ejecutarse esta prueba y no por ejemplo en producción?
Bien, veamos un ejemplo sobre la misma clase.
Cuenta Test.
Vamos a bajar al final.
Por acá.
Acá.
Bueno, acá tenemos este método, vamos a crear otro solamente para probar esto.
Nada más.
Un método texto.
Solo Windows dentro cuerpo.
Bueno, podríamos tener varios acepcion, digo que tipo como el que tenemos acá, pero quiero ejecutar
este test con el ArruÃ usando una anotación en Eifel habilitado para cierta variable de ambiente, una
en particular o varias variables ambiente un arreglo separado por coma, lo mismo con los sitten property
properties o property en nabeel on host o ese sistema operativo.
Una condicional o ese arte completamos con control barra espacio llega tenemos o ese punto windows linux,
solaris making touch otro.
Por ejemplo Windows solamente se va a ejecutar en una maquina windows y en más podríamos tener un método
muy similar.
Lo vamos a copiar, lo pegamos abajo, por ejemplo solo en Mac y en Linux y Mac.
Perfecto.
Entonces si se va a ejecutar en ambos, solo en Linux y Mac, acá podríamos tener septo, un arreglo
con las llaves que colocamos o ese punto Linux coma o ese punto Mac de ejecutar en ambos.
Bien, probemos cheff controles C10.
Bien, acá si se fijan, pasó el test y no lo debería haber pasado porque estaba en Windows y está ejecutando
solamente para Linux y Mackintosh esta prueba.
Pero bueno, lo pasó porque solamente ejecutamos el método y en realidad para que funcione estas notaciones
tenemos que ejecutar en la clase.
Es decir, fuera el método, no el método en particular, sino la clase completa con métodos fuera.
Ejecutamos la clase.
Nunca vamos a rezar.
Al final se dejan Teeth, solo Linux y Making Touch.
Está perfecto, deshabilitado disable porque estamos solamente en Windows 10 y no en Mackintosh o en
Linux, por lo tanto se deshabilita, mientras que test solo Windows si se ejecuta no hay ningún problema.
Pero si cuando tengo en Naples ON o es en un sistema operativo en particular, también tenemos discipli.
Al contrario, no ejecutar cuando el sistema operativo es uno en particular.
Por ejemplo, vamos a crear un método test, por ejemplo, no, Windows tiene un ejecuta en Windows.
Perfecto.
Entonces lo anotamos con el ArruÃ Disable on o es perfecto?
Punto Windows.
Y también podría ser un arreglo separador coma tal como lo tengo acá, entonces.
Está acá, no se va a ejecutar importanteque ejecutemos afuera y ejecutamos la prueba completa.
Levantamos.
Y vemos se fijan test, no cuentos, se Windows, lo habilitamos.
Y lo mismo acá solamente Linux y Mackintosh.
Porque estamos cuentos, por ejemplo.
Y así podemos ejecutar esta prueba dependiendo sistema operativo.
Ahora algo muy similar tenemos con las versiones de Java, por ejemplo, si estamos trabajando con la
9, con las 12, con 13, en fin, con un 8.
Y lo mismo vamos a tener, por ejemplo, un método, no sé, sólo en Yeva 8, JDK 8, por ejemplo.
Vamos a ver, y lo mismo con el arroba.
Una anotación en nable on j r, pero on jre este de acá jre una constante también llega tenemos lleva
8 9 hasta la actual, que es la 15, por ejemplo, y lleva 8.
Solamente acorrer solamente se habilita en 8.
Levantemos.
Acá tenemos solo JDK 8 deshabilitada.
Perfecto, porque estoy usando, gustándole 15 ahora otro método.
Bien, esta prueba la quise ser dentro de la misma clase, aunque podría haber creado otra clase test.
El movimiento es un método y algo separado, más ordenado.
Cierto.
Pero después vamos a ver un tema que se llama pruebas unitarias anidadas nester y ahí podemos tener
una clase y dentro anidación es de su clase.
Se fijan entonces la idea?
Bueno, estos métodos con condicionales lo pudieron meter después cuando veamos en clases anidada dentro
de una clase anidada en cuenta texto.
En el fondo para agrupar y también para dar cierto orden y estructura a nuestra clase.
Pero vamos a ver, entonces esa es la idea más que nada.
No se preocupen porque podría nicipio.
Pero profesor, usted puede crear una clase separada para ver estos temas.
Pero bueno, lo vamos a ver de esta forma.
Después lo vamos a agrupar todo estos métodos y otro más que vamos a ver dentro de clase Sanidad.
Bien, vamos a continuar en Nabeel on.
J?
R.
Por ejemplo, J.
Ré bueno, punto 15.
Acá tenemos que la que estoy utilizando actualmente.
La última hasta la fecha se habilitará, nos habilitará.
Vamos a ver.
Por acá tenemos solo le puse Name is Isabelita.
Solo cambié el nombre JDK Hawkings.
Listo.
Ahí lo tenemos.
Ahora si lo ejecuto acaba aparecer solo JDK 15, por lo tanto se ejecuta bien, pero también tenemos
disable.
Voy a copiar esto mismo para poder visualizarlo.
Podría colocar solo.
Texto no JDK 15 que no se ejecute si la versión es 15 y en vez de nable dicembre,
perfecto sería el deshabilitar.
Acá ejecutamos.
Bueno, cuando ejecuto el método se ejecuta porque estoy dentro del método.
Pero la idea ejecutarlo afuera.
Siempre van a ejecutar la clase completa.
Entonces acá tenemos test, no JDK 15, perfecto.
Funcionaria bien, veamos otro tema que es habilitar si existe cierta propiedad de sistema o lo contrario
deshabilitar.
Si existe cierta propiedad sistema, entonces podríamos colocar el nombre esta propiedad que típicamente
de la máquina virtual de Java con el cual estamos trabajando, lo compramos con su valor.
Si se ajusta coincide con un valor, entonces lo ejecutamos o no lo ejecutamos deshabilitados.
Pero antes de eso, claro, porque quizá mucho no sepan qué valores tienen en su propiedades, entonces
vamos a tener un método de test para poder visualizar estas propiedades.
INSER De ese método le vamos a llamar imprimir system properties.
Perfecta imprimir esto.
Bajamos y la podemos obtener consiste en punto que Properties System punto guet properties y retorna
un tipo properties.
Perfecto control Schiff recortÃ creamos el property es la variable perfecta y recorremos la variable
mostrando sus valores.
Entonces properties punto for each usando una prisión blanda.
Acá se pasan dos argumentos en este Landau, Yaveh y valor porque finalmente es un mapa con el nombre
de la propiedad y el valor de la propiedad.
Entonces aquí Koma valio la flecha y acá vamos a imprimir.
Entonces Shout imprimimos acá la llave.
Concatenar los dos puntos.
El valor perfecto.
Ejecutemos esto para que veamos algunas propiedades.
Por ejemplo.
Tipicamente no sé la versión brillaba nuestra arquitectura.
Si 64. El Yussef Neith, por ejemplo de sistema operativo.
En fin.
Vamos a ejecutar.
Pero bueno, ejecutemos solamente el método.
En realidad este de acá.
Acá están todas las propiedades, pero de este método se fijan en nombre de 2.el valor, el nombre,
el valor.
Entonces podríamos tomar cualquiera ir comprando.
Por ejemplo, si el sistema operativo Windows 10 ejecutamos la prueba o deshabilitados si el país Yussef
Country es igual a ése.
Ejecutamos la prueba si no las habilitamos.
Y así cualquier característica el lenguaje y Yussef el lenguaje.
Ya que hay mucha enva el Yussef Name, la versión de Java, entonces dejan en fin de sistema operativo.
Entonces podemos amoldar nuestras propietarias según nuestra configuración, nuestro sistema, según
el servidor en el cual tengo trabajando los nodos.
En fin, acá tenemos la arquitectura bien.
Ejecutemos algunos de tus propiedades.
Vamos a probar.
Entonces vamos a crear un test método test yeva versión, por ejemplo, como alternativa a la que vimos
en Nabeel on j r.
De otra forma se fijan acá con el ArruÃ en Eifel if leja tenemos.
Bueno, tenemos varié el ambiente que después vamos a ver acá tenemos system property y siten property.
Vamos a ver en singular porque en plural.
Bueno, es una lista, pero vamos a ver, da una.
Entonces solamente si la propiedad coincide con un valor y por eso tenemos el nombre de tu propiedad.
Koma el valor named igual no podemos elegir.
Cualquiera lleva versión por acá, tiene esta nueva versión en algún lugar, en algún lugar va a estar
por acá ya.
Haversham Pero lo vamos a colocar yaba punto versión coma matches.
El valor puede ser el valor exacto o puede ser una aproximación con una expresión regular.
Pero yo quiero que sea exactamente la que estoy utilizando, por ejemplo 15 punto cero, punto 1.
Esa Bejan si coincide, entonces deberé ejecutar esto, si no coincide.
Si no tengo esa versión en específico, no lo ejecutar.
Vamos a ver.
Ejecutamos.
Test lleba versión neka, tema test version justamente tengo exactamente esta version, para qué pasa
si colocamos acá 2 por ejemplo y acá no sé, 14 vamos a ver.
Test yeva versión se fijan, no lo ejecuta, no consigue el valor 15.0 guntó 1, pero no calza con expresión
regular.
14 se fijan.
Ahora también podemos trabajar con expresiones regulares.
Por ejemplo.
No sé.
Punto estetico 15.
Totalmente con escríbala 15.
Si coincide con el 15.
Asterisco punto.
Vamos a ver.
De Cabo Cama test ya versión no coincide.
Bueno, porque ella cambió, que en realidad es punto asterisco, punto asterisco a ese punto asterisco
15.3 funcional.
Vamos a ver.
Test ya aversion, perfecto.
Si se fijan con esa presión regular, entonces quizás no es necesario colocar el velo completo, solamente
una aproximación con una presión y así también podríamos tener más prueba.
Test.
Método por ejemplo disable deshabilitar si la quitectura es 32, solamente que se ejecute en 64, por
ejemplo.
Entonces por acá Extrude de cerrar.
Solo 64.
Deseable.
If sisten property acá.
Deseable.
If sitten protest.
Name.
O ese punto art.
De arquitectura y matchs, lo mismo.
Punto asterisco 32 puntos tricos.
Entonces no diría está deshabilitado porque estamos en una arquitectura 64. Lenguaje y gustar.
Entonces si levantamos.
Por acá buscamos test solo 64 está perfecto.
Si colocamos acá 64. lo deshabilita o podríamos colocar no se copiamos este método tal cual.
Y al revés.
Test no?
64. La inversa en Nabeel.
Entonces nvel.
Si la propiedad es 64..
O mejor dicho, perdón acá.
32, claro.
Es decir, solamente lo editamos si 32, pero no 64 o bien dejamos 64 y acá sería solo 64.
Pero de otra forma, a la inversa, se fijan acá solo 64, pero deshabilitado el 32 y acá solo 64 con
acá el 64.
Con él en Aima se fijan diferente forma con una u otra ven lujar.
Así con 32 levantamos deria estás deshabilitado.
Adaptes no 64. Bien, lo mismo con el usuario ejecutar solamente si el Yuso n de uno en particular.
Y si ten property el nombre Houser punto name, llega el valor.
Por ejemplo, yo sé que envío es Augus tal cual Augus.
Entonces.
De esto yo seré directa, rehabilitado.
Bueno, está deshabilitado.
Habría que revisar.
Claro, Augus M.
Me faltó la MK.
Se fijan entonces hoy levantamos nuevamente.
Ya debería calzar.
Entonces yo sería imperfecto.
Levanto.
En fin.
Y así podemos probar muchos sisten properties.
De de la máquina virtual de Java y también podríamos configurar nuestras propias properties cuando levantamos
la prueba.
Por ejemplo, vamos a tener otro método por acá insert test método test desarrollo holder.
Por ejemplo, solamente se ejecutar cuando sea desarrollo y lo mismo enable if system properties name.
Igual no se le va poner en mayúscula.
Environment e n v corta.
Ese es el nombre de mi propiedad.
Todavía no existe el valor con Ratchett.
No voy a poner Defe ahora como no existe.
Obviamente no lo va a ejecutar, va a quedar deshabilitada.
Vamos a buscar acá se fijan, no existe, no existe esta propiedad, pero la podemos configurar y eso
sería acá en cuenta.
Test nos vamos a editar configuraciones.
Tiene que estar seleccionado, cuéntate la clase y acá es donde dicen vernos.
Ah, bueno, esta configuración o comando indica que ejecuta esta clase habilitando los acecha.
Entonces acá podemos habilitar nuestra variable ambiente.
Colocamos un signo menos de mayúscula en nombre de la variable environment menosde.
Significa que vamos a configurar un sisten property una propia sistema igual el valor de en minúscula.
Entonces en barómetro.
O el nombre que queramos def se fijen.
Aplicamos.
Ok, y ahora ejecutamos, pero nuestra configuración que editamos cuenta texto se dirigen.
Desde acá lo tenemos.
Se fija ahora si lo ejecuta porque ya configuramos el ambiente.
Perdón nuestra propia sistema como desarrollo y continúa la siguiente clase con variable de ambiente
en Eibar o Disable si existe existe alguna variable ambiente terminada que muy parecido a los sitten
property, pero varié el ambiente del sistema operativo.
Bien, nos vemos.