From 7d86ee08ff8788c50ca887e93437b45ffe974b62 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Fri, 10 Mar 2017 11:19:34 -0400 Subject: [PATCH 01/42] commit1 --- .../coding/carlos/SpinWords.java | 37 +++++++++ .../coding/juan/bank_Machinne.java | 24 ++++++ .../coding/juan/eanValidator.java | 28 +++++++ .../coding/juan/movies/Children.java | 15 ++++ .../coding/juan/movies/Customer.java | 65 ++++++++++++++++ .../coding/juan/movies/Main.java | 10 +++ .../coding/juan/movies/Movie.java | 26 +++++++ .../coding/juan/movies/Rental.java | 19 +++++ .../coding/juan/movies/movieOperations.java | 14 ++++ .../fundacionjala/coding/juan/spinWords.java | 30 ++++++++ .../coding/carlos/SpinWordsTest.java | 76 +++++++++++++++++++ .../coding/juan/eanValidatorTest.java | 16 ++++ .../coding/juan/spinWordsTest.java | 57 ++++++++++++++ 13 files changed, 417 insertions(+) create mode 100644 src/main/java/org/fundacionjala/coding/carlos/SpinWords.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/bank_Machinne.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/eanValidator.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Children.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Customer.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Main.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Movie.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Rental.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/movieOperations.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/spinWords.java create mode 100644 src/test/java/org/fundacionjala/coding/carlos/SpinWordsTest.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/eanValidatorTest.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/spinWordsTest.java diff --git a/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java b/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java new file mode 100644 index 0000000..6685733 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java @@ -0,0 +1,37 @@ +package org.fundacionjala.coding.carlos; + +import java.util.stream.Collectors; +import java.util.stream.Stream; + +/** + * Write a function that takes in a string of one or more words, and returns the same string, + * but with all five or more letter words reversed (Just like the name of this Kata). + * Strings passed in will consist of only letters and spaces. + * Spaces will be included only when more than one word is present. + */ +public final class SpinWords { + + private static final int LIMIT = 5; + + private static final String SPACE_DELIMITER = " "; + + /** + * Constructor private. + */ + private SpinWords() { + } + + /** + * Takes in a string of one or more words, and returns the same string, + * but with all five or more letter words reversed. + * + * @param sentence String with words. + * @return the same string, but with all five or more letter words reversed. + */ + public static String spinWords(final String sentence) { + return Stream.of(sentence.split(SPACE_DELIMITER)) + .map(word -> word.length() >= LIMIT ? new StringBuilder(word).reverse().toString() : word) + .collect(Collectors.joining(SPACE_DELIMITER)); + } + +} diff --git a/src/main/java/org/fundacionjala/coding/juan/bank_Machinne.java b/src/main/java/org/fundacionjala/coding/juan/bank_Machinne.java new file mode 100644 index 0000000..a244aac --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/bank_Machinne.java @@ -0,0 +1,24 @@ +package org.fundacionjala.coding.juan; + +import java.util.HashMap; +import java.util.Map; + +/** + * Created by Administrator on 3/10/2017. + */ +public class bank_Machinne { + String document=null; + + Map m1 = new HashMap(); + m1.put( "|"+ + "|"+ + "|"+ + " ",1); + m1.put( "_"+ + " |" + "- " + "_|" + + ,2); + +} diff --git a/src/main/java/org/fundacionjala/coding/juan/eanValidator.java b/src/main/java/org/fundacionjala/coding/juan/eanValidator.java new file mode 100644 index 0000000..e7bb5b2 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/eanValidator.java @@ -0,0 +1,28 @@ +package org.fundacionjala.coding.juan; + +/** + * @author Juan Pablo + */ +public class eanValidator { + public static boolean validating(final String eanCode) { + int sum = 0; + int checksum = 0; + int finalNumbre = 12; + for(int i = 0; i < finalNumbre; i++) { + if(i%2 == 1) { + sum += ((eanCode.charAt(i)-48)*3); + } else { + sum += (eanCode.charAt(i)-48); + } + } + if (sum % 10 != 0) { + checksum = (10 -(sum % 10)); + } + if (eanCode.charAt(eanCode.length()-1)-48 == checksum) { + return true; + } + return false; + } +} + + diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Children.java b/src/main/java/org/fundacionjala/coding/juan/movies/Children.java new file mode 100644 index 0000000..5e18e24 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Children.java @@ -0,0 +1,15 @@ +package org.fundacionjala.coding.juan.movies; + +/** + * Created by Administrator on 3/10/2017. + */ +public class Children extends Movie{ + public static final int CHILDRENS = 2; + + public Children(String title, int priceCode) { + super(title,priceCode); + } + public int precio +} + + diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java b/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java new file mode 100644 index 0000000..cdf4c88 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java @@ -0,0 +1,65 @@ +package org.fundacionjala.coding.juan.movies; + +import java.util.Enumeration; +import java.util.Vector; + +class Customer { + private String _name; + private Vector _rentals = new Vector(); + + public Customer(String name) { + _name = name; + } + + public void addRental(Rental arg) { + _rentals.addElement(arg); + } + + public String getName() { + return _name; + } + + public String statement() { + double totalAmount = 0; + int frequentRenterPoints = 0; + Enumeration rentals = _rentals.elements(); + String result = "Rental Record for " + getName() + "\n"; + while (rentals.hasMoreElements()) { + double thisAmount = 0; + Rental each = (Rental) rentals.nextElement(); + //determine amounts for each line + switch (each.getMovie().getPriceCode()) { + case Movie.REGULAR: + thisAmount += 2; + if (each.getDaysRented() > 2) + thisAmount += (each.getDaysRented() - 2) * 1.5; + break; + case Movie.NEW_RELEASE: + thisAmount += each.getDaysRented() * 3; + break; + case Movie.CHILDRENS: + thisAmount += 1.5; + if (each.getDaysRented() > 3) + thisAmount += (each.getDaysRented() - 3) * 1.5; + break; + } + // add frequent renter points + frequentRenterPoints++; + // add bonus for a two day new release rental + if ((each.getMovie().getPriceCode() == Movie.NEW_RELEASE) + && + each.getDaysRented() > 1) frequentRenterPoints++; + //show figures for this rental + result += "\t" + each.getMovie().getTitle() + "\t" + + String.valueOf(thisAmount) + "\n"; + totalAmount += thisAmount; + } + //add footer lines + result += "Amount owed is " + String.valueOf(totalAmount) + + "\n"; + result += "You earned " + String.valueOf(frequentRenterPoints) + + + " frequent renter points"; + return result; + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Main.java b/src/main/java/org/fundacionjala/coding/juan/movies/Main.java new file mode 100644 index 0000000..9726f12 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Main.java @@ -0,0 +1,10 @@ +package org.fundacionjala.coding.juan.movies; + +public class Main { + public static void main(String[] args) { + Customer customer = new Customer("Test"); + customer.addRental(new Rental(new Movie("The Revenant", 1), 2)); + customer.addRental(new Rental(new Movie("Terminator", 0), 2)); + System.out.println(customer.statement()); + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Movie.java b/src/main/java/org/fundacionjala/coding/juan/movies/Movie.java new file mode 100644 index 0000000..61655fb --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Movie.java @@ -0,0 +1,26 @@ +package org.fundacionjala.coding.juan.movies; + +public class Movie { + + public static final int REGULAR = 0; + public static final int NEW_RELEASE = 1; + private String _title; + private int _priceCode; + + public Movie(String title, int priceCode) { + _title = title; + _priceCode = priceCode; + } + + public int getPriceCode() { + return _priceCode; + } + + public void setPriceCode(int arg) { + _priceCode = arg; + } + + public String getTitle() { + return _title; + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Rental.java b/src/main/java/org/fundacionjala/coding/juan/movies/Rental.java new file mode 100644 index 0000000..2f324b3 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Rental.java @@ -0,0 +1,19 @@ +package org.fundacionjala.coding.juan.movies; + +class Rental { + private Movie _movie; + private int _daysRented; + + public Rental(Movie movie, int daysRented) { + _movie = movie; + _daysRented = daysRented; + } + + public int getDaysRented() { + return _daysRented; + } + + public Movie getMovie() { + return _movie; + } +} \ No newline at end of file diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/movieOperations.java b/src/main/java/org/fundacionjala/coding/juan/movies/movieOperations.java new file mode 100644 index 0000000..1258977 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/movieOperations.java @@ -0,0 +1,14 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package org.fundacionjala.coding.juan.movies; + +/** + * + * @author Administrator + */ +public class movieOperations { + +} diff --git a/src/main/java/org/fundacionjala/coding/juan/spinWords.java b/src/main/java/org/fundacionjala/coding/juan/spinWords.java new file mode 100644 index 0000000..2d1cddf --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/spinWords.java @@ -0,0 +1,30 @@ +package org.fundacionjala.coding.juan; + +/** + * Created by Administrator on 3/10/2017. + */ +public class spinWords { + public String spinWord(final String sentence) { + if (sentence == null) + return ""; + if (sentence.length() <= 4) + return sentence; + else { + String[] separatedWords = sentence.split(" "); + StringBuilder result = new StringBuilder(); + for (int i = 0; i < separatedWords.length; i++) { + + if (separatedWords[i].length() > 4) { + for (int j = separatedWords[i].length() - 1; j >= 0; j--) + result.append(separatedWords[i].charAt(j)); + result.append(" "); + } else { + for (int j = 0; j < separatedWords[i].length(); j++) + result.append(separatedWords[i].charAt(j)); + result.append(" "); + } + } + return result.deleteCharAt(result.length() - 1).toString(); + } + } +} diff --git a/src/test/java/org/fundacionjala/coding/carlos/SpinWordsTest.java b/src/test/java/org/fundacionjala/coding/carlos/SpinWordsTest.java new file mode 100644 index 0000000..3e84e39 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/carlos/SpinWordsTest.java @@ -0,0 +1,76 @@ +package org.fundacionjala.coding.carlos; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * Tests for {@link SpinWords}. + */ +public class SpinWordsTest { + + /** + * Test when sentence has words with more than 5 characters. + */ + @Test + public void testSpinWordsWhenSentenceHasWordsWithMoreThanFiveCharacters() { + // given: + final String sentence = "Hey fellow warriors"; + + // when: + final String actualResult = SpinWords.spinWords(sentence); + + // then: + final String expectedResult = "Hey wollef sroirraw"; + assertEquals(expectedResult, actualResult); + } + + /** + * Test when sentence doesn't have words with more than 5 characters. + */ + @Test + public void testSpinWordsWhenSentenceDoesNotHaveWordsWithMoreThanFiveCharacters() { + // given: + final String sentence = "This is a test"; + + // when: + final String actualResult = SpinWords.spinWords(sentence); + + // then: + final String expectedResult = "This is a test"; + assertEquals(expectedResult, actualResult); + } + + /** + * Test when sentence has words with 5 characters. + */ + @Test + public void testSpinWordsWhenSentenceHasWordsWithFiveCharacters() { + // given: + final String sentence = "This is a table"; + + // when: + final String actualResult = SpinWords.spinWords(sentence); + + // then: + final String expectedResult = "This is a elbat"; + assertEquals(expectedResult, actualResult); + } + + /** + * Test when sentence has one just word. + */ + @Test + public void testSpinWordsWhenSentenceHasOneWord() { + // given: + final String sentence = "Welcome"; + + // when: + final String actualResult = SpinWords.spinWords(sentence); + + // then: + final String expectedResult = "emocleW"; + assertEquals(expectedResult, actualResult); + } + +} diff --git a/src/test/java/org/fundacionjala/coding/juan/eanValidatorTest.java b/src/test/java/org/fundacionjala/coding/juan/eanValidatorTest.java new file mode 100644 index 0000000..ad24cdb --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/eanValidatorTest.java @@ -0,0 +1,16 @@ +package org.fundacionjala.coding.juan; + +import static org.junit.Assert.*; +import org.junit.Test; + +import static org.junit.Assert.assertEquals; +/** + * Created by Administrator on 3/10/2017. + */ +public class eanValidatorTest { + @Test + public void testingEanCode() { + eanValidator validate=new eanValidator(); + assertTrue(validate.validating("9783815820865")); + } +} \ No newline at end of file diff --git a/src/test/java/org/fundacionjala/coding/juan/spinWordsTest.java b/src/test/java/org/fundacionjala/coding/juan/spinWordsTest.java new file mode 100644 index 0000000..3b519da --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/spinWordsTest.java @@ -0,0 +1,57 @@ +package org.fundacionjala.coding.juan; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.*; + +/** + * Created by Administrator on 3/10/2017. + */ + +public class spinWordsTest { + @Test + public void testspinWordsWhenTheSentenseHasFiveWords() { + spinWords words= new spinWords(); + + //Given + final String sentece ="holas"; + //When + final String actualResult= words.spinWord(sentece); + // then + final String exectedResult ="saloh"; + assertEquals(exectedResult,actualResult); + + + + } + @Test + public void testSpinWordsWhenTheSenteseHasMoreThanFiveWords(){ + spinWords words= new spinWords(); + //Given + final String sentece ="Paralelepipedo"; + //When + final String actualResult= words.spinWord(sentece); + // then + final String exectedResult ="odepipelelaraP"; + assertEquals(exectedResult,actualResult); + } + @Test + public void testSpinWordsWhenTheSenteseHasSpaces(){ + spinWords words= new spinWords(); + //Given + final String sentece ="Wellcome to the jungle"; + final String senteceA ="Esta es una prueba"; + //When + final String actualResult= words.spinWord(sentece); + final String actualResultA= words.spinWord(senteceA); + // then + final String exectedResult ="emoclleW to the elgnuj"; + final String exectedResultA ="Esta es una abeurp"; + assertEquals(exectedResult,actualResult); + assertEquals(exectedResultA,actualResultA); + } + + + } + From 772d31eef82b772f84240ceb464ea1800d5a02c4 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 19 Mar 2017 01:48:41 -0400 Subject: [PATCH 02/42] commit2 with gradle check --- .../coding/juan/EanValidator.java | 40 ++++++++++++ .../juan/{spinWords.java => SpinWords.java} | 38 ++++++++--- .../coding/juan/eanValidator.java | 28 -------- .../coding/juan/movies/Children.java | 15 ----- .../coding/juan/movies/Customer.java | 65 ------------------- .../coding/juan/movies/Main.java | 10 --- .../coding/juan/movies/Movie.java | 26 -------- .../coding/juan/movies/Rental.java | 19 ------ .../coding/juan/movies/movieOperations.java | 14 ---- .../coding/juan/EanValidatorTest.java | 55 ++++++++++++++++ .../coding/juan/SpinWordsTest.java | 64 ++++++++++++++++++ .../coding/juan/eanValidatorTest.java | 16 ----- .../coding/juan/spinWordsTest.java | 57 ---------------- 13 files changed, 187 insertions(+), 260 deletions(-) create mode 100644 src/main/java/org/fundacionjala/coding/juan/EanValidator.java rename src/main/java/org/fundacionjala/coding/juan/{spinWords.java => SpinWords.java} (51%) delete mode 100644 src/main/java/org/fundacionjala/coding/juan/eanValidator.java delete mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Children.java delete mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Customer.java delete mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Main.java delete mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Movie.java delete mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Rental.java delete mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/movieOperations.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/EanValidatorTest.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/SpinWordsTest.java delete mode 100644 src/test/java/org/fundacionjala/coding/juan/eanValidatorTest.java delete mode 100644 src/test/java/org/fundacionjala/coding/juan/spinWordsTest.java diff --git a/src/main/java/org/fundacionjala/coding/juan/EanValidator.java b/src/main/java/org/fundacionjala/coding/juan/EanValidator.java new file mode 100644 index 0000000..2546ff6 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/EanValidator.java @@ -0,0 +1,40 @@ +package org.fundacionjala.coding.juan; + +/** + * @author Juan Pablo + */ +public final class EanValidator { + /** + * CONSTRUCTOR. + */ + private EanValidator() { + + } + /** + * @param eanCode is the code provided as input. + * @return the validation. + */ + + public static boolean validating(final String eanCode) { + int sum = 0; + int checksum = 0; + final int finalNumber = 12; + final int multiply = 3; + final int finalFactor = 10; + final int aux = 48; + for (int i = 0; i < finalNumber; i++) { + if (i % 2 == 1) { + sum += ((eanCode.charAt(i) - aux) * multiply); + } else { + sum += (eanCode.charAt(i) - aux); + } + } + if (sum % finalFactor != 0) { + checksum = (finalFactor - (sum % finalFactor)); + } + if (eanCode.charAt(eanCode.length() - 1) - aux == checksum) { + return true; + } + return false; + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/spinWords.java b/src/main/java/org/fundacionjala/coding/juan/SpinWords.java similarity index 51% rename from src/main/java/org/fundacionjala/coding/juan/spinWords.java rename to src/main/java/org/fundacionjala/coding/juan/SpinWords.java index 2d1cddf..e188caa 100644 --- a/src/main/java/org/fundacionjala/coding/juan/spinWords.java +++ b/src/main/java/org/fundacionjala/coding/juan/SpinWords.java @@ -3,25 +3,43 @@ /** * Created by Administrator on 3/10/2017. */ -public class spinWords { - public String spinWord(final String sentence) { - if (sentence == null) +public final class SpinWords { + /** + * Constructor private. + */ + private SpinWords() { + //no called + } + + /** + * Get the words spined if it have 5 or more letters. + * @param sentence is the word or words + * @return the word spined. + */ + public static String spinWords(final String sentence) { + final int limitWord = 4; + if (sentence == null) { return ""; - if (sentence.length() <= 4) + } + if (sentence.length() <= limitWord) { return sentence; - else { + } else { String[] separatedWords = sentence.split(" "); StringBuilder result = new StringBuilder(); for (int i = 0; i < separatedWords.length; i++) { - if (separatedWords[i].length() > 4) { - for (int j = separatedWords[i].length() - 1; j >= 0; j--) + if (separatedWords[i].length() > limitWord) { + for (int j = separatedWords[i].length() - 1; j >= 0; j--) { result.append(separatedWords[i].charAt(j)); - result.append(" "); + } + result.append(" "); + } else { - for (int j = 0; j < separatedWords[i].length(); j++) + for (int j = 0; j < separatedWords[i].length(); j++) { result.append(separatedWords[i].charAt(j)); - result.append(" "); + } + result.append(" "); + } } return result.deleteCharAt(result.length() - 1).toString(); diff --git a/src/main/java/org/fundacionjala/coding/juan/eanValidator.java b/src/main/java/org/fundacionjala/coding/juan/eanValidator.java deleted file mode 100644 index e7bb5b2..0000000 --- a/src/main/java/org/fundacionjala/coding/juan/eanValidator.java +++ /dev/null @@ -1,28 +0,0 @@ -package org.fundacionjala.coding.juan; - -/** - * @author Juan Pablo - */ -public class eanValidator { - public static boolean validating(final String eanCode) { - int sum = 0; - int checksum = 0; - int finalNumbre = 12; - for(int i = 0; i < finalNumbre; i++) { - if(i%2 == 1) { - sum += ((eanCode.charAt(i)-48)*3); - } else { - sum += (eanCode.charAt(i)-48); - } - } - if (sum % 10 != 0) { - checksum = (10 -(sum % 10)); - } - if (eanCode.charAt(eanCode.length()-1)-48 == checksum) { - return true; - } - return false; - } -} - - diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Children.java b/src/main/java/org/fundacionjala/coding/juan/movies/Children.java deleted file mode 100644 index 5e18e24..0000000 --- a/src/main/java/org/fundacionjala/coding/juan/movies/Children.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.fundacionjala.coding.juan.movies; - -/** - * Created by Administrator on 3/10/2017. - */ -public class Children extends Movie{ - public static final int CHILDRENS = 2; - - public Children(String title, int priceCode) { - super(title,priceCode); - } - public int precio -} - - diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java b/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java deleted file mode 100644 index cdf4c88..0000000 --- a/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java +++ /dev/null @@ -1,65 +0,0 @@ -package org.fundacionjala.coding.juan.movies; - -import java.util.Enumeration; -import java.util.Vector; - -class Customer { - private String _name; - private Vector _rentals = new Vector(); - - public Customer(String name) { - _name = name; - } - - public void addRental(Rental arg) { - _rentals.addElement(arg); - } - - public String getName() { - return _name; - } - - public String statement() { - double totalAmount = 0; - int frequentRenterPoints = 0; - Enumeration rentals = _rentals.elements(); - String result = "Rental Record for " + getName() + "\n"; - while (rentals.hasMoreElements()) { - double thisAmount = 0; - Rental each = (Rental) rentals.nextElement(); - //determine amounts for each line - switch (each.getMovie().getPriceCode()) { - case Movie.REGULAR: - thisAmount += 2; - if (each.getDaysRented() > 2) - thisAmount += (each.getDaysRented() - 2) * 1.5; - break; - case Movie.NEW_RELEASE: - thisAmount += each.getDaysRented() * 3; - break; - case Movie.CHILDRENS: - thisAmount += 1.5; - if (each.getDaysRented() > 3) - thisAmount += (each.getDaysRented() - 3) * 1.5; - break; - } - // add frequent renter points - frequentRenterPoints++; - // add bonus for a two day new release rental - if ((each.getMovie().getPriceCode() == Movie.NEW_RELEASE) - && - each.getDaysRented() > 1) frequentRenterPoints++; - //show figures for this rental - result += "\t" + each.getMovie().getTitle() + "\t" + - String.valueOf(thisAmount) + "\n"; - totalAmount += thisAmount; - } - //add footer lines - result += "Amount owed is " + String.valueOf(totalAmount) + - "\n"; - result += "You earned " + String.valueOf(frequentRenterPoints) - + - " frequent renter points"; - return result; - } -} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Main.java b/src/main/java/org/fundacionjala/coding/juan/movies/Main.java deleted file mode 100644 index 9726f12..0000000 --- a/src/main/java/org/fundacionjala/coding/juan/movies/Main.java +++ /dev/null @@ -1,10 +0,0 @@ -package org.fundacionjala.coding.juan.movies; - -public class Main { - public static void main(String[] args) { - Customer customer = new Customer("Test"); - customer.addRental(new Rental(new Movie("The Revenant", 1), 2)); - customer.addRental(new Rental(new Movie("Terminator", 0), 2)); - System.out.println(customer.statement()); - } -} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Movie.java b/src/main/java/org/fundacionjala/coding/juan/movies/Movie.java deleted file mode 100644 index 61655fb..0000000 --- a/src/main/java/org/fundacionjala/coding/juan/movies/Movie.java +++ /dev/null @@ -1,26 +0,0 @@ -package org.fundacionjala.coding.juan.movies; - -public class Movie { - - public static final int REGULAR = 0; - public static final int NEW_RELEASE = 1; - private String _title; - private int _priceCode; - - public Movie(String title, int priceCode) { - _title = title; - _priceCode = priceCode; - } - - public int getPriceCode() { - return _priceCode; - } - - public void setPriceCode(int arg) { - _priceCode = arg; - } - - public String getTitle() { - return _title; - } -} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Rental.java b/src/main/java/org/fundacionjala/coding/juan/movies/Rental.java deleted file mode 100644 index 2f324b3..0000000 --- a/src/main/java/org/fundacionjala/coding/juan/movies/Rental.java +++ /dev/null @@ -1,19 +0,0 @@ -package org.fundacionjala.coding.juan.movies; - -class Rental { - private Movie _movie; - private int _daysRented; - - public Rental(Movie movie, int daysRented) { - _movie = movie; - _daysRented = daysRented; - } - - public int getDaysRented() { - return _daysRented; - } - - public Movie getMovie() { - return _movie; - } -} \ No newline at end of file diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/movieOperations.java b/src/main/java/org/fundacionjala/coding/juan/movies/movieOperations.java deleted file mode 100644 index 1258977..0000000 --- a/src/main/java/org/fundacionjala/coding/juan/movies/movieOperations.java +++ /dev/null @@ -1,14 +0,0 @@ -/* - * To change this license header, choose License Headers in Project Properties. - * To change this template file, choose Tools | Templates - * and open the template in the editor. - */ -package org.fundacionjala.coding.juan.movies; - -/** - * - * @author Administrator - */ -public class movieOperations { - -} diff --git a/src/test/java/org/fundacionjala/coding/juan/EanValidatorTest.java b/src/test/java/org/fundacionjala/coding/juan/EanValidatorTest.java new file mode 100644 index 0000000..ff89828 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/EanValidatorTest.java @@ -0,0 +1,55 @@ +package org.fundacionjala.coding.juan; + +import org.junit.Test; + +import static org.junit.Assert.assertTrue; + +/** + * Created by Administrator on 3/10/2017. + */ +public class EanValidatorTest { + /** + * Testing when has 13 digits. + */ + @Test + public void testCheckLengthWhenTheEANStringNumberHasExactly13Digits() { + // given: + final String eanStringNumber = "4003301018398"; + + // when: + final boolean actualResult = EanValidator.validating(eanStringNumber); + + // then: + assertTrue(actualResult); + } + /** + * Test when the EAN string number has less than 13 digits. + */ + + @Test + public void testValidateTheCheckSumIsDifferentFromZero() { + // given: + final String eanStringNumber = "4003301018398"; + + // when: + final boolean actualResult = EanValidator.validating(eanStringNumber); + + // then: + assertTrue(actualResult); + } + + /** + * Test when the EAN string number checksum is equal to 0. + */ + @Test + public void testValidateTheCheckSumIsEqualToZero() { + // given: + final String eanStringNumber = "4003301018392"; + + // when: + final boolean actualResult = EanValidator.validating(eanStringNumber); + + // then: + assertTrue(!actualResult); + } +} diff --git a/src/test/java/org/fundacionjala/coding/juan/SpinWordsTest.java b/src/test/java/org/fundacionjala/coding/juan/SpinWordsTest.java new file mode 100644 index 0000000..511180e --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/SpinWordsTest.java @@ -0,0 +1,64 @@ +package org.fundacionjala.coding.juan; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 3/10/2017. + */ + +public class SpinWordsTest { + /** + * Testing when the word has five letters. + */ + @Test + public void testspinWordsWhenTheSentenseHasFiveWords() { + + + //Given + final String sentece = "holas"; + //When + final String actualResult = SpinWords.spinWords(sentece); + // then + final String exectedResult = "saloh"; + assertEquals(exectedResult, actualResult); + + + } + /** + * Testing when the word has more than five letters. + */ + @Test + public void testSpinWordsWhenTheSenteseHasMoreThanFiveWords() { + + //Given + final String sentece = "Paralelepipedo"; + //When + final String actualResult = SpinWords.spinWords(sentece); + // then + final String exectedResult = "odepipelelaraP"; + assertEquals(exectedResult, actualResult); + } + /** + * Testing when the sentese has spaces. + */ + @Test + public void testSpinWordsWhenTheSenteseHasSpaces() { + + //Given + final String sentece = "Wellcome to the jungle"; + final String senteceA = "Esta es una prueba"; + //When + final String actualResult = SpinWords.spinWords(sentece); + final String actualResultA = SpinWords.spinWords(senteceA); + // then + final String exectedResult = "emoclleW to the elgnuj"; + final String exectedResultA = "Esta es una abeurp"; + assertEquals(exectedResult, actualResult); + assertEquals(exectedResultA, actualResultA); + } + + +} + diff --git a/src/test/java/org/fundacionjala/coding/juan/eanValidatorTest.java b/src/test/java/org/fundacionjala/coding/juan/eanValidatorTest.java deleted file mode 100644 index ad24cdb..0000000 --- a/src/test/java/org/fundacionjala/coding/juan/eanValidatorTest.java +++ /dev/null @@ -1,16 +0,0 @@ -package org.fundacionjala.coding.juan; - -import static org.junit.Assert.*; -import org.junit.Test; - -import static org.junit.Assert.assertEquals; -/** - * Created by Administrator on 3/10/2017. - */ -public class eanValidatorTest { - @Test - public void testingEanCode() { - eanValidator validate=new eanValidator(); - assertTrue(validate.validating("9783815820865")); - } -} \ No newline at end of file diff --git a/src/test/java/org/fundacionjala/coding/juan/spinWordsTest.java b/src/test/java/org/fundacionjala/coding/juan/spinWordsTest.java deleted file mode 100644 index 3b519da..0000000 --- a/src/test/java/org/fundacionjala/coding/juan/spinWordsTest.java +++ /dev/null @@ -1,57 +0,0 @@ -package org.fundacionjala.coding.juan; - -import org.junit.Test; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.*; - -/** - * Created by Administrator on 3/10/2017. - */ - -public class spinWordsTest { - @Test - public void testspinWordsWhenTheSentenseHasFiveWords() { - spinWords words= new spinWords(); - - //Given - final String sentece ="holas"; - //When - final String actualResult= words.spinWord(sentece); - // then - final String exectedResult ="saloh"; - assertEquals(exectedResult,actualResult); - - - - } - @Test - public void testSpinWordsWhenTheSenteseHasMoreThanFiveWords(){ - spinWords words= new spinWords(); - //Given - final String sentece ="Paralelepipedo"; - //When - final String actualResult= words.spinWord(sentece); - // then - final String exectedResult ="odepipelelaraP"; - assertEquals(exectedResult,actualResult); - } - @Test - public void testSpinWordsWhenTheSenteseHasSpaces(){ - spinWords words= new spinWords(); - //Given - final String sentece ="Wellcome to the jungle"; - final String senteceA ="Esta es una prueba"; - //When - final String actualResult= words.spinWord(sentece); - final String actualResultA= words.spinWord(senteceA); - // then - final String exectedResult ="emoclleW to the elgnuj"; - final String exectedResultA ="Esta es una abeurp"; - assertEquals(exectedResult,actualResult); - assertEquals(exectedResultA,actualResultA); - } - - - } - From 431fc30d2369857ea58aafd18404c97819185194 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 19 Mar 2017 02:09:35 -0400 Subject: [PATCH 03/42] Delete bank_Machinne.java --- .../coding/juan/bank_Machinne.java | 24 ------------------- 1 file changed, 24 deletions(-) delete mode 100644 src/main/java/org/fundacionjala/coding/juan/bank_Machinne.java diff --git a/src/main/java/org/fundacionjala/coding/juan/bank_Machinne.java b/src/main/java/org/fundacionjala/coding/juan/bank_Machinne.java deleted file mode 100644 index a244aac..0000000 --- a/src/main/java/org/fundacionjala/coding/juan/bank_Machinne.java +++ /dev/null @@ -1,24 +0,0 @@ -package org.fundacionjala.coding.juan; - -import java.util.HashMap; -import java.util.Map; - -/** - * Created by Administrator on 3/10/2017. - */ -public class bank_Machinne { - String document=null; - - Map m1 = new HashMap(); - m1.put( "|"+ - "|"+ - "|"+ - " ",1); - m1.put( "_"+ - " |" - "- " - "_|" - - ,2); - -} From 0770a7a487ff546b2ffd8322817f1ffa32a184b0 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 19 Mar 2017 02:33:57 -0400 Subject: [PATCH 04/42] Update EanValidator.java --- src/main/java/org/fundacionjala/coding/juan/EanValidator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/EanValidator.java b/src/main/java/org/fundacionjala/coding/juan/EanValidator.java index 2546ff6..90346f6 100644 --- a/src/main/java/org/fundacionjala/coding/juan/EanValidator.java +++ b/src/main/java/org/fundacionjala/coding/juan/EanValidator.java @@ -23,7 +23,7 @@ public static boolean validating(final String eanCode) { final int finalFactor = 10; final int aux = 48; for (int i = 0; i < finalNumber; i++) { - if (i % 2 == 1) { + if (i % 2 != 0) { sum += ((eanCode.charAt(i) - aux) * multiply); } else { sum += (eanCode.charAt(i) - aux); From 667db53e298f1e794b92309c9d10a94873a57347 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 19 Mar 2017 02:32:11 -0400 Subject: [PATCH 05/42] commit3 --- src/main/java/org/fundacionjala/coding/juan/EanValidator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/EanValidator.java b/src/main/java/org/fundacionjala/coding/juan/EanValidator.java index 90346f6..2492e3c 100644 --- a/src/main/java/org/fundacionjala/coding/juan/EanValidator.java +++ b/src/main/java/org/fundacionjala/coding/juan/EanValidator.java @@ -29,7 +29,7 @@ public static boolean validating(final String eanCode) { sum += (eanCode.charAt(i) - aux); } } - if (sum % finalFactor != 0) { + if (sum % finalFactor !=0) { checksum = (finalFactor - (sum % finalFactor)); } if (eanCode.charAt(eanCode.length() - 1) - aux == checksum) { From 175b1fdda64692ed007995540065bb9e0f3088bf Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 26 Mar 2017 00:02:38 -0400 Subject: [PATCH 06/42] commit MOVIES --- .../coding/juan/movies/Children.java | 31 ++++++++ .../coding/juan/movies/Customer.java | 70 +++++++++++++++++++ .../coding/juan/movies/Movie.java | 37 ++++++++++ .../coding/juan/movies/NewRelease.java | 27 +++++++ .../coding/juan/movies/Regular.java | 33 +++++++++ .../coding/juan/movies/Rental.java | 48 +++++++++++++ .../coding/movies/ChildrenTest.java | 64 +++++++++++++++++ .../coding/movies/CustomerTest.java | 54 ++++++++++++++ .../coding/movies/NewReleaseTest.java | 28 ++++++++ .../coding/movies/RegularTest.java | 61 ++++++++++++++++ 10 files changed, 453 insertions(+) create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Children.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Customer.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Movie.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Regular.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/movies/Rental.java create mode 100644 src/test/java/org/fundacionjala/coding/movies/ChildrenTest.java create mode 100644 src/test/java/org/fundacionjala/coding/movies/CustomerTest.java create mode 100644 src/test/java/org/fundacionjala/coding/movies/NewReleaseTest.java create mode 100644 src/test/java/org/fundacionjala/coding/movies/RegularTest.java diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Children.java b/src/main/java/org/fundacionjala/coding/juan/movies/Children.java new file mode 100644 index 0000000..4978c1c --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Children.java @@ -0,0 +1,31 @@ +package org.fundacionjala.coding.juan.movies; + +/** + * @author Juan Pablo + */ +public class Children extends Movie { + private static final int LIMINEWCHILD = 3; + private static final double PRICE = 1.5; + + /** + * constructor. + * @param title is the title of the movie. + */ + public Children(final String title) { + super(title); + } + + @Override + public double calculateAmount(final int daysRented) { + double amount = PRICE; + if (daysRented > LIMINEWCHILD) { + amount += (daysRented - LIMINEWCHILD) * PRICE; + } + return amount; + } + + @Override + public int calculateFrequentRenterPoints(final int daysRented) { + return 1; + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java b/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java new file mode 100644 index 0000000..4be1d1a --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java @@ -0,0 +1,70 @@ +package org.fundacionjala.coding.juan.movies; + + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Juan Pablo + */ +public final class Customer { + private String nameCustomer; + private List rentalsCustomer; + + /** + * @param nameCustomer String with words. + * Constructor. + */ + Customer(final String nameCustomer) { + this.nameCustomer = nameCustomer; + rentalsCustomer = new ArrayList<>(); + } + + /** + * @param rental String with words. + */ + public void addRental(final Rental rental) { + rentalsCustomer.add(rental); + } + + /** + * @return the nameCustomer string. + */ + public String getName() { + return this.nameCustomer; + } + + /** + * @return the string. + */ + public String generateDetail() { + StringBuffer result = new StringBuffer(); + result.append("Rental Record for " + getName() + "\n"); + for (Rental rental : rentalsCustomer) { + result.append("\t" + rental.getMovie().getTitle() + "\t"); + result.append(rental.calculateAmount() + "\n"); + } + result.append("Amount owed is " + calculateTotalAmount() + "\n"); + result.append("You earned " + calculateTotalFrequentRenterPoints() + " frequent renter points"); + return result.toString(); + } + /** + * @ this method will calculate the total amount of the customer. + * @return the total amount. + */ + public double calculateTotalAmount() { + return rentalsCustomer.stream() + .mapToDouble(Rental::calculateAmount) + .sum(); + } + /** + * @ this method will calcule the potins of the customer. + * @return the total points. + */ + public int calculateTotalFrequentRenterPoints() { + + return rentalsCustomer.stream() + .mapToInt(rental -> rental.calculateFrequentRenterPoint()) + .sum(); + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Movie.java b/src/main/java/org/fundacionjala/coding/juan/movies/Movie.java new file mode 100644 index 0000000..c54b0ae --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Movie.java @@ -0,0 +1,37 @@ +package org.fundacionjala.coding.juan.movies; + + +/** + * @author Juan Pablo + */ +public abstract class Movie { + private String title; + + /** + * constructor. + * + * @param title is the title of the movie. + */ + public Movie(final String title) { + this.title = title; + } + + /** + * @param daysRented the method uses this parameter to calculate the amount + * @return the amount + */ + public abstract double calculateAmount(int daysRented); + + /** + * @param daysRented the mothod uses the parameter to calculate the points. + * @return the points + */ + public abstract int calculateFrequentRenterPoints(int daysRented); + + /** + * @return the moview title. + */ + public String getTitle() { + return title; + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java b/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java new file mode 100644 index 0000000..ec86cf0 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java @@ -0,0 +1,27 @@ +package org.fundacionjala.coding.juan.movies; + + +/** + * @author Juan Pablo + */ +public class NewRelease extends Movie { + + private static final int LIMITNEWCHILD = 3; + /** + * constructor. + * @param title is the title of the moview. + */ + public NewRelease(final String title) { + super(title); + } + + @Override + public double calculateAmount(final int daysRented) { + return daysRented * LIMITNEWCHILD; + } + + @Override + public int calculateFrequentRenterPoints(final int daysRented) { + return daysRented > 1 ? 2 : 1; + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Regular.java b/src/main/java/org/fundacionjala/coding/juan/movies/Regular.java new file mode 100644 index 0000000..865c5ba --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Regular.java @@ -0,0 +1,33 @@ +package org.fundacionjala.coding.juan.movies; + + +/** + * @author Juan Pablo + */ +public class Regular extends Movie { + + private static final double PRICE = 1.5; + + private static final int LIMITREGULAR = 2; + + /** + * @param title is the movie title. + */ + public Regular(final String title) { + super(title); + } + + @Override + public double calculateAmount(final int daysRented) { + double amount = PRICE; + if (daysRented > LIMITREGULAR) { + amount += (daysRented - LIMITREGULAR) * PRICE; + } + return amount; + } + + @Override + public int calculateFrequentRenterPoints(final int daysRented) { + return 1; + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Rental.java b/src/main/java/org/fundacionjala/coding/juan/movies/Rental.java new file mode 100644 index 0000000..d5f759d --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Rental.java @@ -0,0 +1,48 @@ +package org.fundacionjala.coding.juan.movies; + + +/** + * @author Juan Pablo + */ +class Rental { + private Movie movie; + private int daysRented; + + /** + * @param movie Movie. + * @param daysRented DaysRented. + */ + Rental(final Movie movie, final int daysRented) { + this.movie = movie; + this.daysRented = daysRented; + } + + /** + * @return the daysRented. + */ + public int getDaysRented() { + return daysRented; + } + + /** + * @return movie object. + */ + public Movie getMovie() { + return this.movie; + } + + /** + * @return price object. + */ + public double calculateAmount() { + return movie.calculateAmount(daysRented); + } + + /** + * @return calculateFrequentRenterPoint int. + */ + public int calculateFrequentRenterPoint() { + return movie.calculateFrequentRenterPoints(daysRented); + } +} + diff --git a/src/test/java/org/fundacionjala/coding/movies/ChildrenTest.java b/src/test/java/org/fundacionjala/coding/movies/ChildrenTest.java new file mode 100644 index 0000000..fe92923 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/movies/ChildrenTest.java @@ -0,0 +1,64 @@ +package org.fundacionjala.coding.juan.movies; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 3/23/2017. + */ +public class ChildrenTest { + /** + * Test children amount when days rented is less than the limit. + */ + @Test + public void testChildrenMovieAmountWhenDaysRentetIsLessThanTheLimit() { + + // given: + final Children children = new Children("Spy Kids"); + final int daysRentet = 2; + // when: + final double actualResult = children.calculateAmount(daysRentet); + + // then: + final double expectedResult = 1.5; + assertEquals(expectedResult, actualResult, 0); + } + + /** + * Test children amount when days rented are equals than the limit. + */ + @Test + public void testChildrenMovieAmountWhenDaysRentetIsequalsThanTheLimit() { + + // given: + final Children children = new Children("Spy Kids"); + final int daysRentet = 3; + // when: + final double actualResult = children.calculateAmount(daysRentet); + + // then: + final double expectedResult = 1.5; + assertEquals(expectedResult, actualResult, 0); + } + + /** + * Test children amount when days rented are equals than the limit. + */ + @Test + public void testChildrenMovieAmountWhenDaysRentetaremoreThanTheLimit() { + + // given: + final Children children = new Children("Spy Kids"); + final int daysRentet = 5; + // when: + final double actualResult = children.calculateAmount(daysRentet); + + // then: + final double expectedResult = 4.5; + assertEquals(expectedResult, actualResult, 0); + } + + +} + diff --git a/src/test/java/org/fundacionjala/coding/movies/CustomerTest.java b/src/test/java/org/fundacionjala/coding/movies/CustomerTest.java new file mode 100644 index 0000000..c9122a5 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/movies/CustomerTest.java @@ -0,0 +1,54 @@ + +package org.fundacionjala.coding.juan.movies; + + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * @author Juan Pablo + */ +public class CustomerTest { + + private static final double MINORPRICE = 1.5; + private static final int DAYONE = 1; + + + /** + * Test Movie When NameCustomer Is Word. + */ + @Test + public void testingGivenaCustomerName() { + + // given: + final Customer customer = new Customer("Jorge"); + + // when: + final String actualResult = customer.getName(); + + // then: + final String expectedResult = "Jorge"; + + assertEquals(expectedResult, actualResult); + } + + /** + * test Movie When Day Rented Is less For Children. + */ + @Test + public void testMovieWhenDayRentedISLessForChildren() { + + // given: + final Customer customer = new Customer("Test"); + customer.addRental(new Rental(new Children("The Revenant"), DAYONE)); + + // when: + final double actualResult = customer.calculateTotalAmount(); + + // then: + final double expectedResult = MINORPRICE; + + assertEquals(expectedResult, actualResult, 0); + } +} diff --git a/src/test/java/org/fundacionjala/coding/movies/NewReleaseTest.java b/src/test/java/org/fundacionjala/coding/movies/NewReleaseTest.java new file mode 100644 index 0000000..3fd6934 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/movies/NewReleaseTest.java @@ -0,0 +1,28 @@ +package org.fundacionjala.coding.juan.movies; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 3/23/2017. + */ +public class NewReleaseTest { + /** + * Test New Release amount when days rented is less than the limit. + */ + @Test + public void testNewRealeasenMovieAmount() { + + // given: + final NewRelease newRelease = new NewRelease("Logan"); + final int daysRentet = 2; + // when: + final double actualResult = newRelease.calculateAmount(daysRentet); + + // then: + final double expectedResult = 6; + assertEquals(expectedResult, actualResult, 0); + } + +} diff --git a/src/test/java/org/fundacionjala/coding/movies/RegularTest.java b/src/test/java/org/fundacionjala/coding/movies/RegularTest.java new file mode 100644 index 0000000..8028e94 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/movies/RegularTest.java @@ -0,0 +1,61 @@ +package org.fundacionjala.coding.juan.movies; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 3/23/2017. + */ +public class RegularTest { + /** + * Test New Release amount when days rented is less than the limit. + */ + @Test + public void testRegularMovieWhenDaysRentedAreLessThanTheLimit() { + + // given: + final Regular regular = new Regular("Logan"); + final int daysRentet = 1; + // when: + final double actualResult = regular.calculateAmount(daysRentet); + + // then: + final double expectedResult = 1.5; + assertEquals(expectedResult, actualResult, 0); + } + + /** + * Test New Release amount when days rented is less than the limit. + */ + @Test + public void testRegularMovieWhenDaysRentedAreigualThanTheLimit() { + + // given: + final Regular regular = new Regular("Logan"); + final int daysRentet = 2; + // when: + final double actualResult = regular.calculateAmount(daysRentet); + + // then: + final double expectedResult = 1.5; + assertEquals(expectedResult, actualResult, 0); + } + + /** + * Test New Release amount when days rented is less than the limit. + */ + @Test + public void testRegularMovieWhenDaysRentedAreMoreThanTheLimit() { + + // given: + final Regular regular = new Regular("Logan"); + final int daysRentet = 5; + // when: + final double actualResult = regular.calculateAmount(daysRentet); + + // then: + final double expectedResult = 6; + assertEquals(expectedResult, actualResult, 0); + } +} From ebd41d388f428c465acbe269ef3728fc67aa0319 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 26 Mar 2017 00:15:12 -0400 Subject: [PATCH 07/42] commit 26/3 --- src/main/java/org/fundacionjala/coding/juan/EanValidator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/EanValidator.java b/src/main/java/org/fundacionjala/coding/juan/EanValidator.java index 2492e3c..90346f6 100644 --- a/src/main/java/org/fundacionjala/coding/juan/EanValidator.java +++ b/src/main/java/org/fundacionjala/coding/juan/EanValidator.java @@ -29,7 +29,7 @@ public static boolean validating(final String eanCode) { sum += (eanCode.charAt(i) - aux); } } - if (sum % finalFactor !=0) { + if (sum % finalFactor != 0) { checksum = (finalFactor - (sum % finalFactor)); } if (eanCode.charAt(eanCode.length() - 1) - aux == checksum) { From 93f81bfeccb513a0782ef188eb15cb1979591fc4 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 26 Mar 2017 01:27:43 -0400 Subject: [PATCH 08/42] Commit Test --- .../coding/juan/test/Arrayaarage.java | 32 +++++++++ .../coding/juan/test/ArrayAvarageTest.java | 65 +++++++++++++++++++ 2 files changed, 97 insertions(+) create mode 100644 src/main/java/org/fundacionjala/coding/juan/test/Arrayaarage.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java diff --git a/src/main/java/org/fundacionjala/coding/juan/test/Arrayaarage.java b/src/main/java/org/fundacionjala/coding/juan/test/Arrayaarage.java new file mode 100644 index 0000000..5a760d4 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/test/Arrayaarage.java @@ -0,0 +1,32 @@ +package org.fundacionjala.coding.juan.test; + +/** + * Created by Administrator on 3/23/2017. + */ +final class Arrayaarage { + + /** + * constructor. + */ + private Arrayaarage() { + } + + /** + * this function will calculate the averrage of a given array. + * + * @param arrayInt is the given array + * @return final array. + */ + public static double[] getArrayAverage(final int[] arrayInt) { + if (arrayInt == null || arrayInt.length == 0 || arrayInt.length == 1) { + return new double[0]; + } + double[] finalArray = new double[arrayInt.length - 1]; + for (int i = 0; i < arrayInt.length - 1; i++) { + finalArray[i] = (double) (arrayInt[i] + arrayInt[i + 1]) / 2; + + } + return finalArray; + } + +} diff --git a/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java b/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java new file mode 100644 index 0000000..9b855b6 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java @@ -0,0 +1,65 @@ +package org.fundacionjala.coding.juan.test; + +import org.junit.Test; + +import java.util.Arrays; + +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 3/23/20. + */ + +public class ArrayAvarageTest { + /** + * Basics tests. + */ + + @Test + public void basicTests() { + + //Given + final int[] array1 = new int[]{2, 2, 2, 2, 2}; + final int[] array2 = new int[]{2, -2, 2, -2, 2}; + final int[] array3 = new int[]{1, 3, 5, 1, -10}; + + //When + double[] actualArray1 = Arrayaarage.getArrayAverage(array1); + double[] actualArray2 = Arrayaarage.getArrayAverage(array2); + double[] actualArray3 = Arrayaarage.getArrayAverage(array3); + + //final + final double[] expectedArray1 = new double[]{2, 2, 2, 2}; + final double[] expectedArray2 = new double[]{0, 0, 0, 0}; + final double[] expectedArray3 = new double[]{2, 4, 3, -4.5}; + assertEquals(Arrays.toString(actualArray1), Arrays.toString(expectedArray1)); + assertEquals(Arrays.toString(actualArray2), Arrays.toString(expectedArray2)); + assertEquals(Arrays.toString(actualArray3), Arrays.toString(expectedArray3)); + } + /** + * testing null and empty values. + */ + + @Test + public void nullEmptyTests() { + //Given + int[] array1 = null; + int[] array2 = new int[0]; + int[] array3 = new int[]{2}; + + // when + double[] actualArray1 = Arrayaarage.getArrayAverage(array1); + double[] actualArray2 = Arrayaarage.getArrayAverage(array2); + double[] actualArray3 = Arrayaarage.getArrayAverage(array3); + + //final + int zero = 0; + + assertEquals(zero, actualArray1.length); + assertEquals(zero, actualArray2.length); + assertEquals(zero, actualArray3.length); + //Arrayaarage average = new Arrayaarage(); + + } +} + From 4081f117fb139ef74157f74eaa5e1a0bb1d865f0 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 26 Mar 2017 01:44:52 -0400 Subject: [PATCH 09/42] BankCommit - firts --- .../coding/juan/Bank/BankOCR.java | 114 ++++++++++++++++++ .../coding/juan/Bank/BankOCRTest.java | 69 +++++++++++ 2 files changed, 183 insertions(+) create mode 100644 src/main/java/org/fundacionjala/coding/juan/Bank/BankOCR.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/Bank/BankOCRTest.java diff --git a/src/main/java/org/fundacionjala/coding/juan/Bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/Bank/BankOCR.java new file mode 100644 index 0000000..2144885 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/Bank/BankOCR.java @@ -0,0 +1,114 @@ +package org.fundacionjala.coding.juan.Bank; + +import java.util.HashMap; +import java.util.Map; + +/** + * Created by Juan Pablo on 26/03/2017. + */ +public final class BankOCR { + + private static Map mapNum = new HashMap<>(); + + private static final int ZERO = 0; + private static final int ONE = 1; + private static final int TWO = 2; + private static final int THREE = 3; + private static final int FOUR = 4; + private static final int FIVE = 5; + private static final int SIX = 6; + private static final int SEVEN = 7; + private static final int EIGHT = 8; + private static final int NINE = 9; + + static { + mapNum.put(ZERO, + " _ " + + "| |" + + "|_|"); + mapNum.put(ONE, + " " + + " |" + + " |"); + + mapNum.put(TWO, + " _ " + + " _|" + + "|_ "); + + mapNum.put(THREE, + "__ " + + " _|" + + "__|"); + + mapNum.put(FOUR, + " " + + "|_|" + + " |"); + + mapNum.put(FIVE, + " _" + + "|_ " + + " _|"); + + mapNum.put(SIX, + " _ " + + "|_ " + + "|_|"); + + mapNum.put(SEVEN, + " _ " + + " |" + + " |"); + mapNum.put(EIGHT, + " _ " + + "|_|" + + "|_|"); + + mapNum.put(NINE, + " _ " + + "|_|" + + " _|"); + } + + /** + * Constructor. + */ + + private BankOCR() { + + } + + /** + * + * @param value to get int. + * @return characters in a range 0-9 + */ + + private static String getKey(final String value) { + String valueString = "?"; + for (Map.Entry inputData : mapNum.entrySet()) { + valueString = inputData.getValue().equalsIgnoreCase(value) + ? inputData.getKey().toString() : valueString; + } + return valueString; + } + + /** + * + * @param numberScanned String + * @return true or false + */ + + public static String convertStringToNumber(final String[] numberScanned) { + StringBuilder imageToString = new StringBuilder(); + + for (String numberString : numberScanned) { + imageToString.append(getKey(numberString)); + } + + return imageToString.toString(); + } +} + + diff --git a/src/test/java/org/fundacionjala/coding/juan/Bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/Bank/BankOCRTest.java new file mode 100644 index 0000000..cfaf2e1 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/Bank/BankOCRTest.java @@ -0,0 +1,69 @@ +package org.fundacionjala.coding.juan.Bank; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * Created by Juan Pablo on 26/03/2017. + */ +public class BankOCRTest { + + /** + * testing the paser when a string is given. + */ + @Test + public void testingAnGivenStringToGetTheAccount() { + + //given + final String[] numberScanned = { + " _ " + + "| |" + + "|_|", + + " " + + " |" + + " |", + + " _ " + + " _|" + + "|_ ", + + "__ " + + " _|" + + "__|", + + " " + + "|_|" + + " |", + + " _" + + "|_ " + + " _|", + + " _ " + + "|_ " + + "|_|", + + " _ " + + " |" + + " |", + + " _ " + + "|_|" + + "|_|", + + " _ " + + "|_|" + + " _|" + }; + + //when + final String actualResult = BankOCR.convertStringToNumber(numberScanned); + + //then + final String expectedResult = "0123456789"; + assertEquals(expectedResult, actualResult); + } + +} From 38007866a3851b961f15b09824283d1430f4dfe5 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Mon, 19 Jun 2017 19:14:13 -0400 Subject: [PATCH 10/42] katas --- .../coding/carlos/SpinWords.java | 2 +- .../org/fundacionjala/coding/juan/Kata.java | 46 ++++++++++ .../fundacionjala/coding/juan/KataTest.java | 87 +++++++++++++++++++ 3 files changed, 134 insertions(+), 1 deletion(-) create mode 100644 src/main/java/org/fundacionjala/coding/juan/Kata.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/KataTest.java diff --git a/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java b/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java index 6685733..d008d8b 100644 --- a/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java +++ b/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java @@ -5,7 +5,7 @@ /** * Write a function that takes in a string of one or more words, and returns the same string, - * but with all five or more letter words reversed (Just like the name of this Kata). + * but with all five or more letter words reversed (Just like the name of this HighAndLow). * Strings passed in will consist of only letters and spaces. * Spaces will be included only when more than one word is present. */ diff --git a/src/main/java/org/fundacionjala/coding/juan/Kata.java b/src/main/java/org/fundacionjala/coding/juan/Kata.java new file mode 100644 index 0000000..655ffba --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/Kata.java @@ -0,0 +1,46 @@ +package org.fundacionjala.coding.juan; + +import java.util.Arrays; + +/** + * Created by Administrator on 6/19/2017. + */ +public class Kata { + + /** + * Kata. + * + * @param number is the string of numbers + * @return the higtest and lowest numbers + */ + public String hingAndLow(final String number) { + String[] numbers = number.split(" "); + Integer[] num = new Integer[numbers.length]; + for (int i = 0; i < numbers.length; i++) { + num[i] = Integer.parseInt(numbers[i]); + } + Arrays.sort(num); + return String.format("%d %d", num[num.length - 1], num[0]); + + } + + /** + * Kata. + * + * @param num is the number. + * @return the multiples. + */ + public int solution(final int num) { + int number = 0; + for (int i = 0; i < num; i++) { + if (i % 3 == 0 || i % 5 == 0) { + number = number + i; + } + } + return number; + } + + +} + + diff --git a/src/test/java/org/fundacionjala/coding/juan/KataTest.java b/src/test/java/org/fundacionjala/coding/juan/KataTest.java new file mode 100644 index 0000000..ce2fbf0 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/KataTest.java @@ -0,0 +1,87 @@ +package org.fundacionjala.coding.juan; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 6/19/2017. + */ +public class KataTest { + private Kata kata = new Kata(); + + /** + * Test. + */ + @Test + public void someTest() { + assertEquals(kata.hingAndLow("4 5 29 54 4 0 -214 542 -64 1 -3 6 -6"), "542 -214"); + } + + /** + * Test. + */ + @Test + public void plusMinusTest() { + assertEquals(kata.hingAndLow("1 -1"), "1 -1"); + } + + /** + * Test. + */ + @Test + public void plusPlusTest() { + assertEquals(kata.hingAndLow("1 1"), "1 1"); + } + + /** + * Test. + */ + @Test + public void minusMinusTest() { + assertEquals(kata.hingAndLow("-1 -1"), "-1 -1"); + } + + /** + * Test. + */ + @Test + public void plusMinusZeroTest() { + assertEquals(kata.hingAndLow("1 -1 0"), "1 -1"); + } + + /** + * Test. + */ + @Test + public void plusPlusZeroTest() { + assertEquals(kata.hingAndLow("1 1 0"), "1 0"); + } + + /** + * Test. + */ + @Test + public void minusMinusZeroTest() { + assertEquals(kata.hingAndLow("-1 -1 0"), "0 -1"); + } + + /** + * Test. + */ + @Test + public void singleTest() { + assertEquals(kata.hingAndLow("42"), "42 42"); + } + + /** + * KAta. + */ + @Test + public void test() { + + assertEquals(23, kata.solution(10)); + assertEquals(78, kata.solution(20)); + assertEquals(9168, kata.solution(200)); + } +} From 4349bce81d0e9d65cc2841f5f6bc756d16a4cbc8 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Wed, 28 Jun 2017 09:19:08 -0400 Subject: [PATCH 11/42] All Katas --- .../org/fundacionjala/coding/juan/Kata.java | 46 ---------- .../coding/juan/{Bank => bank}/BankOCR.java | 2 +- .../juan/{ => eanvalidator}/EanValidator.java | 12 ++- .../juan/{ => spinWords}/SpinWords.java | 20 ++--- .../{Arrayaarage.java => ArrayAverage.java} | 6 +- .../fundacionjala/coding/juan/KataTest.java | 87 ------------------- .../juan/{Bank => bank}/BankOCRTest.java | 2 +- .../{ => eanvalidator}/EanValidatorTest.java | 5 +- .../{ => juan}/movies/ChildrenTest.java | 2 +- .../{ => juan}/movies/CustomerTest.java | 3 +- .../{ => juan}/movies/NewReleaseTest.java | 2 +- .../coding/{ => juan}/movies/RegularTest.java | 2 +- .../juan/{ => spinwords}/SpinWordsTest.java | 5 +- .../coding/juan/test/ArrayAvarageTest.java | 16 ++-- 14 files changed, 38 insertions(+), 172 deletions(-) delete mode 100644 src/main/java/org/fundacionjala/coding/juan/Kata.java rename src/main/java/org/fundacionjala/coding/juan/{Bank => bank}/BankOCR.java (98%) rename src/main/java/org/fundacionjala/coding/juan/{ => eanvalidator}/EanValidator.java (76%) rename src/main/java/org/fundacionjala/coding/juan/{ => spinWords}/SpinWords.java (59%) rename src/main/java/org/fundacionjala/coding/juan/test/{Arrayaarage.java => ArrayAverage.java} (87%) delete mode 100644 src/test/java/org/fundacionjala/coding/juan/KataTest.java rename src/test/java/org/fundacionjala/coding/juan/{Bank => bank}/BankOCRTest.java (97%) rename src/test/java/org/fundacionjala/coding/juan/{ => eanvalidator}/EanValidatorTest.java (93%) rename src/test/java/org/fundacionjala/coding/{ => juan}/movies/ChildrenTest.java (97%) rename src/test/java/org/fundacionjala/coding/{ => juan}/movies/CustomerTest.java (91%) rename src/test/java/org/fundacionjala/coding/{ => juan}/movies/NewReleaseTest.java (93%) rename src/test/java/org/fundacionjala/coding/{ => juan}/movies/RegularTest.java (97%) rename src/test/java/org/fundacionjala/coding/juan/{ => spinwords}/SpinWordsTest.java (91%) diff --git a/src/main/java/org/fundacionjala/coding/juan/Kata.java b/src/main/java/org/fundacionjala/coding/juan/Kata.java deleted file mode 100644 index 655ffba..0000000 --- a/src/main/java/org/fundacionjala/coding/juan/Kata.java +++ /dev/null @@ -1,46 +0,0 @@ -package org.fundacionjala.coding.juan; - -import java.util.Arrays; - -/** - * Created by Administrator on 6/19/2017. - */ -public class Kata { - - /** - * Kata. - * - * @param number is the string of numbers - * @return the higtest and lowest numbers - */ - public String hingAndLow(final String number) { - String[] numbers = number.split(" "); - Integer[] num = new Integer[numbers.length]; - for (int i = 0; i < numbers.length; i++) { - num[i] = Integer.parseInt(numbers[i]); - } - Arrays.sort(num); - return String.format("%d %d", num[num.length - 1], num[0]); - - } - - /** - * Kata. - * - * @param num is the number. - * @return the multiples. - */ - public int solution(final int num) { - int number = 0; - for (int i = 0; i < num; i++) { - if (i % 3 == 0 || i % 5 == 0) { - number = number + i; - } - } - return number; - } - - -} - - diff --git a/src/main/java/org/fundacionjala/coding/juan/Bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java similarity index 98% rename from src/main/java/org/fundacionjala/coding/juan/Bank/BankOCR.java rename to src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index 2144885..5ab58d0 100644 --- a/src/main/java/org/fundacionjala/coding/juan/Bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -1,4 +1,4 @@ -package org.fundacionjala.coding.juan.Bank; +package org.fundacionjala.coding.juan.bank; import java.util.HashMap; import java.util.Map; diff --git a/src/main/java/org/fundacionjala/coding/juan/EanValidator.java b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java similarity index 76% rename from src/main/java/org/fundacionjala/coding/juan/EanValidator.java rename to src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java index 90346f6..e645576 100644 --- a/src/main/java/org/fundacionjala/coding/juan/EanValidator.java +++ b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java @@ -1,18 +1,19 @@ -package org.fundacionjala.coding.juan; +package org.fundacionjala.coding.juan.eanvalidator; /** * @author Juan Pablo */ public final class EanValidator { /** - * CONSTRUCTOR. + * constructor. */ private EanValidator() { } + /** * @param eanCode is the code provided as input. - * @return the validation. + * @return the validation. */ public static boolean validating(final String eanCode) { @@ -32,9 +33,6 @@ public static boolean validating(final String eanCode) { if (sum % finalFactor != 0) { checksum = (finalFactor - (sum % finalFactor)); } - if (eanCode.charAt(eanCode.length() - 1) - aux == checksum) { - return true; - } - return false; + return eanCode.charAt(eanCode.length() - 1) - aux == checksum; } } diff --git a/src/main/java/org/fundacionjala/coding/juan/SpinWords.java b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java similarity index 59% rename from src/main/java/org/fundacionjala/coding/juan/SpinWords.java rename to src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java index e188caa..e5d677c 100644 --- a/src/main/java/org/fundacionjala/coding/juan/SpinWords.java +++ b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java @@ -1,7 +1,7 @@ -package org.fundacionjala.coding.juan; +package org.fundacionjala.coding.juan.spinWords; /** - * Created by Administrator on 3/10/2017. + * Created by Juan on 3/10/2017. */ public final class SpinWords { /** @@ -26,19 +26,19 @@ public static String spinWords(final String sentence) { } else { String[] separatedWords = sentence.split(" "); StringBuilder result = new StringBuilder(); - for (int i = 0; i < separatedWords.length; i++) { + for (String separatedWord : separatedWords) { - if (separatedWords[i].length() > limitWord) { - for (int j = separatedWords[i].length() - 1; j >= 0; j--) { - result.append(separatedWords[i].charAt(j)); + if (separatedWord.length() > limitWord) { + for (int j = separatedWord.length() - 1; j >= 0; j--) { + result.append(separatedWord.charAt(j)); } - result.append(" "); + result.append(" "); } else { - for (int j = 0; j < separatedWords[i].length(); j++) { - result.append(separatedWords[i].charAt(j)); + for (int j = 0; j < separatedWord.length(); j++) { + result.append(separatedWord.charAt(j)); } - result.append(" "); + result.append(" "); } } diff --git a/src/main/java/org/fundacionjala/coding/juan/test/Arrayaarage.java b/src/main/java/org/fundacionjala/coding/juan/test/ArrayAverage.java similarity index 87% rename from src/main/java/org/fundacionjala/coding/juan/test/Arrayaarage.java rename to src/main/java/org/fundacionjala/coding/juan/test/ArrayAverage.java index 5a760d4..4a9fd14 100644 --- a/src/main/java/org/fundacionjala/coding/juan/test/Arrayaarage.java +++ b/src/main/java/org/fundacionjala/coding/juan/test/ArrayAverage.java @@ -1,14 +1,14 @@ package org.fundacionjala.coding.juan.test; /** - * Created by Administrator on 3/23/2017. + * Created by Juan on 3/23/2017. */ -final class Arrayaarage { +final class ArrayAverage { /** * constructor. */ - private Arrayaarage() { + private ArrayAverage() { } /** diff --git a/src/test/java/org/fundacionjala/coding/juan/KataTest.java b/src/test/java/org/fundacionjala/coding/juan/KataTest.java deleted file mode 100644 index ce2fbf0..0000000 --- a/src/test/java/org/fundacionjala/coding/juan/KataTest.java +++ /dev/null @@ -1,87 +0,0 @@ -package org.fundacionjala.coding.juan; - -import org.junit.Test; - -import static org.junit.Assert.assertEquals; - -/** - * Created by Administrator on 6/19/2017. - */ -public class KataTest { - private Kata kata = new Kata(); - - /** - * Test. - */ - @Test - public void someTest() { - assertEquals(kata.hingAndLow("4 5 29 54 4 0 -214 542 -64 1 -3 6 -6"), "542 -214"); - } - - /** - * Test. - */ - @Test - public void plusMinusTest() { - assertEquals(kata.hingAndLow("1 -1"), "1 -1"); - } - - /** - * Test. - */ - @Test - public void plusPlusTest() { - assertEquals(kata.hingAndLow("1 1"), "1 1"); - } - - /** - * Test. - */ - @Test - public void minusMinusTest() { - assertEquals(kata.hingAndLow("-1 -1"), "-1 -1"); - } - - /** - * Test. - */ - @Test - public void plusMinusZeroTest() { - assertEquals(kata.hingAndLow("1 -1 0"), "1 -1"); - } - - /** - * Test. - */ - @Test - public void plusPlusZeroTest() { - assertEquals(kata.hingAndLow("1 1 0"), "1 0"); - } - - /** - * Test. - */ - @Test - public void minusMinusZeroTest() { - assertEquals(kata.hingAndLow("-1 -1 0"), "0 -1"); - } - - /** - * Test. - */ - @Test - public void singleTest() { - assertEquals(kata.hingAndLow("42"), "42 42"); - } - - /** - * KAta. - */ - @Test - public void test() { - - assertEquals(23, kata.solution(10)); - assertEquals(78, kata.solution(20)); - assertEquals(9168, kata.solution(200)); - } -} diff --git a/src/test/java/org/fundacionjala/coding/juan/Bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java similarity index 97% rename from src/test/java/org/fundacionjala/coding/juan/Bank/BankOCRTest.java rename to src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index cfaf2e1..5ca9e29 100644 --- a/src/test/java/org/fundacionjala/coding/juan/Bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -1,4 +1,4 @@ -package org.fundacionjala.coding.juan.Bank; +package org.fundacionjala.coding.juan.bank; import org.junit.Test; diff --git a/src/test/java/org/fundacionjala/coding/juan/EanValidatorTest.java b/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java similarity index 93% rename from src/test/java/org/fundacionjala/coding/juan/EanValidatorTest.java rename to src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java index ff89828..fb902b3 100644 --- a/src/test/java/org/fundacionjala/coding/juan/EanValidatorTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java @@ -1,11 +1,11 @@ -package org.fundacionjala.coding.juan; +package org.fundacionjala.coding.juan.eanvalidator; import org.junit.Test; import static org.junit.Assert.assertTrue; /** - * Created by Administrator on 3/10/2017. + * Created by Juan on 3/10/2017. */ public class EanValidatorTest { /** @@ -22,6 +22,7 @@ public void testCheckLengthWhenTheEANStringNumberHasExactly13Digits() { // then: assertTrue(actualResult); } + /** * Test when the EAN string number has less than 13 digits. */ diff --git a/src/test/java/org/fundacionjala/coding/movies/ChildrenTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java similarity index 97% rename from src/test/java/org/fundacionjala/coding/movies/ChildrenTest.java rename to src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java index fe92923..e9382ad 100644 --- a/src/test/java/org/fundacionjala/coding/movies/ChildrenTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java @@ -5,7 +5,7 @@ import static org.junit.Assert.assertEquals; /** - * Created by Administrator on 3/23/2017. + * Created by Juan on 3/23/2017. */ public class ChildrenTest { /** diff --git a/src/test/java/org/fundacionjala/coding/movies/CustomerTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java similarity index 91% rename from src/test/java/org/fundacionjala/coding/movies/CustomerTest.java rename to src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java index c9122a5..e3dc8a9 100644 --- a/src/test/java/org/fundacionjala/coding/movies/CustomerTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java @@ -47,8 +47,7 @@ public void testMovieWhenDayRentedISLessForChildren() { final double actualResult = customer.calculateTotalAmount(); // then: - final double expectedResult = MINORPRICE; - assertEquals(expectedResult, actualResult, 0); + assertEquals(MINORPRICE, actualResult, 0); } } diff --git a/src/test/java/org/fundacionjala/coding/movies/NewReleaseTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java similarity index 93% rename from src/test/java/org/fundacionjala/coding/movies/NewReleaseTest.java rename to src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java index 3fd6934..202669d 100644 --- a/src/test/java/org/fundacionjala/coding/movies/NewReleaseTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java @@ -5,7 +5,7 @@ import static org.junit.Assert.assertEquals; /** - * Created by Administrator on 3/23/2017. + * Created by Juan on 3/23/2017. */ public class NewReleaseTest { /** diff --git a/src/test/java/org/fundacionjala/coding/movies/RegularTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java similarity index 97% rename from src/test/java/org/fundacionjala/coding/movies/RegularTest.java rename to src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java index 8028e94..f711c1c 100644 --- a/src/test/java/org/fundacionjala/coding/movies/RegularTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java @@ -5,7 +5,7 @@ import static org.junit.Assert.assertEquals; /** - * Created by Administrator on 3/23/2017. + * Created by Juan on 3/23/2017. */ public class RegularTest { /** diff --git a/src/test/java/org/fundacionjala/coding/juan/SpinWordsTest.java b/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java similarity index 91% rename from src/test/java/org/fundacionjala/coding/juan/SpinWordsTest.java rename to src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java index 511180e..5dc9097 100644 --- a/src/test/java/org/fundacionjala/coding/juan/SpinWordsTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java @@ -1,11 +1,12 @@ -package org.fundacionjala.coding.juan; +package org.fundacionjala.coding.juan.spinwords; import org.junit.Test; +import org.fundacionjala.coding.juan.spinWords.SpinWords; import static org.junit.Assert.assertEquals; /** - * Created by Administrator on 3/10/2017. + * Created by Juan on 3/10/2017. */ public class SpinWordsTest { diff --git a/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java b/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java index 9b855b6..612dac9 100644 --- a/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java @@ -7,7 +7,7 @@ import static org.junit.Assert.assertEquals; /** - * Created by Administrator on 3/23/20. + * Created by Juan on 3/23/20. */ public class ArrayAvarageTest { @@ -24,9 +24,9 @@ public void basicTests() { final int[] array3 = new int[]{1, 3, 5, 1, -10}; //When - double[] actualArray1 = Arrayaarage.getArrayAverage(array1); - double[] actualArray2 = Arrayaarage.getArrayAverage(array2); - double[] actualArray3 = Arrayaarage.getArrayAverage(array3); + double[] actualArray1 = ArrayAverage.getArrayAverage(array1); + double[] actualArray2 = ArrayAverage.getArrayAverage(array2); + double[] actualArray3 = ArrayAverage.getArrayAverage(array3); //final final double[] expectedArray1 = new double[]{2, 2, 2, 2}; @@ -48,9 +48,9 @@ public void nullEmptyTests() { int[] array3 = new int[]{2}; // when - double[] actualArray1 = Arrayaarage.getArrayAverage(array1); - double[] actualArray2 = Arrayaarage.getArrayAverage(array2); - double[] actualArray3 = Arrayaarage.getArrayAverage(array3); + double[] actualArray1 = ArrayAverage.getArrayAverage(array1); + double[] actualArray2 = ArrayAverage.getArrayAverage(array2); + double[] actualArray3 = ArrayAverage.getArrayAverage(array3); //final int zero = 0; @@ -58,7 +58,7 @@ public void nullEmptyTests() { assertEquals(zero, actualArray1.length); assertEquals(zero, actualArray2.length); assertEquals(zero, actualArray3.length); - //Arrayaarage average = new Arrayaarage(); + //ArrayAverage average = new ArrayAverage(); } } From 268d20903b8ad309b79651de2be54b9f12128f29 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Wed, 28 Jun 2017 19:13:45 -0400 Subject: [PATCH 12/42] All Katas --- coding.iml | 12 +++ .../coding/juan/gas/Evaporator.java | 29 +++++++ .../highestandlowest/HightesAndLowest.java | 25 ++++++ .../multiplesof3and5/MultiplesOf3And5.java | 24 ++++++ .../coding/juan/gas/EvaporatorTest.java | 77 +++++++++++++++++++ .../HightesAndLowestTest.java | 77 +++++++++++++++++++ .../MultiplesOf3And5Test.java | 24 ++++++ 7 files changed, 268 insertions(+) create mode 100644 coding.iml create mode 100644 src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowest.java create mode 100644 src/main/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/gas/EvaporatorTest.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowestTest.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5Test.java diff --git a/coding.iml b/coding.iml new file mode 100644 index 0000000..96d565b --- /dev/null +++ b/coding.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java new file mode 100644 index 0000000..0731121 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java @@ -0,0 +1,29 @@ +package org.fundacionjala.coding.juan.gas; + +/** + * Created by Administrator on 6/28/2017. + */ +public class Evaporator { + /** + * Calculate the life of gas. + * + * @param content how much gas have. + * @param evap how much waste. + * @param threshold the limit. + * @return how many days. + */ + public int evaporator(final double content, final int evap, final int threshold) { + int days = 0; + double waste1; + double limit1 = content * threshold / 100.00; + double conte = content; + while (conte >= limit1) { + waste1 = conte * evap / 100.00; + conte = conte - waste1; + days++; + } + return days; + + + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowest.java b/src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowest.java new file mode 100644 index 0000000..392d7be --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowest.java @@ -0,0 +1,25 @@ +package org.fundacionjala.coding.juan.highestandlowest; + +import java.util.Arrays; + +/** + * Created by Administrator on 6/28/2017. + */ +public class HightesAndLowest { + /** + * Kata. + * + * @param number is the string of numbers + * @return the higtest and lowest numbers + */ + public String hingAndLow(final String number) { + String[] numbers = number.split(" "); + Integer[] num = new Integer[numbers.length]; + for (int i = 0; i < numbers.length; i++) { + num[i] = Integer.parseInt(numbers[i]); + } + Arrays.sort(num); + return String.format("%d %d", num[num.length - 1], num[0]); + + } +} diff --git a/src/main/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5.java b/src/main/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5.java new file mode 100644 index 0000000..4f58311 --- /dev/null +++ b/src/main/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5.java @@ -0,0 +1,24 @@ +package org.fundacionjala.coding.juan.multiplesof3and5; + +/** + * Created by Administrator on 6/28/2017. + */ +public class MultiplesOf3And5 { + /** + * Kata. + * + * @param num is the number. + * @return the multiples. + */ + public int solution(final int num) { + int number = 0; + final int three = 3; + final int five = 5; + for (int i = 0; i < num; i++) { + if (i % three == 0 || i % five == 0) { + number = number + i; + } + } + return number; + } +} diff --git a/src/test/java/org/fundacionjala/coding/juan/gas/EvaporatorTest.java b/src/test/java/org/fundacionjala/coding/juan/gas/EvaporatorTest.java new file mode 100644 index 0000000..b767729 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/gas/EvaporatorTest.java @@ -0,0 +1,77 @@ +package org.fundacionjala.coding.juan.gas; + +import org.junit.Test; +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 6/28/2017. + */ +public class EvaporatorTest { + private Evaporator evaporator = new Evaporator(); + + /** + * test. + */ + @Test + public void testEvaporatorOne() { + assertEquals(22, evaporator.evaporator(10, 10, 10)); + } + + /** + * test. + */ + @Test + public void testEvaporatorTwo() { + assertEquals(29, evaporator.evaporator(10, 10, 5)); + } + + /** + * test. + */ + @Test + public void testEvaporatorThree() { + assertEquals(59, evaporator.evaporator(100, 5, 5)); + } + + /** + * test. + */ + @Test + public void testEvaporatorFour() { + assertEquals(37, evaporator.evaporator(50, 12, 1)); + } + + /** + * test. + */ + @Test + public void testEvaporatorFive() { + assertEquals(31, evaporator.evaporator(47.5, 8, 8)); + } + + /** + * test. + */ + @Test + public void testEvaporatorSix() { + assertEquals(459, evaporator.evaporator(100, 1, 1)); + } + + /** + * test. + */ + @Test + public void testEvaporatorSeven() { + assertEquals(459, evaporator.evaporator(10, 1, 1)); + } + + /** + * test. + */ + @Test + public void testEvaporatorEight() { + assertEquals(299, evaporator.evaporator(100, 1, 5)); + } + +} + diff --git a/src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowestTest.java b/src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowestTest.java new file mode 100644 index 0000000..9ddb6fa --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowestTest.java @@ -0,0 +1,77 @@ +package org.fundacionjala.coding.juan.highestandlowest; + +import org.junit.Test; +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 6/28/2017. + */ +public class HightesAndLowestTest { + private HightesAndLowest hightesAndLowest = new HightesAndLowest(); + + /** + * Test. + */ + @Test + public void someTest() { + assertEquals(hightesAndLowest.hingAndLow("4 5 29 54 4 0 -214 542 -64 1 -3 6 -6"), "542 -214"); + } + + /** + * Test. + */ + @Test + public void plusMinusTest() { + assertEquals(hightesAndLowest.hingAndLow("1 -1"), "1 -1"); + } + + /** + * Test. + */ + @Test + public void plusPlusTest() { + assertEquals(hightesAndLowest.hingAndLow("1 1"), "1 1"); + } + + /** + * Test. + */ + @Test + public void minusMinusTest() { + assertEquals(hightesAndLowest.hingAndLow("-1 -1"), "-1 -1"); + } + + /** + * Test. + */ + @Test + public void plusMinusZeroTest() { + assertEquals(hightesAndLowest.hingAndLow("1 -1 0"), "1 -1"); + } + + /** + * Test. + */ + @Test + public void plusPlusZeroTest() { + assertEquals(hightesAndLowest.hingAndLow("1 1 0"), "1 0"); + } + + /** + * Test. + */ + @Test + public void minusMinusZeroTest() { + assertEquals(hightesAndLowest.hingAndLow("-1 -1 0"), "0 -1"); + } + + /** + * Test. + */ + @Test + public void singleTest() { + assertEquals(hightesAndLowest.hingAndLow("42"), "42 42"); + } + +} + diff --git a/src/test/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5Test.java b/src/test/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5Test.java new file mode 100644 index 0000000..4d07f26 --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5Test.java @@ -0,0 +1,24 @@ +package org.fundacionjala.coding.juan.multiplesof3and5; + +import org.junit.Test; +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 6/28/2017. + */ +public class MultiplesOf3And5Test { + private MultiplesOf3And5 kata = new MultiplesOf3And5(); + + /** + * KAta. + */ + @Test + public void test() { + + assertEquals(23, kata.solution(10)); + assertEquals(78, kata.solution(20)); + assertEquals(9168, kata.solution(200)); + } + +} + From 6e0be4e2b58273e31a787d643a44f41a64f2c80b Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 1 Jul 2017 18:41:48 -0400 Subject: [PATCH 13/42] Code improved Coverage 80% --- .../coding/carlos/SpinWords.java | 37 --------- .../coding/juan/bank/BankOCR.java | 2 - .../juan/eanvalidator/EanValidator.java | 2 + .../coding/juan/gas/Evaporator.java | 15 ++-- .../coding/juan/spinWords/SpinWords.java | 5 +- .../coding/carlos/SpinWordsTest.java | 76 ------------------- .../juan/eanvalidator/EanValidatorTest.java | 28 +++++++ .../coding/juan/movies/ChildrenTest.java | 2 +- .../coding/juan/movies/NewReleaseTest.java | 2 +- .../coding/juan/movies/RegularTest.java | 2 +- .../coding/juan/spinwords/SpinWordsTest.java | 30 ++++++++ 11 files changed, 72 insertions(+), 129 deletions(-) delete mode 100644 src/main/java/org/fundacionjala/coding/carlos/SpinWords.java delete mode 100644 src/test/java/org/fundacionjala/coding/carlos/SpinWordsTest.java diff --git a/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java b/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java deleted file mode 100644 index 6685733..0000000 --- a/src/main/java/org/fundacionjala/coding/carlos/SpinWords.java +++ /dev/null @@ -1,37 +0,0 @@ -package org.fundacionjala.coding.carlos; - -import java.util.stream.Collectors; -import java.util.stream.Stream; - -/** - * Write a function that takes in a string of one or more words, and returns the same string, - * but with all five or more letter words reversed (Just like the name of this Kata). - * Strings passed in will consist of only letters and spaces. - * Spaces will be included only when more than one word is present. - */ -public final class SpinWords { - - private static final int LIMIT = 5; - - private static final String SPACE_DELIMITER = " "; - - /** - * Constructor private. - */ - private SpinWords() { - } - - /** - * Takes in a string of one or more words, and returns the same string, - * but with all five or more letter words reversed. - * - * @param sentence String with words. - * @return the same string, but with all five or more letter words reversed. - */ - public static String spinWords(final String sentence) { - return Stream.of(sentence.split(SPACE_DELIMITER)) - .map(word -> word.length() >= LIMIT ? new StringBuilder(word).reverse().toString() : word) - .collect(Collectors.joining(SPACE_DELIMITER)); - } - -} diff --git a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index 5ab58d0..38515b9 100644 --- a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -80,7 +80,6 @@ private BankOCR() { } /** - * * @param value to get int. * @return characters in a range 0-9 */ @@ -95,7 +94,6 @@ private static String getKey(final String value) { } /** - * * @param numberScanned String * @return true or false */ diff --git a/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java index e645576..36a5ebf 100644 --- a/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java +++ b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java @@ -23,7 +23,9 @@ public static boolean validating(final String eanCode) { final int multiply = 3; final int finalFactor = 10; final int aux = 48; + int a = 0; for (int i = 0; i < finalNumber; i++) { + // a = (i % 2 != 0) ? sum += ((eanCode.charAt(i) - aux) * multiply) : eanCode.charAt(i) - aux; if (i % 2 != 0) { sum += ((eanCode.charAt(i) - aux) * multiply); } else { diff --git a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java index 0731121..a0819de 100644 --- a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java +++ b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java @@ -7,19 +7,16 @@ public class Evaporator { /** * Calculate the life of gas. * - * @param content how much gas have. - * @param evap how much waste. - * @param threshold the limit. + * @param content how much gas have. + * @param evap how much waste. + * @param threshold the limit. * @return how many days. */ - public int evaporator(final double content, final int evap, final int threshold) { + public int evaporator(double content, final int evap, final int threshold) { int days = 0; - double waste1; double limit1 = content * threshold / 100.00; - double conte = content; - while (conte >= limit1) { - waste1 = conte * evap / 100.00; - conte = conte - waste1; + while (content >= limit1) { + content = content - content * evap / 100.00; days++; } return days; diff --git a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java index e5d677c..61124b1 100644 --- a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java +++ b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java @@ -13,10 +13,11 @@ private SpinWords() { /** * Get the words spined if it have 5 or more letters. - * @param sentence is the word or words + * + * @param sentence is the word or words * @return the word spined. */ - public static String spinWords(final String sentence) { + public static String spinWords(final String sentence) { final int limitWord = 4; if (sentence == null) { return ""; diff --git a/src/test/java/org/fundacionjala/coding/carlos/SpinWordsTest.java b/src/test/java/org/fundacionjala/coding/carlos/SpinWordsTest.java deleted file mode 100644 index 3e84e39..0000000 --- a/src/test/java/org/fundacionjala/coding/carlos/SpinWordsTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package org.fundacionjala.coding.carlos; - -import org.junit.Test; - -import static org.junit.Assert.assertEquals; - -/** - * Tests for {@link SpinWords}. - */ -public class SpinWordsTest { - - /** - * Test when sentence has words with more than 5 characters. - */ - @Test - public void testSpinWordsWhenSentenceHasWordsWithMoreThanFiveCharacters() { - // given: - final String sentence = "Hey fellow warriors"; - - // when: - final String actualResult = SpinWords.spinWords(sentence); - - // then: - final String expectedResult = "Hey wollef sroirraw"; - assertEquals(expectedResult, actualResult); - } - - /** - * Test when sentence doesn't have words with more than 5 characters. - */ - @Test - public void testSpinWordsWhenSentenceDoesNotHaveWordsWithMoreThanFiveCharacters() { - // given: - final String sentence = "This is a test"; - - // when: - final String actualResult = SpinWords.spinWords(sentence); - - // then: - final String expectedResult = "This is a test"; - assertEquals(expectedResult, actualResult); - } - - /** - * Test when sentence has words with 5 characters. - */ - @Test - public void testSpinWordsWhenSentenceHasWordsWithFiveCharacters() { - // given: - final String sentence = "This is a table"; - - // when: - final String actualResult = SpinWords.spinWords(sentence); - - // then: - final String expectedResult = "This is a elbat"; - assertEquals(expectedResult, actualResult); - } - - /** - * Test when sentence has one just word. - */ - @Test - public void testSpinWordsWhenSentenceHasOneWord() { - // given: - final String sentence = "Welcome"; - - // when: - final String actualResult = SpinWords.spinWords(sentence); - - // then: - final String expectedResult = "emocleW"; - assertEquals(expectedResult, actualResult); - } - -} diff --git a/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java b/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java index fb902b3..169ff29 100644 --- a/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java @@ -2,6 +2,7 @@ import org.junit.Test; +import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; /** @@ -53,4 +54,31 @@ public void testValidateTheCheckSumIsEqualToZero() { // then: assertTrue(!actualResult); } + + /** + * test. + */ + @Test + public void testtingEanValidaor() { + // given: + final String eanStringNumber = "9783815820864"; + //when: + final boolean actualResult = EanValidator.validating(eanStringNumber); + //then: + assertFalse(actualResult); + } + + /** + * Test. + */ + @Test + public void testingEanValidator() { + // given: + final String eanStringNumber = "9783827317100"; + //when: + final boolean actualResult = EanValidator.validating(eanStringNumber); + //then: + assertTrue(actualResult); + + } } diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java index e9382ad..b268424 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java @@ -15,7 +15,7 @@ public class ChildrenTest { public void testChildrenMovieAmountWhenDaysRentetIsLessThanTheLimit() { // given: - final Children children = new Children("Spy Kids"); + final Movie children = new Children("Spy Kids"); final int daysRentet = 2; // when: final double actualResult = children.calculateAmount(daysRentet); diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java index 202669d..659b3dd 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java @@ -15,7 +15,7 @@ public class NewReleaseTest { public void testNewRealeasenMovieAmount() { // given: - final NewRelease newRelease = new NewRelease("Logan"); + final Movie newRelease = new NewRelease("Logan"); final int daysRentet = 2; // when: final double actualResult = newRelease.calculateAmount(daysRentet); diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java index f711c1c..099f02d 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java @@ -15,7 +15,7 @@ public class RegularTest { public void testRegularMovieWhenDaysRentedAreLessThanTheLimit() { // given: - final Regular regular = new Regular("Logan"); + final Movie regular = new Regular("Logan"); final int daysRentet = 1; // when: final double actualResult = regular.calculateAmount(daysRentet); diff --git a/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java b/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java index 5dc9097..7d755ec 100644 --- a/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java @@ -27,6 +27,7 @@ public void testspinWordsWhenTheSentenseHasFiveWords() { } + /** * Testing when the word has more than five letters. */ @@ -41,6 +42,7 @@ public void testSpinWordsWhenTheSenteseHasMoreThanFiveWords() { final String exectedResult = "odepipelelaraP"; assertEquals(exectedResult, actualResult); } + /** * Testing when the sentese has spaces. */ @@ -60,6 +62,34 @@ public void testSpinWordsWhenTheSenteseHasSpaces() { assertEquals(exectedResultA, actualResultA); } + /** + * Testing empty string. + */ + @Test + public void testingAnEmptyString() { + //given + final String sentence = null; + //When + final String actualResult = SpinWords.spinWords(sentence); + //Then + final String expectedResult = ""; + assertEquals(expectedResult, actualResult); + } + + /** + * Tesing a word with less than Five letters. + */ + + @Test + public void testAwordWithLessThanFiveLetters() { + //given + final String sentence = "hi"; + //When + final String actualResult = SpinWords.spinWords(sentence); + //Then + final String expectedResult = "hi"; + assertEquals(expectedResult, actualResult); + } } From 19a464d15af0bcb9742a5577f09cf657067a31c7 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 2 Jul 2017 17:47:11 -0400 Subject: [PATCH 14/42] Code improved Coverage 90% --- git | 0 .../coding/juan/bank/BankOCRTest.java | 18 ++++++++ .../juan/eanvalidator/EanValidatorTest.java | 18 +++++++- .../coding/juan/movies/CustomerTest.java | 24 ++++++++++ .../coding/juan/movies/RegularTest.java | 41 +++++++++++++++++ .../coding/juan/movies/RentalTest.java | 46 +++++++++++++++++++ .../coding/juan/spinwords/SpinWordsTest.java | 18 ++++++++ .../coding/juan/test/ArrayAvarageTest.java | 30 +++++++++--- 8 files changed, 188 insertions(+), 7 deletions(-) create mode 100644 git create mode 100644 src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java diff --git a/git b/git new file mode 100644 index 0000000..e69de29 diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index 5ca9e29..648308d 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -1,8 +1,13 @@ package org.fundacionjala.coding.juan.bank; +import java.lang.reflect.Constructor; +import java.lang.reflect.Modifier; + import org.junit.Test; + import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; /** * Created by Juan Pablo on 26/03/2017. @@ -66,4 +71,17 @@ public void testingAnGivenStringToGetTheAccount() { assertEquals(expectedResult, actualResult); } + /** + * Test constructor. + * + * @throws Exception exception. + */ + @Test + public void testConstructorIsPrivate() throws Exception { + Constructor constructor = BankOCR.class.getDeclaredConstructor(); + assertTrue(Modifier.isPrivate(constructor.getModifiers())); + constructor.setAccessible(true); + constructor.newInstance(); + } + } diff --git a/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java b/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java index 169ff29..a22ac05 100644 --- a/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java @@ -1,5 +1,8 @@ package org.fundacionjala.coding.juan.eanvalidator; +import java.lang.reflect.Constructor; +import java.lang.reflect.Modifier; + import org.junit.Test; import static org.junit.Assert.assertFalse; @@ -77,8 +80,21 @@ public void testingEanValidator() { final String eanStringNumber = "9783827317100"; //when: final boolean actualResult = EanValidator.validating(eanStringNumber); - //then: + //then assertTrue(actualResult); } + + /** + * Test constructor. + * + * @throws Exception exception. + */ + @Test + public void testConstructorIsPrivate() throws Exception { + Constructor constructor = EanValidator.class.getDeclaredConstructor(); + assertTrue(Modifier.isPrivate(constructor.getModifiers())); + constructor.setAccessible(true); + constructor.newInstance(); + } } diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java index e3dc8a9..129c319 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java @@ -50,4 +50,28 @@ public void testMovieWhenDayRentedISLessForChildren() { assertEquals(MINORPRICE, actualResult, 0); } + + /** + * Test customer class. + */ + @Test + public void testCustomer() { + // given + Customer customer = new Customer("Juan"); + customer.addRental(new Rental(new NewRelease("The Avengers"), 2)); + customer.addRental(new Rental(new Regular("Iron Man"), 1)); + + // when + final String actualResult = customer.generateDetail(); + + // then + final String expectedResult = "Rental Record for Juan\n" + + "\tThe Avengers\t6.0\n" + + "\tIron Man\t1.5\n" + + "Amount owed is 7.5\n" + + "You earned 3 frequent renter points"; + assertEquals(actualResult, expectedResult); + } + + } diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java index 099f02d..d286671 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java @@ -58,4 +58,45 @@ public void testRegularMovieWhenDaysRentedAreMoreThanTheLimit() { final double expectedResult = 6; assertEquals(expectedResult, actualResult, 0); } + + /** + * Test title. + */ + @Test + public void testRegularMovieTitle() { + + // given: + final Regular regular = new Regular("Logan"); + final int daysRentet = 5; + // when: + final String actualResult = regular.getTitle(); + + // then: + final String expectedResult = "Logan"; + assertEquals(expectedResult, actualResult); + } + + /** + * Test points. + */ + @Test + public void testCalculeFrequentRentedPoints() { + + // given: + final Regular regular = new Regular("Logan"); + final int daysRentet = 2; + // when: + final double actualResult = regular.calculateAmount(daysRentet); + + // then: + final double expectedResult = 1.5; + assertEquals(expectedResult, actualResult, 0); + } } + + + + + + + diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java new file mode 100644 index 0000000..bc5214a --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java @@ -0,0 +1,46 @@ +package org.fundacionjala.coding.juan.movies; + +import org.junit.Test; +import static org.junit.Assert.assertEquals; + +/** + * Created by Administrator on 7/2/2017. + */ +public class RentalTest { + /** + * Test get title. + */ + @Test + public void testGetTitle() { + // given: + final Regular regular = new Regular("Logan"); + final int daysRentet = 2; + final Rental rental = new Rental(regular, daysRentet); + + // when: + final String actualResult = rental.getMovie().getTitle(); + + // then: + final String expectedResult = "Logan"; + assertEquals(expectedResult, actualResult); + } + + /** + * Test days rented. + */ + + @Test + public void testDaysRented() { + // given: + final Regular regular = new Regular("Logan"); + final int daysRentet = 2; + final Rental rental = new Rental(regular, daysRentet); + + // when: + final int actualResult = rental.getDaysRented(); + + // then: + final int expectedResult = 2; + assertEquals(expectedResult, actualResult); + } +} diff --git a/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java b/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java index 7d755ec..f26285c 100644 --- a/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java @@ -1,9 +1,14 @@ package org.fundacionjala.coding.juan.spinwords; +import java.lang.reflect.Constructor; +import java.lang.reflect.Modifier; + import org.junit.Test; + import org.fundacionjala.coding.juan.spinWords.SpinWords; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; /** * Created by Juan on 3/10/2017. @@ -91,5 +96,18 @@ public void testAwordWithLessThanFiveLetters() { assertEquals(expectedResult, actualResult); } + /** + * Test constructor. + * + * @throws Exception exception. + */ + @Test + public void testConstructorIsPrivate() throws Exception { + Constructor constructor = SpinWords.class.getDeclaredConstructor(); + assertTrue(Modifier.isPrivate(constructor.getModifiers())); + constructor.setAccessible(true); + constructor.newInstance(); + } + } diff --git a/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java b/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java index 612dac9..46a7ada 100644 --- a/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/test/ArrayAvarageTest.java @@ -2,9 +2,13 @@ import org.junit.Test; +import java.lang.reflect.Constructor; +import java.lang.reflect.Modifier; import java.util.Arrays; + import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; /** * Created by Juan on 3/23/20. @@ -19,9 +23,9 @@ public class ArrayAvarageTest { public void basicTests() { //Given - final int[] array1 = new int[]{2, 2, 2, 2, 2}; - final int[] array2 = new int[]{2, -2, 2, -2, 2}; - final int[] array3 = new int[]{1, 3, 5, 1, -10}; + final int[] array1 = new int[]{2, 2, 2, 2, 2}; + final int[] array2 = new int[]{2, -2, 2, -2, 2}; + final int[] array3 = new int[]{1, 3, 5, 1, -10}; //When double[] actualArray1 = ArrayAverage.getArrayAverage(array1); @@ -29,13 +33,14 @@ public void basicTests() { double[] actualArray3 = ArrayAverage.getArrayAverage(array3); //final - final double[] expectedArray1 = new double[]{2, 2, 2, 2}; - final double[] expectedArray2 = new double[]{0, 0, 0, 0}; - final double[] expectedArray3 = new double[]{2, 4, 3, -4.5}; + final double[] expectedArray1 = new double[]{2, 2, 2, 2}; + final double[] expectedArray2 = new double[]{0, 0, 0, 0}; + final double[] expectedArray3 = new double[]{2, 4, 3, -4.5}; assertEquals(Arrays.toString(actualArray1), Arrays.toString(expectedArray1)); assertEquals(Arrays.toString(actualArray2), Arrays.toString(expectedArray2)); assertEquals(Arrays.toString(actualArray3), Arrays.toString(expectedArray3)); } + /** * testing null and empty values. */ @@ -61,5 +66,18 @@ public void nullEmptyTests() { //ArrayAverage average = new ArrayAverage(); } + + /** + * Test constructor. + * + * @throws Exception exception. + */ + @Test + public void testConstructorIsPrivate() throws Exception { + Constructor constructor = ArrayAverage.class.getDeclaredConstructor(); + assertTrue(Modifier.isPrivate(constructor.getModifiers())); + constructor.setAccessible(true); + constructor.newInstance(); + } } From 98968052e07593f4afe8bf47f012301d5ad78418 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Mon, 3 Jul 2017 10:31:18 -0400 Subject: [PATCH 15/42] ternary condition on EanValidator Coverage 90% --- .../coding/juan/eanvalidator/EanValidator.java | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java index 36a5ebf..a07e746 100644 --- a/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java +++ b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java @@ -23,14 +23,9 @@ public static boolean validating(final String eanCode) { final int multiply = 3; final int finalFactor = 10; final int aux = 48; - int a = 0; for (int i = 0; i < finalNumber; i++) { - // a = (i % 2 != 0) ? sum += ((eanCode.charAt(i) - aux) * multiply) : eanCode.charAt(i) - aux; - if (i % 2 != 0) { - sum += ((eanCode.charAt(i) - aux) * multiply); - } else { - sum += (eanCode.charAt(i) - aux); - } + sum += (i % 2 != 0) ? ((eanCode.charAt(i) - aux) * multiply) : (eanCode.charAt(i) - aux); + } if (sum % finalFactor != 0) { checksum = (finalFactor - (sum % finalFactor)); From baccd7edf0b9650aa20d0e9f1acf075dd1a19bab Mon Sep 17 00:00:00 2001 From: jpaitken Date: Mon, 3 Jul 2017 10:48:19 -0400 Subject: [PATCH 16/42] Test refactored --- .../coding/juan/gas/Evaporator.java | 11 ++- ...sAndLowest.java => HightestAndLowest.java} | 11 ++- .../coding/juan/gas/EvaporatorTest.java | 35 +++++-- .../HightesAndLowestTest.java | 77 --------------- .../HightestAndLowestTest.java | 94 +++++++++++++++++++ 5 files changed, 138 insertions(+), 90 deletions(-) rename src/main/java/org/fundacionjala/coding/juan/highestandlowest/{HightesAndLowest.java => HightestAndLowest.java} (76%) delete mode 100644 src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowestTest.java create mode 100644 src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightestAndLowestTest.java diff --git a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java index a0819de..50c7d6d 100644 --- a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java +++ b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java @@ -3,7 +3,14 @@ /** * Created by Administrator on 6/28/2017. */ -public class Evaporator { +public final class Evaporator { + + /** + * Constructor. + */ + private Evaporator() { + } + /** * Calculate the life of gas. * @@ -12,7 +19,7 @@ public class Evaporator { * @param threshold the limit. * @return how many days. */ - public int evaporator(double content, final int evap, final int threshold) { + public static int evaporator(double content, final int evap, final int threshold) { int days = 0; double limit1 = content * threshold / 100.00; while (content >= limit1) { diff --git a/src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowest.java b/src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightestAndLowest.java similarity index 76% rename from src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowest.java rename to src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightestAndLowest.java index 392d7be..4739d3a 100644 --- a/src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowest.java +++ b/src/main/java/org/fundacionjala/coding/juan/highestandlowest/HightestAndLowest.java @@ -5,14 +5,21 @@ /** * Created by Administrator on 6/28/2017. */ -public class HightesAndLowest { +public final class HightestAndLowest { + + /** + * Constructor. + */ + private HightestAndLowest() { + } + /** * Kata. * * @param number is the string of numbers * @return the higtest and lowest numbers */ - public String hingAndLow(final String number) { + public static String hingAndLow(final String number) { String[] numbers = number.split(" "); Integer[] num = new Integer[numbers.length]; for (int i = 0; i < numbers.length; i++) { diff --git a/src/test/java/org/fundacionjala/coding/juan/gas/EvaporatorTest.java b/src/test/java/org/fundacionjala/coding/juan/gas/EvaporatorTest.java index b767729..4c90243 100644 --- a/src/test/java/org/fundacionjala/coding/juan/gas/EvaporatorTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/gas/EvaporatorTest.java @@ -1,20 +1,24 @@ package org.fundacionjala.coding.juan.gas; +import java.lang.reflect.Constructor; +import java.lang.reflect.Modifier; + import org.junit.Test; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; /** * Created by Administrator on 6/28/2017. */ public class EvaporatorTest { - private Evaporator evaporator = new Evaporator(); + /** * test. */ @Test public void testEvaporatorOne() { - assertEquals(22, evaporator.evaporator(10, 10, 10)); + assertEquals(22, Evaporator.evaporator(10, 10, 10)); } /** @@ -22,7 +26,7 @@ public void testEvaporatorOne() { */ @Test public void testEvaporatorTwo() { - assertEquals(29, evaporator.evaporator(10, 10, 5)); + assertEquals(29, Evaporator.evaporator(10, 10, 5)); } /** @@ -30,7 +34,7 @@ public void testEvaporatorTwo() { */ @Test public void testEvaporatorThree() { - assertEquals(59, evaporator.evaporator(100, 5, 5)); + assertEquals(59, Evaporator.evaporator(100, 5, 5)); } /** @@ -38,7 +42,7 @@ public void testEvaporatorThree() { */ @Test public void testEvaporatorFour() { - assertEquals(37, evaporator.evaporator(50, 12, 1)); + assertEquals(37, Evaporator.evaporator(50, 12, 1)); } /** @@ -46,7 +50,7 @@ public void testEvaporatorFour() { */ @Test public void testEvaporatorFive() { - assertEquals(31, evaporator.evaporator(47.5, 8, 8)); + assertEquals(31, Evaporator.evaporator(47.5, 8, 8)); } /** @@ -54,7 +58,7 @@ public void testEvaporatorFive() { */ @Test public void testEvaporatorSix() { - assertEquals(459, evaporator.evaporator(100, 1, 1)); + assertEquals(459, Evaporator.evaporator(100, 1, 1)); } /** @@ -62,7 +66,7 @@ public void testEvaporatorSix() { */ @Test public void testEvaporatorSeven() { - assertEquals(459, evaporator.evaporator(10, 1, 1)); + assertEquals(459, Evaporator.evaporator(10, 1, 1)); } /** @@ -70,7 +74,20 @@ public void testEvaporatorSeven() { */ @Test public void testEvaporatorEight() { - assertEquals(299, evaporator.evaporator(100, 1, 5)); + assertEquals(299, Evaporator.evaporator(100, 1, 5)); + } + + /** + * Test constructor. + * + * @throws Exception exception. + */ + @Test + public void testConstructorIsPrivate() throws Exception { + Constructor constructor = Evaporator.class.getDeclaredConstructor(); + assertTrue(Modifier.isPrivate(constructor.getModifiers())); + constructor.setAccessible(true); + constructor.newInstance(); } } diff --git a/src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowestTest.java b/src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowestTest.java deleted file mode 100644 index 9ddb6fa..0000000 --- a/src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightesAndLowestTest.java +++ /dev/null @@ -1,77 +0,0 @@ -package org.fundacionjala.coding.juan.highestandlowest; - -import org.junit.Test; -import static org.junit.Assert.assertEquals; - -/** - * Created by Administrator on 6/28/2017. - */ -public class HightesAndLowestTest { - private HightesAndLowest hightesAndLowest = new HightesAndLowest(); - - /** - * Test. - */ - @Test - public void someTest() { - assertEquals(hightesAndLowest.hingAndLow("4 5 29 54 4 0 -214 542 -64 1 -3 6 -6"), "542 -214"); - } - - /** - * Test. - */ - @Test - public void plusMinusTest() { - assertEquals(hightesAndLowest.hingAndLow("1 -1"), "1 -1"); - } - - /** - * Test. - */ - @Test - public void plusPlusTest() { - assertEquals(hightesAndLowest.hingAndLow("1 1"), "1 1"); - } - - /** - * Test. - */ - @Test - public void minusMinusTest() { - assertEquals(hightesAndLowest.hingAndLow("-1 -1"), "-1 -1"); - } - - /** - * Test. - */ - @Test - public void plusMinusZeroTest() { - assertEquals(hightesAndLowest.hingAndLow("1 -1 0"), "1 -1"); - } - - /** - * Test. - */ - @Test - public void plusPlusZeroTest() { - assertEquals(hightesAndLowest.hingAndLow("1 1 0"), "1 0"); - } - - /** - * Test. - */ - @Test - public void minusMinusZeroTest() { - assertEquals(hightesAndLowest.hingAndLow("-1 -1 0"), "0 -1"); - } - - /** - * Test. - */ - @Test - public void singleTest() { - assertEquals(hightesAndLowest.hingAndLow("42"), "42 42"); - } - -} - diff --git a/src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightestAndLowestTest.java b/src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightestAndLowestTest.java new file mode 100644 index 0000000..6db94af --- /dev/null +++ b/src/test/java/org/fundacionjala/coding/juan/highestandlowest/HightestAndLowestTest.java @@ -0,0 +1,94 @@ +package org.fundacionjala.coding.juan.highestandlowest; + +import java.lang.reflect.Constructor; +import java.lang.reflect.Modifier; + +import org.junit.Test; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +/** + * Created by Administrator on 6/28/2017. + */ +public class HightestAndLowestTest { + + + /** + * Test. + */ + @Test + public void someTest() { + assertEquals(HightestAndLowest.hingAndLow("4 5 29 54 4 0 -214 542 -64 1 -3 6 -6"), "542 -214"); + } + + /** + * Test. + */ + @Test + public void plusMinusTest() { + assertEquals(HightestAndLowest.hingAndLow("1 -1"), "1 -1"); + } + + /** + * Test. + */ + @Test + public void plusPlusTest() { + assertEquals(HightestAndLowest.hingAndLow("1 1"), "1 1"); + } + + /** + * Test. + */ + @Test + public void minusMinusTest() { + assertEquals(HightestAndLowest.hingAndLow("-1 -1"), "-1 -1"); + } + + /** + * Test. + */ + @Test + public void plusMinusZeroTest() { + assertEquals(HightestAndLowest.hingAndLow("1 -1 0"), "1 -1"); + } + + /** + * Test. + */ + @Test + public void plusPlusZeroTest() { + assertEquals(HightestAndLowest.hingAndLow("1 1 0"), "1 0"); + } + + /** + * Test. + */ + @Test + public void minusMinusZeroTest() { + assertEquals(HightestAndLowest.hingAndLow("-1 -1 0"), "0 -1"); + } + + /** + * Test. + */ + @Test + public void singleTest() { + assertEquals(HightestAndLowest.hingAndLow("42"), "42 42"); + } + + /** + * Test constructor. + * + * @throws Exception exception. + */ + @Test + public void testConstructorIsPrivate() throws Exception { + Constructor constructor = HightestAndLowest.class.getDeclaredConstructor(); + assertTrue(Modifier.isPrivate(constructor.getModifiers())); + constructor.setAccessible(true); + constructor.newInstance(); + } + +} + From ead8057805474fd8f32a9598c6ad7ba3a9966995 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Mon, 3 Jul 2017 11:21:26 -0400 Subject: [PATCH 17/42] SpinWords refactored. --- .../coding/juan/spinWords/SpinWords.java | 24 ++++++------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java index 61124b1..0fdf4ec 100644 --- a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java +++ b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java @@ -25,25 +25,15 @@ public static String spinWords(final String sentence) { if (sentence.length() <= limitWord) { return sentence; } else { - String[] separatedWords = sentence.split(" "); - StringBuilder result = new StringBuilder(); - for (String separatedWord : separatedWords) { - - if (separatedWord.length() > limitWord) { - for (int j = separatedWord.length() - 1; j >= 0; j--) { - result.append(separatedWord.charAt(j)); - } - result.append(" "); - - } else { - for (int j = 0; j < separatedWord.length(); j++) { - result.append(separatedWord.charAt(j)); - } - result.append(" "); - + String[] words = sentence.split(" "); + for (int i = 0; i < words.length; i++) { + if (words[i].length() > limitWord) { + words[i] = new StringBuilder(words[i]).reverse().toString(); } } - return result.deleteCharAt(result.length() - 1).toString(); + + return String.join(" ", words); + } } } From 04abfb49d068d777031ecd692a34c51902a5af95 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Mon, 3 Jul 2017 11:31:46 -0400 Subject: [PATCH 18/42] New coverage. --- .../coding/juan/movies/ChildrenTest.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java index b268424..42154bf 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java @@ -1,7 +1,6 @@ package org.fundacionjala.coding.juan.movies; import org.junit.Test; - import static org.junit.Assert.assertEquals; /** @@ -59,6 +58,23 @@ public void testChildrenMovieAmountWhenDaysRentetaremoreThanTheLimit() { assertEquals(expectedResult, actualResult, 0); } + /** + * Test calculate points. + */ + @Test + public void testChildrenMovieCalculatePoints() { + + // given: + final Children children = new Children("Spy Kids"); + final int daysRentet = 5; + // when: + final double actualResult = children.calculateFrequentRenterPoints(daysRentet); + + // then: + final double expectedResult = 1; + assertEquals(expectedResult, actualResult, 0); + } + } From 244b99a140a1585e10892768dafb8edc1afee6d3 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Tue, 4 Jul 2017 16:02:11 -0400 Subject: [PATCH 19/42] Banck OCR --- .../coding/juan/bank/BankOCR.java | 103 +++++++++++++++++- .../coding/juan/bank/BankOCRTest.java | 55 ++++++++++ 2 files changed, 157 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index 38515b9..ea60c88 100644 --- a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -10,6 +10,10 @@ public final class BankOCR { private static Map mapNum = new HashMap<>(); + private static final int MODULE_ELEVEN = 11; + private static final int SCANNED_LENGTH = 72; + private static final int QUANTITY_LENGTH = 9; + private static final int ZERO = 0; private static final int ONE = 1; private static final int TWO = 2; @@ -104,9 +108,106 @@ public static String convertStringToNumber(final String[] numberScanned) { for (String numberString : numberScanned) { imageToString.append(getKey(numberString)); } - return imageToString.toString(); } + + /** + * This method validate account numbers. + * + * @param account quantity. + * @return true or false. + */ + + static boolean validateAccountNumbers(final String account) { + int sum = 0; + int factorMultiple = 9; + if ((account.length() == QUANTITY_LENGTH) && isLegible(account)) { + String[] accountSplit = account.split(""); + + for (String value : accountSplit) { + sum += Integer.parseInt(value) * factorMultiple; + factorMultiple--; + } + return sum % MODULE_ELEVEN == 0; + } + return false; + } + + /** + * Method to validate if value is legible. + * + * @param account account. + * @return true or false. + */ + protected static boolean isLegible(final String account) { + + for (int i = 0; i < account.length(); i++) { + if (!Character.isDigit(account.charAt(i))) { + return false; + } + } + return true; + } + + /** + * This method return the value scanned. + * + * @param scanned value scanned. + * @return value string. + */ + static String accountRepresentation(final String[] scanned) { + StringBuilder acctRepresentation = new StringBuilder(); + + for (String string : scanned) { + acctRepresentation.append(getKey(string)); + } + + return String.valueOf(acctRepresentation); + } + + /** + * Get status account. + * + * @param account account. + * @return ILL if isn't legible and ERR if not validate accounts numbers. + */ + static String getStatusAccount(final String account) { + String s = !isLegible(account) ? "ILL" : !validateAccountNumbers(account) ? "ERR" : " "; +// + return s; + } + + /** + * This method scans an image and returns it in string. + * + * @param account account. + * @return string[] with nine digits. + */ + static String[] parseScannedFigures(final String account) { + + String[] scannedDigits = {"", "", "", "", "", "", "", "", ""}; + int stringFinal = 3; + + if (account.length() != SCANNED_LENGTH) { + int index = 0; + int start = 0; + int end = 3; + int indexModule = 9; + + for (int i = 0; i < account.length(); i += stringFinal) { + index = index % indexModule; + + scannedDigits[index] += account.substring(start, end); + + start = end; + end += stringFinal; + index++; + } + + return scannedDigits; + } + return new String[]{"", "", "", "", "", "", "", "", ""}; + } } diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index 648308d..d6fbf30 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -84,4 +84,59 @@ public void testConstructorIsPrivate() throws Exception { constructor.newInstance(); } + /** + * Test verify if the status account is illegible. + */ + @Test + public void verifyIfTheStatusAccountIsIllegible() { + // given: + String account = " 560 |"; + + // when: + String expectedResult = "ILL"; + + // then: + String actualResult = BankOCR.getStatusAccount(account); + assertEquals(expectedResult, actualResult); + } + + /** + * Test verify if the status account is incorrect. + */ + @Test + public void verifyIfTheStatusAccountIsIncorrect() { + // given: + String account = "021453789"; + + // when: + String expectedResult = "ERR"; + + // then: + String actualResult = BankOCR.getStatusAccount(account); + assertEquals(expectedResult, actualResult); + } + + /** + * Test verify if an image contains nine digits and is parsed correctly. + */ + @Test + public void verifyIfAnImageContainsNineDigitsAndIsParsedCorrectly() { + // given: + String figureScanned = + " _ _ _ _ _ _ _ " + + " ||_||_||_||_| _||_||_ |_|" + + " | | _||_||_||_ |_||_| _|"; + + String[] accountArray = BankOCR.parseScannedFigures(figureScanned); + + // when: + String actualResult = BankOCR.accountRepresentation(accountArray); + + // then: + String expectedResult = "149882869"; + assertEquals(expectedResult, actualResult); + } + + + } From 6c133bb069f04380ac3d24924eb50b62a86878eb Mon Sep 17 00:00:00 2001 From: jpaitken Date: Tue, 4 Jul 2017 16:11:27 -0400 Subject: [PATCH 20/42] Banck OCR --- .../java/org/fundacionjala/coding/juan/gas/Evaporator.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java index 50c7d6d..f030bc6 100644 --- a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java +++ b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java @@ -19,11 +19,12 @@ private Evaporator() { * @param threshold the limit. * @return how many days. */ - public static int evaporator(double content, final int evap, final int threshold) { + public static int evaporator(final double content, final int evap, final int threshold) { int days = 0; + double cont = content; double limit1 = content * threshold / 100.00; - while (content >= limit1) { - content = content - content * evap / 100.00; + while (cont >= limit1) { + cont = cont - cont * evap / 100.00; days++; } return days; From 5855a0ef283dc30c9ff9fad6da659b4dfe68221f Mon Sep 17 00:00:00 2001 From: jpaitken Date: Tue, 4 Jul 2017 16:17:31 -0400 Subject: [PATCH 21/42] Update checkstyle.xml --- config/checkstyle/checkstyle.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/checkstyle/checkstyle.xml b/config/checkstyle/checkstyle.xml index d7b9d92..154f8e8 100644 --- a/config/checkstyle/checkstyle.xml +++ b/config/checkstyle/checkstyle.xml @@ -167,7 +167,7 @@ - + From 7abefda3ba49f3cce8a0f11a8193a1139fbabd51 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Tue, 4 Jul 2017 16:18:38 -0400 Subject: [PATCH 22/42] Banck OCR --- src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java index f030bc6..7f80271 100644 --- a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java +++ b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java @@ -16,7 +16,7 @@ private Evaporator() { * * @param content how much gas have. * @param evap how much waste. - * @param threshold the limit. + * @param threshold the limit. * @return how many days. */ public static int evaporator(final double content, final int evap, final int threshold) { From 0a04067431b6e3233ddca0d43aba03b7e8b4ebce Mon Sep 17 00:00:00 2001 From: jpaitken Date: Tue, 4 Jul 2017 16:23:11 -0400 Subject: [PATCH 23/42] Banck OCR --- config/checkstyle/checkstyle.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/checkstyle/checkstyle.xml b/config/checkstyle/checkstyle.xml index 85bb31c..65d5734 100644 --- a/config/checkstyle/checkstyle.xml +++ b/config/checkstyle/checkstyle.xml @@ -167,7 +167,7 @@ - + From f590499269c7451865a27cffafd1e718a951cd25 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Tue, 4 Jul 2017 17:15:07 -0400 Subject: [PATCH 24/42] Banck OCR --- .../coding/juan/bank/BankOCRTest.java | 36 +++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index d6fbf30..d26bf9d 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -4,8 +4,7 @@ import java.lang.reflect.Modifier; import org.junit.Test; - - +import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -137,6 +136,39 @@ public void verifyIfAnImageContainsNineDigitsAndIsParsedCorrectly() { assertEquals(expectedResult, actualResult); } + /** + * Testing an invalid account. + */ + @Test + public void verifyValidateAccountNumbersFalse() { + // given: + String figureScanned = + " _ _ _ _ _ _ _ " + + " ||_||_||_||_| _"; + // when: + Boolean actualResult = BankOCR.validateAccountNumbers(figureScanned); + + // then: + Boolean expectedResult = false; + assertEquals(expectedResult, actualResult); + + } + + /** + * Testing a empty string as value. + */ + @Test + public void parceIntScannedFiguredReturnEmpty() { + // given: + String figureScanned = ""; + // when: + String[] actualResult = BankOCR.parseScannedFigures(figureScanned); + + // then: + String[] expectedResult = new String[]{"", "", "", "", "", "", "", "", ""}; + assertArrayEquals(expectedResult, actualResult); + + } } From 6cb50228478826e0ae257fe007f208556a279d6a Mon Sep 17 00:00:00 2001 From: jpaitken Date: Tue, 4 Jul 2017 19:29:04 -0400 Subject: [PATCH 25/42] fixes --- coding.iml | 1 - .../coding/juan/bank/BankOCR.java | 34 +++++++++---------- .../coding/juan/bank/BankOCRTest.java | 7 ++-- .../juan/eanvalidator/EanValidatorTest.java | 2 +- .../coding/juan/movies/ChildrenTest.java | 15 +++++--- .../coding/juan/movies/CustomerTest.java | 19 ++++++----- .../coding/juan/movies/RegularTest.java | 17 ++++++---- .../coding/juan/movies/RentalTest.java | 13 +++++-- 8 files changed, 65 insertions(+), 43 deletions(-) diff --git a/coding.iml b/coding.iml index 96d565b..4ea17ef 100644 --- a/coding.iml +++ b/coding.iml @@ -1,4 +1,3 @@ - diff --git a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index ea60c88..8753708 100644 --- a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -8,7 +8,7 @@ */ public final class BankOCR { - private static Map mapNum = new HashMap<>(); + private static final Map MAP_NUMBERS = new HashMap<>(); private static final int MODULE_ELEVEN = 11; private static final int SCANNED_LENGTH = 72; @@ -26,50 +26,50 @@ public final class BankOCR { private static final int NINE = 9; static { - mapNum.put(ZERO, + MAP_NUMBERS.put(ZERO, " _ " + "| |" + "|_|"); - mapNum.put(ONE, + MAP_NUMBERS.put(ONE, " " + " |" + " |"); - mapNum.put(TWO, + MAP_NUMBERS.put(TWO, " _ " + " _|" + "|_ "); - mapNum.put(THREE, + MAP_NUMBERS.put(THREE, "__ " + " _|" + "__|"); - mapNum.put(FOUR, + MAP_NUMBERS.put(FOUR, " " + "|_|" + " |"); - mapNum.put(FIVE, + MAP_NUMBERS.put(FIVE, " _" + "|_ " + " _|"); - mapNum.put(SIX, + MAP_NUMBERS.put(SIX, " _ " + "|_ " + "|_|"); - mapNum.put(SEVEN, + MAP_NUMBERS.put(SEVEN, " _ " + " |" + " |"); - mapNum.put(EIGHT, + MAP_NUMBERS.put(EIGHT, " _ " + "|_|" + "|_|"); - mapNum.put(NINE, + MAP_NUMBERS.put(NINE, " _ " + "|_|" + " _|"); @@ -90,7 +90,7 @@ private BankOCR() { private static String getKey(final String value) { String valueString = "?"; - for (Map.Entry inputData : mapNum.entrySet()) { + for (Map.Entry inputData : MAP_NUMBERS.entrySet()) { valueString = inputData.getValue().equalsIgnoreCase(value) ? inputData.getKey().toString() : valueString; } @@ -112,7 +112,7 @@ public static String convertStringToNumber(final String[] numberScanned) { } /** - * This method validate account numbers. + * This method validate account MAP_NUMBERS. * * @param account quantity. * @return true or false. @@ -169,12 +169,10 @@ static String accountRepresentation(final String[] scanned) { * Get status account. * * @param account account. - * @return ILL if isn't legible and ERR if not validate accounts numbers. + * @return ILL if isn't legible and ERR if not validate accounts MAP_NUMBERS. */ static String getStatusAccount(final String account) { - String s = !isLegible(account) ? "ILL" : !validateAccountNumbers(account) ? "ERR" : " "; -// - return s; + return !isLegible(account) ? "ILL" : !validateAccountNumbers(account) ? "ERR" : " "; } /** @@ -206,7 +204,7 @@ static String[] parseScannedFigures(final String account) { return scannedDigits; } - return new String[]{"", "", "", "", "", "", "", "", ""}; + return scannedDigits; } } diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index d26bf9d..5daf34f 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -6,6 +6,7 @@ import org.junit.Test; import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; /** @@ -148,9 +149,8 @@ public void verifyValidateAccountNumbersFalse() { // when: Boolean actualResult = BankOCR.validateAccountNumbers(figureScanned); - // then: - Boolean expectedResult = false; - assertEquals(expectedResult, actualResult); + //then: + assertFalse(actualResult); } @@ -168,6 +168,7 @@ public void parceIntScannedFiguredReturnEmpty() { String[] expectedResult = new String[]{"", "", "", "", "", "", "", "", ""}; assertArrayEquals(expectedResult, actualResult); + } diff --git a/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java b/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java index a22ac05..4737675 100644 --- a/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/eanvalidator/EanValidatorTest.java @@ -55,7 +55,7 @@ public void testValidateTheCheckSumIsEqualToZero() { final boolean actualResult = EanValidator.validating(eanStringNumber); // then: - assertTrue(!actualResult); + assertFalse(actualResult); } /** diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java index 42154bf..f0774bd 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java @@ -1,5 +1,6 @@ package org.fundacionjala.coding.juan.movies; +import org.junit.Before; import org.junit.Test; import static org.junit.Assert.assertEquals; @@ -7,6 +8,16 @@ * Created by Juan on 3/23/2017. */ public class ChildrenTest { + private Movie children; + + /** + * Initialize variables. + */ + @Before + public void initialize() { + children = new Children("Spy Kids"); + } + /** * Test children amount when days rented is less than the limit. */ @@ -14,7 +25,6 @@ public class ChildrenTest { public void testChildrenMovieAmountWhenDaysRentetIsLessThanTheLimit() { // given: - final Movie children = new Children("Spy Kids"); final int daysRentet = 2; // when: final double actualResult = children.calculateAmount(daysRentet); @@ -31,7 +41,6 @@ public void testChildrenMovieAmountWhenDaysRentetIsLessThanTheLimit() { public void testChildrenMovieAmountWhenDaysRentetIsequalsThanTheLimit() { // given: - final Children children = new Children("Spy Kids"); final int daysRentet = 3; // when: final double actualResult = children.calculateAmount(daysRentet); @@ -48,7 +57,6 @@ public void testChildrenMovieAmountWhenDaysRentetIsequalsThanTheLimit() { public void testChildrenMovieAmountWhenDaysRentetaremoreThanTheLimit() { // given: - final Children children = new Children("Spy Kids"); final int daysRentet = 5; // when: final double actualResult = children.calculateAmount(daysRentet); @@ -65,7 +73,6 @@ public void testChildrenMovieAmountWhenDaysRentetaremoreThanTheLimit() { public void testChildrenMovieCalculatePoints() { // given: - final Children children = new Children("Spy Kids"); final int daysRentet = 5; // when: final double actualResult = children.calculateFrequentRenterPoints(daysRentet); diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java index 129c319..79b017e 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java @@ -2,8 +2,8 @@ package org.fundacionjala.coding.juan.movies; +import org.junit.Before; import org.junit.Test; - import static org.junit.Assert.assertEquals; /** @@ -13,6 +13,15 @@ public class CustomerTest { private static final double MINORPRICE = 1.5; private static final int DAYONE = 1; + private Customer customer; + + /** + * Initialize variables. + */ + @Before + public void iniciallize() { + customer = new Customer("Juan"); + } /** @@ -21,14 +30,12 @@ public class CustomerTest { @Test public void testingGivenaCustomerName() { - // given: - final Customer customer = new Customer("Jorge"); // when: final String actualResult = customer.getName(); // then: - final String expectedResult = "Jorge"; + final String expectedResult = "Juan"; assertEquals(expectedResult, actualResult); } @@ -39,8 +46,6 @@ public void testingGivenaCustomerName() { @Test public void testMovieWhenDayRentedISLessForChildren() { - // given: - final Customer customer = new Customer("Test"); customer.addRental(new Rental(new Children("The Revenant"), DAYONE)); // when: @@ -56,8 +61,6 @@ public void testMovieWhenDayRentedISLessForChildren() { */ @Test public void testCustomer() { - // given - Customer customer = new Customer("Juan"); customer.addRental(new Rental(new NewRelease("The Avengers"), 2)); customer.addRental(new Rental(new Regular("Iron Man"), 1)); diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java index d286671..f4ae832 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java @@ -1,13 +1,23 @@ package org.fundacionjala.coding.juan.movies; +import org.junit.Before; import org.junit.Test; - import static org.junit.Assert.assertEquals; /** * Created by Juan on 3/23/2017. */ public class RegularTest { + private Movie regular; + + /** + * Initialize variables. + */ + @Before + public void initialize() { + regular = new Regular("Logan"); + } + /** * Test New Release amount when days rented is less than the limit. */ @@ -15,7 +25,6 @@ public class RegularTest { public void testRegularMovieWhenDaysRentedAreLessThanTheLimit() { // given: - final Movie regular = new Regular("Logan"); final int daysRentet = 1; // when: final double actualResult = regular.calculateAmount(daysRentet); @@ -32,7 +41,6 @@ public void testRegularMovieWhenDaysRentedAreLessThanTheLimit() { public void testRegularMovieWhenDaysRentedAreigualThanTheLimit() { // given: - final Regular regular = new Regular("Logan"); final int daysRentet = 2; // when: final double actualResult = regular.calculateAmount(daysRentet); @@ -49,7 +57,6 @@ public void testRegularMovieWhenDaysRentedAreigualThanTheLimit() { public void testRegularMovieWhenDaysRentedAreMoreThanTheLimit() { // given: - final Regular regular = new Regular("Logan"); final int daysRentet = 5; // when: final double actualResult = regular.calculateAmount(daysRentet); @@ -66,7 +73,6 @@ public void testRegularMovieWhenDaysRentedAreMoreThanTheLimit() { public void testRegularMovieTitle() { // given: - final Regular regular = new Regular("Logan"); final int daysRentet = 5; // when: final String actualResult = regular.getTitle(); @@ -83,7 +89,6 @@ public void testRegularMovieTitle() { public void testCalculeFrequentRentedPoints() { // given: - final Regular regular = new Regular("Logan"); final int daysRentet = 2; // when: final double actualResult = regular.calculateAmount(daysRentet); diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java index bc5214a..592065b 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java @@ -1,5 +1,6 @@ package org.fundacionjala.coding.juan.movies; +import org.junit.Before; import org.junit.Test; import static org.junit.Assert.assertEquals; @@ -7,13 +8,22 @@ * Created by Administrator on 7/2/2017. */ public class RentalTest { + private Regular regular; + + /** + * Initialize variables. + */ + @Before + public void initialize() { + regular = new Regular("Logan"); + } + /** * Test get title. */ @Test public void testGetTitle() { // given: - final Regular regular = new Regular("Logan"); final int daysRentet = 2; final Rental rental = new Rental(regular, daysRentet); @@ -32,7 +42,6 @@ public void testGetTitle() { @Test public void testDaysRented() { // given: - final Regular regular = new Regular("Logan"); final int daysRentet = 2; final Rental rental = new Rental(regular, daysRentet); From 046aebf82105b9fa1373cffa14fe18682eee9dfe Mon Sep 17 00:00:00 2001 From: jpaitken Date: Wed, 5 Jul 2017 15:40:02 -0400 Subject: [PATCH 26/42] fixes --- src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java | 2 +- .../java/org/fundacionjala/coding/juan/spinWords/SpinWords.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index 8753708..e3ce379 100644 --- a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -4,7 +4,7 @@ import java.util.Map; /** - * Created by Juan Pablo on 26/03/2017. + * Created by Juan on 26/03/2017. */ public final class BankOCR { diff --git a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java index 0fdf4ec..f98b28e 100644 --- a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java +++ b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java @@ -15,7 +15,7 @@ private SpinWords() { * Get the words spined if it have 5 or more letters. * * @param sentence is the word or words - * @return the word spined. + * @return the word reversed. */ public static String spinWords(final String sentence) { final int limitWord = 4; From ce007ca999f1fd240ada3ff451d87286d3a02c01 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Thu, 6 Jul 2017 21:12:40 -0400 Subject: [PATCH 27/42] improve --- .../coding/juan/bank/BankOCR.java | 4 ++-- .../juan/eanvalidator/EanValidator.java | 22 +++++++---------- .../coding/juan/movies/Customer.java | 20 +++++++++------- .../coding/juan/bank/BankOCRTest.java | 4 ++-- .../coding/juan/movies/CustomerTest.java | 24 ++++--------------- 5 files changed, 28 insertions(+), 46 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index e3ce379..0a3677c 100644 --- a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -4,7 +4,7 @@ import java.util.Map; /** - * Created by Juan on 26/03/2017. + * Created by Juan P on 26/03/2017. */ public final class BankOCR { @@ -27,7 +27,7 @@ public final class BankOCR { static { MAP_NUMBERS.put(ZERO, - " _ " + " _ " + "| |" + "|_|"); MAP_NUMBERS.put(ONE, diff --git a/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java index a07e746..7082aaf 100644 --- a/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java +++ b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java @@ -15,21 +15,15 @@ private EanValidator() { * @param eanCode is the code provided as input. * @return the validation. */ - public static boolean validating(final String eanCode) { - int sum = 0; - int checksum = 0; - final int finalNumber = 12; - final int multiply = 3; - final int finalFactor = 10; - final int aux = 48; - for (int i = 0; i < finalNumber; i++) { - sum += (i % 2 != 0) ? ((eanCode.charAt(i) - aux) * multiply) : (eanCode.charAt(i) - aux); - - } - if (sum % finalFactor != 0) { - checksum = (finalFactor - (sum % finalFactor)); + char[] code = eanCode.toCharArray(); + int checkSum = 0; + int digit = 0; + for (int i = 0; i < code.length; i++) { + digit = (code[i]); + checkSum += ((i + 1) % 2 == 0) ? digit * 3 : digit; } - return eanCode.charAt(eanCode.length() - 1) - aux == checksum; + digit = (code[code.length - 1]); + return checkSum % 10 == 0 || 10 - (checkSum % 10) == digit; } } diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java b/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java index 4be1d1a..ad9b48f 100644 --- a/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java @@ -38,28 +38,32 @@ public String getName() { * @return the string. */ public String generateDetail() { - StringBuffer result = new StringBuffer(); - result.append("Rental Record for " + getName() + "\n"); + String result = String.format("Rental Record for %s%n", getName()); + + for (Rental rental : rentalsCustomer) { - result.append("\t" + rental.getMovie().getTitle() + "\t"); - result.append(rental.calculateAmount() + "\n"); + + result += String.format("%s ", rental.getMovie().getTitle()); + result += String.format(rental.calculateAmount() + "%n"); } - result.append("Amount owed is " + calculateTotalAmount() + "\n"); - result.append("You earned " + calculateTotalFrequentRenterPoints() + " frequent renter points"); + result += String.format("Amount owed is %s%n", calculateTotalAmount()); + result += String.format("You earned %s frequent renter points", calculateTotalFrequentRenterPoints()); return result.toString(); } + /** + * @return the total amount. * @ this method will calculate the total amount of the customer. - * @return the total amount. */ public double calculateTotalAmount() { return rentalsCustomer.stream() .mapToDouble(Rental::calculateAmount) .sum(); } + /** + * @return the total points. * @ this method will calcule the potins of the customer. - * @return the total points. */ public int calculateTotalFrequentRenterPoints() { diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index 5daf34f..4ea69ca 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -90,10 +90,10 @@ public void testConstructorIsPrivate() throws Exception { @Test public void verifyIfTheStatusAccountIsIllegible() { // given: - String account = " 560 |"; + final String account = " 560 |"; // when: - String expectedResult = "ILL"; + final String expectedResult = "ILL"; // then: String actualResult = BankOCR.getStatusAccount(account); diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java index 79b017e..9338447 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java @@ -6,6 +6,7 @@ import org.junit.Test; import static org.junit.Assert.assertEquals; + /** * @author Juan Pablo */ @@ -56,25 +57,8 @@ public void testMovieWhenDayRentedISLessForChildren() { assertEquals(MINORPRICE, actualResult, 0); } - /** - * Test customer class. - */ - @Test - public void testCustomer() { - customer.addRental(new Rental(new NewRelease("The Avengers"), 2)); - customer.addRental(new Rental(new Regular("Iron Man"), 1)); - - // when - final String actualResult = customer.generateDetail(); - - // then - final String expectedResult = "Rental Record for Juan\n" - + "\tThe Avengers\t6.0\n" - + "\tIron Man\t1.5\n" - + "Amount owed is 7.5\n" - + "You earned 3 frequent renter points"; - assertEquals(actualResult, expectedResult); - } - } + + + From 501fbd5b3de01ba42afa3eaf0bbc96e9d1ef05f7 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Fri, 7 Jul 2017 11:31:54 -0400 Subject: [PATCH 28/42] improved --- .../coding/juan/movies/Customer.java | 14 +++++------ .../coding/juan/movies/CustomerTest.java | 24 +++++++++++++++---- 2 files changed, 26 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java b/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java index ad9b48f..5b13ad0 100644 --- a/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Customer.java @@ -38,16 +38,14 @@ public String getName() { * @return the string. */ public String generateDetail() { - String result = String.format("Rental Record for %s%n", getName()); - - + StringBuilder result = new StringBuilder(); + result.append("Rental Record for " + getName() + "\n"); for (Rental rental : rentalsCustomer) { - - result += String.format("%s ", rental.getMovie().getTitle()); - result += String.format(rental.calculateAmount() + "%n"); + result.append(rental.getMovie().getTitle() + " "); + result.append(rental.calculateAmount() + "\n"); } - result += String.format("Amount owed is %s%n", calculateTotalAmount()); - result += String.format("You earned %s frequent renter points", calculateTotalFrequentRenterPoints()); + result.append("Amount owed is " + calculateTotalAmount() + "\n"); + result.append("You earned " + calculateTotalFrequentRenterPoints() + " frequent renter points"); return result.toString(); } diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java index 9338447..f1fac0d 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java @@ -6,7 +6,6 @@ import org.junit.Test; import static org.junit.Assert.assertEquals; - /** * @author Juan Pablo */ @@ -57,8 +56,25 @@ public void testMovieWhenDayRentedISLessForChildren() { assertEquals(MINORPRICE, actualResult, 0); } - -} - + /** + * Test customer class. + */ + @Test + public void testCustomer() { + customer.addRental(new Rental(new NewRelease("The Avengers"), 2)); + customer.addRental(new Rental(new Regular("Iron Man"), 1)); + + // when + final String actualResult = customer.generateDetail(); + + // then + final String expectedResult = "Rental Record for Juan\n" + + "The Avengers 6.0\n" + + "Iron Man 1.5\n" + + "Amount owed is 7.5\n" + + "You earned 3 frequent renter points"; + assertEquals(expectedResult, actualResult); + } +} From e4aebe24479a1db0121bbc17d84d4b8a4cb04544 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Fri, 7 Jul 2017 11:41:35 -0400 Subject: [PATCH 29/42] improved --- .../coding/juan/bank/BankOCRTest.java | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index 4ea69ca..cd98037 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -106,13 +106,13 @@ public void verifyIfTheStatusAccountIsIllegible() { @Test public void verifyIfTheStatusAccountIsIncorrect() { // given: - String account = "021453789"; + final String account = "021453789"; // when: - String expectedResult = "ERR"; + final String expectedResult = "ERR"; // then: - String actualResult = BankOCR.getStatusAccount(account); + final String actualResult = BankOCR.getStatusAccount(account); assertEquals(expectedResult, actualResult); } @@ -122,18 +122,18 @@ public void verifyIfTheStatusAccountIsIncorrect() { @Test public void verifyIfAnImageContainsNineDigitsAndIsParsedCorrectly() { // given: - String figureScanned = + final String figureScanned = " _ _ _ _ _ _ _ " + " ||_||_||_||_| _||_||_ |_|" + " | | _||_||_||_ |_||_| _|"; - String[] accountArray = BankOCR.parseScannedFigures(figureScanned); + final String[] accountArray = BankOCR.parseScannedFigures(figureScanned); // when: - String actualResult = BankOCR.accountRepresentation(accountArray); + final String actualResult = BankOCR.accountRepresentation(accountArray); // then: - String expectedResult = "149882869"; + final String expectedResult = "149882869"; assertEquals(expectedResult, actualResult); } @@ -141,13 +141,13 @@ public void verifyIfAnImageContainsNineDigitsAndIsParsedCorrectly() { * Testing an invalid account. */ @Test - public void verifyValidateAccountNumbersFalse() { + public void verifyIfaScannedFigureIsValid() { // given: - String figureScanned = + final String figureScanned = " _ _ _ _ _ _ _ " + " ||_||_||_||_| _"; // when: - Boolean actualResult = BankOCR.validateAccountNumbers(figureScanned); + final Boolean actualResult = BankOCR.validateAccountNumbers(figureScanned); //then: assertFalse(actualResult); @@ -160,12 +160,12 @@ public void verifyValidateAccountNumbersFalse() { @Test public void parceIntScannedFiguredReturnEmpty() { // given: - String figureScanned = ""; + final String figureScanned = ""; // when: - String[] actualResult = BankOCR.parseScannedFigures(figureScanned); + final String[] actualResult = BankOCR.parseScannedFigures(figureScanned); // then: - String[] expectedResult = new String[]{"", "", "", "", "", "", "", "", ""}; + final String[] expectedResult = new String[]{"", "", "", "", "", "", "", "", ""}; assertArrayEquals(expectedResult, actualResult); From 0f878af98c5d1fe8bd926db85913af6088961913 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Fri, 7 Jul 2017 12:40:20 -0400 Subject: [PATCH 30/42] improved --- .../multiplesof3and5/MultiplesOf3And5.java | 12 +++++++-- .../coding/juan/movies/ChildrenTest.java | 2 +- .../coding/juan/movies/CustomerTest.java | 2 +- .../coding/juan/movies/RegularTest.java | 2 +- .../coding/juan/movies/RentalTest.java | 2 +- .../MultiplesOf3And5Test.java | 25 ++++++++++++++++--- 6 files changed, 35 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5.java b/src/main/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5.java index 4f58311..dc7fd11 100644 --- a/src/main/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5.java +++ b/src/main/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5.java @@ -3,14 +3,22 @@ /** * Created by Administrator on 6/28/2017. */ -public class MultiplesOf3And5 { +public final class MultiplesOf3And5 { + + + /** + * Constructor. + */ + private MultiplesOf3And5() { + } + /** * Kata. * * @param num is the number. * @return the multiples. */ - public int solution(final int num) { + public static int solution(final int num) { int number = 0; final int three = 3; final int five = 5; diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java index f0774bd..af8fa87 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/ChildrenTest.java @@ -14,7 +14,7 @@ public class ChildrenTest { * Initialize variables. */ @Before - public void initialize() { + public void setUp() { children = new Children("Spy Kids"); } diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java index f1fac0d..94360b4 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java @@ -19,7 +19,7 @@ public class CustomerTest { * Initialize variables. */ @Before - public void iniciallize() { + public void setUp() { customer = new Customer("Juan"); } diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java index f4ae832..71ced93 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/RegularTest.java @@ -14,7 +14,7 @@ public class RegularTest { * Initialize variables. */ @Before - public void initialize() { + public void setUp() { regular = new Regular("Logan"); } diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java index 592065b..802f841 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java @@ -14,7 +14,7 @@ public class RentalTest { * Initialize variables. */ @Before - public void initialize() { + public void setUp() { regular = new Regular("Logan"); } diff --git a/src/test/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5Test.java b/src/test/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5Test.java index 4d07f26..a178139 100644 --- a/src/test/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5Test.java +++ b/src/test/java/org/fundacionjala/coding/juan/multiplesof3and5/MultiplesOf3And5Test.java @@ -1,13 +1,17 @@ package org.fundacionjala.coding.juan.multiplesof3and5; +import java.lang.reflect.Constructor; +import java.lang.reflect.Modifier; + import org.junit.Test; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; /** * Created by Administrator on 6/28/2017. */ public class MultiplesOf3And5Test { - private MultiplesOf3And5 kata = new MultiplesOf3And5(); + /** * KAta. @@ -15,9 +19,22 @@ public class MultiplesOf3And5Test { @Test public void test() { - assertEquals(23, kata.solution(10)); - assertEquals(78, kata.solution(20)); - assertEquals(9168, kata.solution(200)); + assertEquals(23, MultiplesOf3And5.solution(10)); + assertEquals(78, MultiplesOf3And5.solution(20)); + assertEquals(9168, MultiplesOf3And5.solution(200)); + } + + /** + * Test constructor. + * + * @throws Exception exception. + */ + @Test + public void testConstructorIsPrivate() throws Exception { + Constructor constructor = MultiplesOf3And5.class.getDeclaredConstructor(); + assertTrue(Modifier.isPrivate(constructor.getModifiers())); + constructor.setAccessible(true); + constructor.newInstance(); } } From 444945d69d16758183bfa25ca93efe14d7853305 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 8 Jul 2017 16:52:19 -0400 Subject: [PATCH 31/42] fixes --- .../fundacionjala/coding/juan/eanvalidator/EanValidator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java index 7082aaf..59f7de9 100644 --- a/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java +++ b/src/main/java/org/fundacionjala/coding/juan/eanvalidator/EanValidator.java @@ -20,8 +20,8 @@ public static boolean validating(final String eanCode) { int checkSum = 0; int digit = 0; for (int i = 0; i < code.length; i++) { - digit = (code[i]); - checkSum += ((i + 1) % 2 == 0) ? digit * 3 : digit; + digit = code[i]; + checkSum += (i + 1) % 2 == 0 ? digit * 3 : digit; } digit = (code[code.length - 1]); return checkSum % 10 == 0 || 10 - (checkSum % 10) == digit; From 7495ae98690fb40c9c45451adc57297fba141282 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 8 Jul 2017 17:00:57 -0400 Subject: [PATCH 32/42] fixes --- .../java/org/fundacionjala/coding/juan/movies/NewRelease.java | 3 +++ .../java/org/fundacionjala/coding/juan/movies/Regular.java | 4 ++-- .../java/org/fundacionjala/coding/juan/bank/BankOCRTest.java | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java b/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java index ec86cf0..24404b1 100644 --- a/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java +++ b/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java @@ -7,8 +7,11 @@ public class NewRelease extends Movie { private static final int LIMITNEWCHILD = 3; + /** * constructor. + * {@inheritDoc} + * * @param title is the title of the moview. */ public NewRelease(final String title) { diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/Regular.java b/src/main/java/org/fundacionjala/coding/juan/movies/Regular.java index 865c5ba..287de5b 100644 --- a/src/main/java/org/fundacionjala/coding/juan/movies/Regular.java +++ b/src/main/java/org/fundacionjala/coding/juan/movies/Regular.java @@ -7,7 +7,7 @@ public class Regular extends Movie { private static final double PRICE = 1.5; - + private static final int ONE = 1; private static final int LIMITREGULAR = 2; /** @@ -28,6 +28,6 @@ public double calculateAmount(final int daysRented) { @Override public int calculateFrequentRenterPoints(final int daysRented) { - return 1; + return ONE; } } diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index cd98037..1b77267 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -147,7 +147,7 @@ public void verifyIfaScannedFigureIsValid() { " _ _ _ _ _ _ _ " + " ||_||_||_||_| _"; // when: - final Boolean actualResult = BankOCR.validateAccountNumbers(figureScanned); + final boolean actualResult = BankOCR.validateAccountNumbers(figureScanned); //then: assertFalse(actualResult); From fcc4b1700996adcf6bbefe4c0436fa321ae8a709 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 8 Jul 2017 17:09:10 -0400 Subject: [PATCH 33/42] fixes --- .../java/org/fundacionjala/coding/juan/gas/Evaporator.java | 6 +++--- .../org/fundacionjala/coding/juan/movies/NewRelease.java | 1 - .../org/fundacionjala/coding/juan/movies/RentalTest.java | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java index 7f80271..bb5dfc2 100644 --- a/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java +++ b/src/main/java/org/fundacionjala/coding/juan/gas/Evaporator.java @@ -10,7 +10,7 @@ public final class Evaporator { */ private Evaporator() { } - + private static final int PERCENT = 100; /** * Calculate the life of gas. * @@ -22,9 +22,9 @@ private Evaporator() { public static int evaporator(final double content, final int evap, final int threshold) { int days = 0; double cont = content; - double limit1 = content * threshold / 100.00; + double limit1 = content * threshold / PERCENT; while (cont >= limit1) { - cont = cont - cont * evap / 100.00; + cont = cont - cont * evap / PERCENT; days++; } return days; diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java b/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java index 24404b1..65c3456 100644 --- a/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java +++ b/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java @@ -11,7 +11,6 @@ public class NewRelease extends Movie { /** * constructor. * {@inheritDoc} - * * @param title is the title of the moview. */ public NewRelease(final String title) { diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java index 802f841..a4bbb3f 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/RentalTest.java @@ -8,7 +8,7 @@ * Created by Administrator on 7/2/2017. */ public class RentalTest { - private Regular regular; + private Movie regular; /** * Initialize variables. From 11b31817fa97f70f91af6b45261d41206a1b85fe Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 8 Jul 2017 17:16:25 -0400 Subject: [PATCH 34/42] fixes --- .../java/org/fundacionjala/coding/juan/movies/NewRelease.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java b/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java index 65c3456..24404b1 100644 --- a/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java +++ b/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java @@ -11,6 +11,7 @@ public class NewRelease extends Movie { /** * constructor. * {@inheritDoc} + * * @param title is the title of the moview. */ public NewRelease(final String title) { From 63eacc6e4cbd0205c9904e4c5d455a1274b7767b Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 8 Jul 2017 18:22:16 -0400 Subject: [PATCH 35/42] fixes --- .../org/fundacionjala/coding/juan/bank/BankOCR.java | 11 ++--------- .../fundacionjala/coding/juan/bank/BankOCRTest.java | 2 +- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index 0a3677c..2dab602 100644 --- a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -139,16 +139,9 @@ static boolean validateAccountNumbers(final String account) { * @param account account. * @return true or false. */ - protected static boolean isLegible(final String account) { - - for (int i = 0; i < account.length(); i++) { - if (!Character.isDigit(account.charAt(i))) { - return false; - } - } - return true; + static boolean isLegible(final String account) { + return account.contains("?"); } - /** * This method return the value scanned. * diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index 1b77267..edea9cc 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -109,7 +109,7 @@ public void verifyIfTheStatusAccountIsIncorrect() { final String account = "021453789"; // when: - final String expectedResult = "ERR"; + final String expectedResult = "ILL"; // then: final String actualResult = BankOCR.getStatusAccount(account); From ad532307a45c2ec72e20fa6103d22213dd484497 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 8 Jul 2017 18:34:17 -0400 Subject: [PATCH 36/42] fixes --- src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index 2dab602..6a354e1 100644 --- a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -169,7 +169,7 @@ static String getStatusAccount(final String account) { } /** - * This method scans an image and returns it in string. + * This method scans an image and returns string. * * @param account account. * @return string[] with nine digits. From 8a3d26c030bbd3cb4330bfd80e3a5ff6fe2c618e Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 8 Jul 2017 19:02:38 -0400 Subject: [PATCH 37/42] fixes --- .../java/org/fundacionjala/coding/juan/bank/BankOCR.java | 8 +++++++- .../org/fundacionjala/coding/juan/bank/BankOCRTest.java | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index 6a354e1..87c55d0 100644 --- a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -140,7 +140,13 @@ static boolean validateAccountNumbers(final String account) { * @return true or false. */ static boolean isLegible(final String account) { - return account.contains("?"); + + for (int i = 0; i < account.length(); i++) { + if (!Character.isDigit(account.charAt(i))) { + return false; + } + } + return true; } /** * This method return the value scanned. diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index edea9cc..1b77267 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -109,7 +109,7 @@ public void verifyIfTheStatusAccountIsIncorrect() { final String account = "021453789"; // when: - final String expectedResult = "ILL"; + final String expectedResult = "ERR"; // then: final String actualResult = BankOCR.getStatusAccount(account); From 87002594d9ef63be657c5fec77a1c1083e13dcd5 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 8 Jul 2017 19:17:05 -0400 Subject: [PATCH 38/42] fixes --- .../fundacionjala/coding/juan/spinWords/SpinWords.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java index f98b28e..fff1ce9 100644 --- a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java +++ b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java @@ -10,7 +10,7 @@ public final class SpinWords { private SpinWords() { //no called } - + public static int LIMIT_WORD = 4; /** * Get the words spined if it have 5 or more letters. * @@ -18,20 +18,19 @@ private SpinWords() { * @return the word reversed. */ public static String spinWords(final String sentence) { - final int limitWord = 4; + if (sentence == null) { return ""; } - if (sentence.length() <= limitWord) { + if (sentence.length() <= LIMIT_WORD) { return sentence; } else { String[] words = sentence.split(" "); for (int i = 0; i < words.length; i++) { - if (words[i].length() > limitWord) { + if (words[i].length() > LIMIT_WORD) { words[i] = new StringBuilder(words[i]).reverse().toString(); } } - return String.join(" ", words); } From b6a567e433dcd086146aa430ac385e716b7327b1 Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sat, 8 Jul 2017 19:38:01 -0400 Subject: [PATCH 39/42] fixes --- .../org/fundacionjala/coding/juan/spinWords/SpinWords.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java index fff1ce9..84865db 100644 --- a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java +++ b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java @@ -4,13 +4,16 @@ * Created by Juan on 3/10/2017. */ public final class SpinWords { + private static final int LIMIT_WORD = 4; + /** * Constructor private. */ + private SpinWords() { //no called } - public static int LIMIT_WORD = 4; + /** * Get the words spined if it have 5 or more letters. * From 19d0968a2ada17d5498adf238d924169602d4aad Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 9 Jul 2017 23:00:45 -0400 Subject: [PATCH 40/42] fixes --- coding.iml | 1 + .../coding/juan/spinWords/SpinWords.java | 21 +++++++------------ 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/coding.iml b/coding.iml index 4ea17ef..96d565b 100644 --- a/coding.iml +++ b/coding.iml @@ -1,3 +1,4 @@ + diff --git a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java index 84865db..c0435d2 100644 --- a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java +++ b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java @@ -1,10 +1,10 @@ package org.fundacionjala.coding.juan.spinWords; /** - * Created by Juan on 3/10/2017. + * Created by Juan P on 26/03/2017. */ public final class SpinWords { - private static final int LIMIT_WORD = 4; + private static final int LIMIT_WORD = 5; /** * Constructor private. @@ -21,21 +21,16 @@ private SpinWords() { * @return the word reversed. */ public static String spinWords(final String sentence) { - if (sentence == null) { return ""; } - if (sentence.length() <= LIMIT_WORD) { - return sentence; - } else { - String[] words = sentence.split(" "); - for (int i = 0; i < words.length; i++) { - if (words[i].length() > LIMIT_WORD) { - words[i] = new StringBuilder(words[i]).reverse().toString(); - } + String[] words = sentence.split(" "); + for (int i = 0; i < words.length; i++) { + if (words[i].length() >= LIMIT_WORD) { + words[i] = new StringBuilder(words[i]).reverse().toString(); } - return String.join(" ", words); - } + return String.join(" ", words); } } + From 2263a5284fbabd554b3c6905c2b57b3eeb96652e Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 9 Jul 2017 23:07:23 -0400 Subject: [PATCH 41/42] fixes --- coding.iml | 2 +- .../coding/juan/spinWords/SpinWords.java | 2 +- .../coding/juan/spinwords/SpinWordsTest.java | 12 ++++++------ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/coding.iml b/coding.iml index 96d565b..624a7fa 100644 --- a/coding.iml +++ b/coding.iml @@ -1,4 +1,4 @@ - + diff --git a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java index c0435d2..f080c16 100644 --- a/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java +++ b/src/main/java/org/fundacionjala/coding/juan/spinWords/SpinWords.java @@ -20,7 +20,7 @@ private SpinWords() { * @param sentence is the word or words * @return the word reversed. */ - public static String spinWords(final String sentence) { + public static String spinWord(final String sentence) { if (sentence == null) { return ""; } diff --git a/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java b/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java index f26285c..88a5276 100644 --- a/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/spinwords/SpinWordsTest.java @@ -25,7 +25,7 @@ public void testspinWordsWhenTheSentenseHasFiveWords() { //Given final String sentece = "holas"; //When - final String actualResult = SpinWords.spinWords(sentece); + final String actualResult = SpinWords.spinWord(sentece); // then final String exectedResult = "saloh"; assertEquals(exectedResult, actualResult); @@ -42,7 +42,7 @@ public void testSpinWordsWhenTheSenteseHasMoreThanFiveWords() { //Given final String sentece = "Paralelepipedo"; //When - final String actualResult = SpinWords.spinWords(sentece); + final String actualResult = SpinWords.spinWord(sentece); // then final String exectedResult = "odepipelelaraP"; assertEquals(exectedResult, actualResult); @@ -58,8 +58,8 @@ public void testSpinWordsWhenTheSenteseHasSpaces() { final String sentece = "Wellcome to the jungle"; final String senteceA = "Esta es una prueba"; //When - final String actualResult = SpinWords.spinWords(sentece); - final String actualResultA = SpinWords.spinWords(senteceA); + final String actualResult = SpinWords.spinWord(sentece); + final String actualResultA = SpinWords.spinWord(senteceA); // then final String exectedResult = "emoclleW to the elgnuj"; final String exectedResultA = "Esta es una abeurp"; @@ -75,7 +75,7 @@ public void testingAnEmptyString() { //given final String sentence = null; //When - final String actualResult = SpinWords.spinWords(sentence); + final String actualResult = SpinWords.spinWord(sentence); //Then final String expectedResult = ""; assertEquals(expectedResult, actualResult); @@ -90,7 +90,7 @@ public void testAwordWithLessThanFiveLetters() { //given final String sentence = "hi"; //When - final String actualResult = SpinWords.spinWords(sentence); + final String actualResult = SpinWords.spinWord(sentence); //Then final String expectedResult = "hi"; assertEquals(expectedResult, actualResult); From 8209bc75bb3cf91027ccc7553a54b0aa5f9a651d Mon Sep 17 00:00:00 2001 From: jpaitken Date: Sun, 9 Jul 2017 23:22:11 -0400 Subject: [PATCH 42/42] fixes --- .../fundacionjala/coding/juan/bank/BankOCR.java | 14 +++++++++----- .../movies/{NewRelease.java => NewReleases.java} | 9 ++++----- .../coding/juan/bank/BankOCRTest.java | 4 ++-- .../coding/juan/movies/CustomerTest.java | 2 +- .../coding/juan/movies/NewReleaseTest.java | 2 +- 5 files changed, 17 insertions(+), 14 deletions(-) rename src/main/java/org/fundacionjala/coding/juan/movies/{NewRelease.java => NewReleases.java} (69%) diff --git a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java index 87c55d0..9f5c926 100644 --- a/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java +++ b/src/main/java/org/fundacionjala/coding/juan/bank/BankOCR.java @@ -10,6 +10,9 @@ public final class BankOCR { private static final Map MAP_NUMBERS = new HashMap<>(); + private static final int START_STRING = 0; + private static final int END_STRING = 3; + private static final int MODULE_NINE = 9; private static final int MODULE_ELEVEN = 11; private static final int SCANNED_LENGTH = 72; private static final int QUANTITY_LENGTH = 9; @@ -27,7 +30,7 @@ public final class BankOCR { static { MAP_NUMBERS.put(ZERO, - " _ " + " _ " + "| |" + "|_|"); MAP_NUMBERS.put(ONE, @@ -148,6 +151,7 @@ static boolean isLegible(final String account) { } return true; } + /** * This method return the value scanned. * @@ -180,16 +184,16 @@ static String getStatusAccount(final String account) { * @param account account. * @return string[] with nine digits. */ - static String[] parseScannedFigures(final String account) { + static String[] parseScannedString(final String account) { String[] scannedDigits = {"", "", "", "", "", "", "", "", ""}; int stringFinal = 3; if (account.length() != SCANNED_LENGTH) { int index = 0; - int start = 0; - int end = 3; - int indexModule = 9; + int start = START_STRING; + int end = END_STRING; + int indexModule = MODULE_NINE; for (int i = 0; i < account.length(); i += stringFinal) { index = index % indexModule; diff --git a/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java b/src/main/java/org/fundacionjala/coding/juan/movies/NewReleases.java similarity index 69% rename from src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java rename to src/main/java/org/fundacionjala/coding/juan/movies/NewReleases.java index 24404b1..7e57764 100644 --- a/src/main/java/org/fundacionjala/coding/juan/movies/NewRelease.java +++ b/src/main/java/org/fundacionjala/coding/juan/movies/NewReleases.java @@ -4,23 +4,22 @@ /** * @author Juan Pablo */ -public class NewRelease extends Movie { +public class NewReleases extends Movie { - private static final int LIMITNEWCHILD = 3; + private static final int LIMIT_NEW_CHILD = 3; /** * constructor. * {@inheritDoc} - * * @param title is the title of the moview. */ - public NewRelease(final String title) { + public NewReleases(final String title) { super(title); } @Override public double calculateAmount(final int daysRented) { - return daysRented * LIMITNEWCHILD; + return daysRented * LIMIT_NEW_CHILD; } @Override diff --git a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java index 1b77267..4760c27 100644 --- a/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/bank/BankOCRTest.java @@ -127,7 +127,7 @@ public void verifyIfAnImageContainsNineDigitsAndIsParsedCorrectly() { + " ||_||_||_||_| _||_||_ |_|" + " | | _||_||_||_ |_||_| _|"; - final String[] accountArray = BankOCR.parseScannedFigures(figureScanned); + final String[] accountArray = BankOCR.parseScannedString(figureScanned); // when: final String actualResult = BankOCR.accountRepresentation(accountArray); @@ -162,7 +162,7 @@ public void parceIntScannedFiguredReturnEmpty() { // given: final String figureScanned = ""; // when: - final String[] actualResult = BankOCR.parseScannedFigures(figureScanned); + final String[] actualResult = BankOCR.parseScannedString(figureScanned); // then: final String[] expectedResult = new String[]{"", "", "", "", "", "", "", "", ""}; diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java index 94360b4..a800eee 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/CustomerTest.java @@ -61,7 +61,7 @@ public void testMovieWhenDayRentedISLessForChildren() { */ @Test public void testCustomer() { - customer.addRental(new Rental(new NewRelease("The Avengers"), 2)); + customer.addRental(new Rental(new NewReleases("The Avengers"), 2)); customer.addRental(new Rental(new Regular("Iron Man"), 1)); // when diff --git a/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java b/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java index 659b3dd..2be9129 100644 --- a/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java +++ b/src/test/java/org/fundacionjala/coding/juan/movies/NewReleaseTest.java @@ -15,7 +15,7 @@ public class NewReleaseTest { public void testNewRealeasenMovieAmount() { // given: - final Movie newRelease = new NewRelease("Logan"); + final Movie newRelease = new NewReleases("Logan"); final int daysRentet = 2; // when: final double actualResult = newRelease.calculateAmount(daysRentet);