Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Ejercicio 7
- /* Una cerradura con combinación tiene las siguientes propiedades básicas: la combinación
- (una secuencia de tres números) está oculta, la cerradura sólo se puede abrir si se le
- provee la combinación correcta, para cerrar la cerradura no hace falta la combinación, la
- combinación se puede cambiar pero sólo si se conoce la combinación vieja. Implementar
- en Java la clase CerraduraConCombinación y hacer una clase para testearla.*/
- public class CerraduraConCombinacion {
- private int combinacion;
- private boolean estado;
- public CerraduraConCombinacion (int combinacion){
- this.combinacion = combinacion;
- estado = false;
- }
- public void cerrar(){
- if (estado){
- estado = false;
- }
- }
- public void abrir (int combinacion){
- if (!estado && combinacion == this.combinacion){
- estado = true;
- }
- else if (combinacion != this.combinacion){
- Error combinacionErronea = new Error ("La combinación ingresada no es correcta");
- throw combinacionErronea;
- }
- }
- public void cambiarCombinacion (int viejaCombinacion, int nuevaCombinacion){
- if (viejaCombinacion == this.combinacion){
- this.combinacion = nuevaCombinacion;
- }
- else{
- Error combinacionErronea = new Error ("La combinación ingresada no es correcta");
- throw combinacionErronea;
- }
- }
- public boolean getEstado(){
- return (estado);
- }
- }
- import org.junit.Assert;
- import org.junit.Test;
- public class PruebaCerraduraConCombinacion {
- CerraduraConCombinacion candado = new CerraduraConCombinacion (193);
- @Test
- public void pruebaAbrir(){
- candado.abrir(193);
- Assert.assertTrue(candado.getEstado());
- }
- @Test
- public void pruebaCerrar(){
- candado.cerrar();
- Assert.assertFalse(candado.getEstado());
- }
- @Test
- public void pruebaCambiarCombinacion(){
- candado.cambiarCombinacion(193, 123);
- candado.abrir (123);
- Assert.assertTrue (candado.getEstado());
- }
- @Test (expected = Error.class)
- public void pruebaAbrirCombinacionErronea(){
- candado.abrir(111);
- }
- @Test (expected = Error.class)
- public void pruebaCambiarCombinacionErronea(){
- candado.cambiarCombinacion(111, 123);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement