Advertisement
fmbalvarez

Guía 1 - CerraduraConCombinacion

May 11th, 2015
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.65 KB | None | 0 0
  1. /**
  2.  * Created by felipealvarez on 11/5/15.
  3.  * Una cerradura con combinación tiene las siguientes propiedades básicas: la
  4.  combinación (una secuencia de tres números) está oculta, la cerradura sólo se
  5.  puede abrir si se le provee la combinación correcta, para cerrar la cerradura no
  6.  hace falta la combinación, la combinación se puede cambiar pero sólo si se
  7.  conoce la combinación vieja. Implementar en Java la clase
  8.  CerraduraConCombinación y hacer una clase para testearla.
  9.  */
  10. public class CerraduraConCombinacion {
  11.  
  12.     private int combinacion;
  13.     private boolean abierta;
  14.  
  15.     public CerraduraConCombinacion(int combinacion){
  16.         if ((combinacion < 100 && combinacion >-100) || combinacion >= 1000 || combinacion <= -1000){
  17.             throw new Error("La combinacion debe constar de tres numeros");
  18.         }
  19.         this.combinacion = combinacion;
  20.         this.abierta = false;
  21.     }
  22.  
  23.     public void abrir(int combinacion){
  24.         if (combinacion == this.combinacion){
  25.             abierta = true;
  26.         } else {
  27.             throw new Error("La combinacion es incorrecta");
  28.         }
  29.     }
  30.  
  31.     public void cerrar(){
  32.         abierta = false;
  33.     }
  34.  
  35.     public void cambiarCombinacion(int combinacionActual, int nuevaCombinacion){
  36.         if (combinacionActual == this.combinacion){
  37.             this.combinacion = nuevaCombinacion;
  38.         }
  39.     }
  40.  
  41.     public boolean getAbierta(){
  42.         return abierta;
  43.     }
  44. }
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53. /**
  54.  * Created by felipealvarez on 11/5/15.
  55.  */
  56.  
  57. import org.junit.*;
  58.  
  59. public class CerraduraConCombinacionTest {
  60.  
  61.     @Test
  62.     public void probarCrearConCombinacion(){
  63.         CerraduraConCombinacion c = new CerraduraConCombinacion(123);
  64.         Assert.assertFalse(c.getAbierta());
  65.     }
  66.  
  67.     @Test (expected = Error.class)
  68.     public void probarConCombinacionIncorrecta(){
  69.         CerraduraConCombinacion c = new CerraduraConCombinacion(12);
  70.     }
  71.  
  72.     @Test
  73.     public void probarAbrir(){
  74.         CerraduraConCombinacion c = new CerraduraConCombinacion(123);
  75.         Assert.assertFalse(c.getAbierta());
  76.         c.abrir(123);
  77.         Assert.assertTrue(c.getAbierta());
  78.     }
  79.  
  80.     @Test (expected = Error.class)
  81.     public void probarAbrirConCombinacionIncorrecta(){
  82.         CerraduraConCombinacion c = new CerraduraConCombinacion(123);
  83.         c.abrir(321);
  84.     }
  85.  
  86.     @Test
  87.     public void probarCerrar(){
  88.         CerraduraConCombinacion c = new CerraduraConCombinacion(123);
  89.         Assert.assertFalse(c.getAbierta());
  90.         c.abrir(123);
  91.         Assert.assertTrue(c.getAbierta());
  92.         c.cerrar();
  93.         Assert.assertFalse(c.getAbierta());
  94.     }
  95.  
  96.  
  97.  
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement