From 998415cd471f02142ad81976e144bd1f475ebb1f Mon Sep 17 00:00:00 2001 From: freelansam Date: Fri, 2 Dec 2022 18:45:30 +0530 Subject: [PATCH 1/2] JAVA-16301: Check Article Code Matches GitHub --- .../model/Vehicle.java | 6 +++ .../main/java/com/baeldung/enums/Pizza.java | 9 +++++ .../com/baeldung/enums/PizzaUnitTest.java | 2 +- .../com/baeldung/reduce/entities/Rating.java | 39 +++++++++++++++++++ .../com/baeldung/reduce/entities/Review.java | 28 +++++++++++++ .../baeldung/s/{GoodBook.java => Book.java} | 2 +- .../cascading/CasCadeTypeUnitTest.java | 17 ++++---- .../repository/UserRepository.java | 4 ++ .../CircularDependencyIntegrationTest.java | 5 +++ .../main/java/com/baeldung/sample/Config.java | 22 +++++++++++ .../java/com/baeldung/sample/Employee.java | 20 ++++++++++ .../baeldung/mutation/PalindromeUnitTest.java | 8 ++-- 12 files changed, 149 insertions(+), 13 deletions(-) create mode 100644 core-java-modules/core-java-streams-2/src/main/java/com/baeldung/reduce/entities/Rating.java create mode 100644 core-java-modules/core-java-streams-2/src/main/java/com/baeldung/reduce/entities/Review.java rename patterns-modules/solid/src/main/java/com/baeldung/s/{GoodBook.java => Book.java} (94%) create mode 100644 spring-di/src/main/java/com/baeldung/sample/Config.java create mode 100644 spring-di/src/main/java/com/baeldung/sample/Employee.java diff --git a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Vehicle.java b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Vehicle.java index b0bdd63c2c..c91d76345d 100644 --- a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Vehicle.java +++ b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Vehicle.java @@ -19,4 +19,10 @@ public interface Vehicle { static int getHorsePower(int rpm, int torque) { return (rpm * torque) / 5252; } + + double getSpeed(); + + default double getSpeedInKMH(double speed) { + return speed * 1.60934; + } } \ No newline at end of file diff --git a/core-java-modules/core-java-lang-oop-types/src/main/java/com/baeldung/enums/Pizza.java b/core-java-modules/core-java-lang-oop-types/src/main/java/com/baeldung/enums/Pizza.java index bad134bf00..a97f9eac57 100644 --- a/core-java-modules/core-java-lang-oop-types/src/main/java/com/baeldung/enums/Pizza.java +++ b/core-java-modules/core-java-lang-oop-types/src/main/java/com/baeldung/enums/Pizza.java @@ -84,5 +84,14 @@ public class Pizza { this.setStatus(PizzaStatusEnum.DELIVERED); } } + + public int getDeliveryTimeInDays() { + switch (status) { + case ORDERED: return 5; + case READY: return 2; + case DELIVERED: return 0; + } + return 0; + } } \ No newline at end of file diff --git a/core-java-modules/core-java-lang-oop-types/src/test/java/com/baeldung/enums/PizzaUnitTest.java b/core-java-modules/core-java-lang-oop-types/src/test/java/com/baeldung/enums/PizzaUnitTest.java index 70bfe168dd..e1f99e2173 100644 --- a/core-java-modules/core-java-lang-oop-types/src/test/java/com/baeldung/enums/PizzaUnitTest.java +++ b/core-java-modules/core-java-lang-oop-types/src/test/java/com/baeldung/enums/PizzaUnitTest.java @@ -70,7 +70,7 @@ public class PizzaUnitTest { } @Test - public void whenDelivered_thenPizzaGetsDeliveredAndStatusChanges() { + public void givenPizaOrder_whenDelivered_thenPizzaGetsDeliveredAndStatusChanges() { Pizza pz = new Pizza(); pz.setStatus(Pizza.PizzaStatusEnum.READY); pz.deliver(); diff --git a/core-java-modules/core-java-streams-2/src/main/java/com/baeldung/reduce/entities/Rating.java b/core-java-modules/core-java-streams-2/src/main/java/com/baeldung/reduce/entities/Rating.java new file mode 100644 index 0000000000..566691d442 --- /dev/null +++ b/core-java-modules/core-java-streams-2/src/main/java/com/baeldung/reduce/entities/Rating.java @@ -0,0 +1,39 @@ +package com.baeldung.reduce.entities; + +import java.util.ArrayList; +import java.util.List; + +public class Rating { + + double points; + List reviews = new ArrayList<>(); + + public Rating() {} + + public void add(Review review) { + reviews.add(review); + computeRating(); + } + + private double computeRating() { + double totalPoints = reviews.stream().map(Review::getPoints).reduce(0, Integer::sum); + this.points = totalPoints / reviews.size(); + return this.points; + } + + public static Rating average(Rating r1, Rating r2) { + Rating combined = new Rating(); + combined.reviews = new ArrayList<>(r1.reviews); + combined.reviews.addAll(r2.reviews); + combined.computeRating(); + return combined; + } + + public double getPoints() { + return points; + } + + public List getReviews() { + return reviews; + } +} diff --git a/core-java-modules/core-java-streams-2/src/main/java/com/baeldung/reduce/entities/Review.java b/core-java-modules/core-java-streams-2/src/main/java/com/baeldung/reduce/entities/Review.java new file mode 100644 index 0000000000..b889a5f154 --- /dev/null +++ b/core-java-modules/core-java-streams-2/src/main/java/com/baeldung/reduce/entities/Review.java @@ -0,0 +1,28 @@ +package com.baeldung.reduce.entities; + +public class Review { + + int points; + String review; + + public Review(int points, String review) { + this.points = points; + this.review = review; + } + + public int getPoints() { + return points; + } + + public void setPoints(int points) { + this.points = points; + } + + public String getReview() { + return review; + } + + public void setReview(String review) { + this.review = review; + } +} diff --git a/patterns-modules/solid/src/main/java/com/baeldung/s/GoodBook.java b/patterns-modules/solid/src/main/java/com/baeldung/s/Book.java similarity index 94% rename from patterns-modules/solid/src/main/java/com/baeldung/s/GoodBook.java rename to patterns-modules/solid/src/main/java/com/baeldung/s/Book.java index 04606bcdcd..8e26c88655 100644 --- a/patterns-modules/solid/src/main/java/com/baeldung/s/GoodBook.java +++ b/patterns-modules/solid/src/main/java/com/baeldung/s/Book.java @@ -1,6 +1,6 @@ package com.baeldung.s; -public class GoodBook { +public class Book { private String name; private String author; diff --git a/persistence-modules/jpa-hibernate-cascade-type/src/test/java/com/baeldung/cascading/CasCadeTypeUnitTest.java b/persistence-modules/jpa-hibernate-cascade-type/src/test/java/com/baeldung/cascading/CasCadeTypeUnitTest.java index a196bdac12..88cc920a92 100644 --- a/persistence-modules/jpa-hibernate-cascade-type/src/test/java/com/baeldung/cascading/CasCadeTypeUnitTest.java +++ b/persistence-modules/jpa-hibernate-cascade-type/src/test/java/com/baeldung/cascading/CasCadeTypeUnitTest.java @@ -34,7 +34,7 @@ public class CasCadeTypeUnitTest { } @Test - public void testPersist() { + public void whenParentSavedThenChildSaved() { Person person = new Person(); Address address = new Address(); address.setPerson(person); @@ -45,7 +45,7 @@ public class CasCadeTypeUnitTest { } @Test - public void testMerge() { + public void whenParentSavedThenMerged() { int addressId; Person person = buildPerson("devender"); Address address = buildAddress(person); @@ -64,7 +64,7 @@ public class CasCadeTypeUnitTest { } @Test - public void testRemove() { + public void whenParentRemovedThenChildRemoved() { int personId; Person person = buildPerson("devender"); Address address = buildAddress(person); @@ -80,12 +80,13 @@ public class CasCadeTypeUnitTest { } @Test - public void testDetach() { + public void whenParentDetachedThenChildDetached() { Person person = buildPerson("devender"); Address address = buildAddress(person); person.setAddresses(Arrays.asList(address)); session.persist(person); session.flush(); + Assertions.assertThat(session.contains(person)).isTrue(); Assertions.assertThat(session.contains(address)).isTrue(); @@ -95,12 +96,13 @@ public class CasCadeTypeUnitTest { } @Test - public void testLock() { + public void whenDetachedAndLockedThenBothReattached() { Person person = buildPerson("devender"); Address address = buildAddress(person); person.setAddresses(Arrays.asList(address)); session.persist(person); session.flush(); + Assertions.assertThat(session.contains(person)).isTrue(); Assertions.assertThat(session.contains(address)).isTrue(); @@ -116,7 +118,7 @@ public class CasCadeTypeUnitTest { } @Test - public void testRefresh() { + public void whenParentRefreshedThenChildRefreshed() { Person person = buildPerson("devender"); Address address = buildAddress(person); person.setAddresses(Arrays.asList(address)); @@ -125,12 +127,13 @@ public class CasCadeTypeUnitTest { person.setName("Devender Kumar"); address.setHouseNumber(24); session.refresh(person); + Assertions.assertThat(person.getName()).isEqualTo("devender"); Assertions.assertThat(address.getHouseNumber()).isEqualTo(23); } @Test - public void testReplicate() { + public void whenParentReplicatedThenChildReplicated() { Person person = buildPerson("devender"); person.setId(2); Address address = buildAddress(person); diff --git a/persistence-modules/spring-data-jpa-repo/src/main/java/com/baeldung/derivedquery/repository/UserRepository.java b/persistence-modules/spring-data-jpa-repo/src/main/java/com/baeldung/derivedquery/repository/UserRepository.java index e613ee1531..76cdf41d81 100644 --- a/persistence-modules/spring-data-jpa-repo/src/main/java/com/baeldung/derivedquery/repository/UserRepository.java +++ b/persistence-modules/spring-data-jpa-repo/src/main/java/com/baeldung/derivedquery/repository/UserRepository.java @@ -56,5 +56,9 @@ public interface UserRepository extends JpaRepository { List findByNameOrderByName(String name); List findByNameOrderByNameDesc(String name); + + List findByNameIsNotNull(); + + List findByNameOrderByNameAsc(String name); } diff --git a/spring-di-2/src/test/java/com/baeldung/circulardependency/CircularDependencyIntegrationTest.java b/spring-di-2/src/test/java/com/baeldung/circulardependency/CircularDependencyIntegrationTest.java index 42847f4dd1..5ddd47bc28 100644 --- a/spring-di-2/src/test/java/com/baeldung/circulardependency/CircularDependencyIntegrationTest.java +++ b/spring-di-2/src/test/java/com/baeldung/circulardependency/CircularDependencyIntegrationTest.java @@ -32,4 +32,9 @@ public class CircularDependencyIntegrationTest { Assert.assertEquals("Hi!", circA.getCircB().getMessage()); } + + @Test + public void givenCircularDependency_whenConstructorInjection_thenItFails() { + // Empty test; we just want the context to load + } } diff --git a/spring-di/src/main/java/com/baeldung/sample/Config.java b/spring-di/src/main/java/com/baeldung/sample/Config.java new file mode 100644 index 0000000000..9d13573c8e --- /dev/null +++ b/spring-di/src/main/java/com/baeldung/sample/Config.java @@ -0,0 +1,22 @@ +package com.baeldung.sample; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; + +@Configuration +@ComponentScan(basePackages="com.baeldung.primary") +public class Config { + + @Bean + public Employee johnEmployee(){ + return new Employee("John"); + } + + @Bean + @Primary + public Employee tonyEmployee(){ + return new Employee("Tony"); + } +} diff --git a/spring-di/src/main/java/com/baeldung/sample/Employee.java b/spring-di/src/main/java/com/baeldung/sample/Employee.java new file mode 100644 index 0000000000..a150aeb813 --- /dev/null +++ b/spring-di/src/main/java/com/baeldung/sample/Employee.java @@ -0,0 +1,20 @@ +package com.baeldung.sample; + +/** + * Created by Gebruiker on 7/17/2018. + */ +public class Employee { + + private String name; + + public Employee(String name) { + this.name = name; + } + + @Override + public String toString() { + return "Employee{" + + "name='" + name + '\'' + + '}'; + } +} diff --git a/testing-modules/testing-libraries/src/test/java/com/baeldung/mutation/PalindromeUnitTest.java b/testing-modules/testing-libraries/src/test/java/com/baeldung/mutation/PalindromeUnitTest.java index 207077158e..92ddda2b6c 100644 --- a/testing-modules/testing-libraries/src/test/java/com/baeldung/mutation/PalindromeUnitTest.java +++ b/testing-modules/testing-libraries/src/test/java/com/baeldung/mutation/PalindromeUnitTest.java @@ -9,25 +9,25 @@ import com.baeldung.mutation.Palindrome; public class PalindromeUnitTest { @Test - public void whenEmptyString_thanAccept() { + public void whenEmptyString_thenAccept() { Palindrome palindromeTester = new Palindrome(); assertTrue(palindromeTester.isPalindrome("")); } @Test - public void whenPalindrom_thanAccept() { + public void whenPalindrom_thenAccept() { Palindrome palindromeTester = new Palindrome(); assertTrue(palindromeTester.isPalindrome("noon")); } @Test - public void whenNotPalindrom_thanReject(){ + public void whenNotPalindrom_thenReject(){ Palindrome palindromeTester = new Palindrome(); assertFalse(palindromeTester.isPalindrome("box")); } @Test - public void whenNearPalindrom_thanReject(){ + public void whenNearPalindrom_thenReject(){ Palindrome palindromeTester = new Palindrome(); assertFalse(palindromeTester.isPalindrome("neon")); } From 290581f15bfe2a47df5c57fa68258b0cda6c9573 Mon Sep 17 00:00:00 2001 From: freelansam Date: Fri, 2 Dec 2022 18:53:08 +0530 Subject: [PATCH 2/2] JAVA-16301: Check Article Code Matches GitHub --- .../baeldung/defaultstaticinterfacemethods/model/Car.java | 5 +++++ .../defaultstaticinterfacemethods/model/Motorbike.java | 5 +++++ .../defaultstaticinterfacemethods/model/MultiAlarmCar.java | 5 +++++ 3 files changed, 15 insertions(+) diff --git a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Car.java b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Car.java index 6ec6507e59..92dbec07e7 100644 --- a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Car.java +++ b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Car.java @@ -22,4 +22,9 @@ public class Car implements Vehicle { public String slowDown() { return "The car is slowing down."; } + + @Override + public double getSpeed() { + return 0; + } } \ No newline at end of file diff --git a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Motorbike.java b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Motorbike.java index b1de93059a..c3e17f63d5 100644 --- a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Motorbike.java +++ b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/Motorbike.java @@ -22,4 +22,9 @@ public class Motorbike implements Vehicle { public String slowDown() { return "The motorbike is slowing down."; } + + @Override + public double getSpeed() { + return 0; + } } \ No newline at end of file diff --git a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/MultiAlarmCar.java b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/MultiAlarmCar.java index abf329fafd..85398ec488 100644 --- a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/MultiAlarmCar.java +++ b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/defaultstaticinterfacemethods/model/MultiAlarmCar.java @@ -32,4 +32,9 @@ public class MultiAlarmCar implements Vehicle, Alarm { public String turnAlarmOff() { return Vehicle.super.turnAlarmOff() + " " + Alarm.super.turnAlarmOff(); } + + @Override + public double getSpeed() { + return 0; + } } \ No newline at end of file