Merging into own fork (#3)

* [BAEL-7621] - Fixed integration test of spring-hibernate-5 module by introducing H2 database

* BAEL-1985: Added Examples showing how to Initialize HashSet when it's constructed (#4715)

* Added Class for Initalizing HahsSet

* Updated Class name

* Delete InitializingSetTest.java

* Copy list to another list examples (#4725)

* Update README.MD (#4720)

* [BAEL-7621] - Fixed integration test of spring-hibernate-5 module by introducing H2 database (#4728)

* [BAEL-7645] - Fixed integration test of spring-jpa module through H2 inmemory DB

* BAEL-1814 Guide to Spring Webflux (#4450)

* BAEL-1814 Guide to Spring Webflux

-Added files for Employee reactive application
-Updated pom.xml for Spring Security

* BAEL-1814 Guide to Spring Webflux

-Added EmployeeControllerTest
-Updated method name in EmployeeController and corrected secured url in EmployeeWebSecurityConfig

* BAEL-1814 Guide to spring webflux

-Fixed security config, now only specific url prompts for authentication and not all endpoints
-Removed @WithMockUser as it is not needed now

* BAEL-1814 Guide To Webflux

-Feedback incorporation

* BAEL-1814 Spring Webflux Guide

-Formatted coded for EmployeeWebSocketHandler.

* Update and rename EmployeeControllerTest.java to EmployeeControllerUnitTest.java

* BAEL-1814 Guide to spring webflux

-Fixed EmployeeControllerUnitTest.java

* BAEL - 1916 (#4729)

Code refactored

* Renamed test methods to use BDD style

* Fixed integration test of spring-jpa module through inmemory H2 DB (#4740)

* [BAEL-7621] - Fixed integration test of spring-hibernate-5 module by introducing H2 database

* [BAEL-7645] - Fixed integration test of spring-jpa module through H2 inmemory DB

* guide to jmapper

* [BAEL-7651] - Fixed integration tests of spring-security-mvc-custom module by adding proper authentication manager

* clean only generated files

* added spring-rest-hal-browser code (#4701)

* Added spring-rest-template

* Updated README.md file

* Updated README.md file

* Update Makefile

* Update Makefile

* moved AuthenticationFailureHandler example to spring-security-mvc-login

* trying out separate modules in the integration profile

* maven cleanup

* fixing name of module

* running group 2

* running group 1

* fixing relative path

* Update Makefile

* Update Makefile

* Update JMapperIntegrationTest.java

* Update JMapperRelationalIntegrationTest.java

* Update MultipartFileUploadClient.java

* BAEL-1914 refactor (#4749)

* Server Sent Events example using Spring Webflux and React

* spring security custom AuthenticationFailureHandler

* refactor

* moved SSE to branch

* remove pom properties

* moved AuthenticationFailureHandler example to spring-security-mvc-login

* added link

* trying out profile-driven build

* minor maven cleanup

* activating group 2

* Update README.md

* BAEL-1850 (#4744)

* Micronaut server

* More server stuff; create client and test

* Rename directory, new concerete client example

* Remove hello-world directory from micronaut

* Update MavenWrapperDownloader.java

* running group 1, and small logging fix

* jnosql

* live test properly categorized

* temporarily making a test live

* moving the libraries module from group 1

* group 2

* enabling group 3

* * Added changes for BAEL-1922 Enable CORS in Spring Webflux (#4724)

* BAEL-2018 (#4753)

* BAEL-2018

* Update Animal.java

* rename

* running group 3

* jmeter excluded

* running group 2

* properly classifying a testclear

* live tests

* BAEL-1838 (#4692)

* #BAEL-1838 code samples. Renamed LambdaKotlinTest to have the build succeed.

* #BAEL-1838 code samples w/inheritance.

* #BAEL-1838 renamed logger helper function to getLogger to avoid confusion.

* #BAEL-1838 renamed logger helper function to getLogger to avoid confusion.

* BEAL-1985 - Removed Java 9 Example  (#4734)

* Added Class for Initalizing HahsSet

* Updated Class name

* Delete InitializingSetTest.java

* Modified HashSet Initilization Example

* Removed Java 9 Example

* Update HashSetInitalizingUnitTest.java

* Update HashSetInitalizingUnitTest.java

* Update HashSetInitalizingUnitTest.java

* Update HashSetInitalizingUnitTest.java

* group 3.2

* enabling 3.1

* running group 3

* Update README.md

Documenting the new default profile.

* fixing the default profile testing config

* groups 2 and 3

* minor major cleanup

* BAEL-1907 Created new module spring-testing

* new integration-lite profile

* integration-lite work

* BAEL-1862 Move the Junit 5 logic in the right module (#4747)

* BAEL-1862 Move the Junit 5 logic in the right module

-Moved Method Orders Tests from tutorails/junit5 project into correct project tutorials/testing-modules/junit-5
-Removed tutorials/junit5 project

* Update DefaultOrderOfExecutionTest.java

* Update README.md

* BAEL-1862 Move the Junit 5 logic in the right module

-Renamed *Test to *UnitTest

* Update README.md

* maven cleanup work

* logging cleanup

* BAEL-1907 Corrected formatting

* working through modules

* maven cleanup

* trying problematic modules

* integration heavy profile

* maven work

* Bael 1864 (#4727)

* running project without building tests

* include the DataCheck class

* Update TestFail.java

* guide to jmapper (#4745)

* guide to jmapper

* Update JMapperIntegrationTest.java

* Update JMapperRelationalIntegrationTest.java

* dupirefr/dupire.francois+pro@gmail.com [BAEL-1981] Query entities by dates and times with Spring Data JPA (#4737)

* [BAEL-1981] Article entity and repository + tests

* [BAEL-1981] Removing unnecessary fields

* moving long-running module

* BAEL-1992

* maven cleanup work

* BAEL-1818 - A Guide to Connection Pools in Java (#4735)

* Strange git issue with README.MD, wouldn't revert the file

* Initial Commit

* Initial Commit

* Update pom.xml

* Update pom.xml

* Initial Commit

* Update pom.xml

* Update source files

* Update source files

* Update source files

* Update source files

* Update Application.java

* Update pom.xml

* Update HikariCPDataSourceUnitTest class

* Update HikariCPDataSourceUnitTest.java

* Update pom.xml

* Update unit test classes

* Update BasicConnectionPoolUnitTest.java

* Fix indentation in DBCDDataSource class

* Update DBCPDataSource.java

* Update BasicConnectionPool class

* Update BasicConnectionPool class

* Update BasicConnectionPool.java

* Update BasicConnectionPool.java

* Update pom.xml

* Update pom.xml

* BAEL-1818 Refactored getConnection(), added shutdown(), cleaned up pom.xml

* BAEL-1818 Removed getConnectionPool(), upgraded c3po version

* BAEL-1818 Deleted obsolete connectionpool module

* BAEL-1818 Deleted obsolete connectionpool module

* move jmapper to libraries-data

* [BAEL-7635] Removed test generated files : Will be gitignored

* [BAEL-7635] - Commented out sortpom-maven-plugin that changes pom.xml in every build, added new entries in .gitignore

* BAEL-1852 - Testing an Abstract Class with JUnit (#4773)

* BAEL-1852 - Testing an Abstract Class with JUnit

* Fixed test method names and class names according to naming compliances.

* BAEL-1934 (#4768)

* Bean Object, server side and client side example for event streaming
example

* BAEL-1628

Access a File from the Classpath in a Spring Application

* inputstream retrieval added

* Removed files related to evaluation article

* + Aligning code to the article. Removed Utility methods and classes

* BAEL - 1628

* PMD fixes

* Code Review changes
Refactored : whenResourceUtils_thenReadSuccessful

* BAEL-1934

* +indentation correction in pom.xml

* synced with master

* indentation correction

* update to spring 5

* Bael 2018 (#4774)

* BAEL-2018

* Update Animal.java

* rename

* tests added

* generic type shorten

* update test

* BAEL-1911 - Fixing author's review comments (#4782)

* Strange git issue with README.MD, wouldn't revert the file

* Fixing review comments

* BAEL-1911 Refactored SQL code, fixed formatting

* fix swagger parent

* Update pom.xml

* Update pom.xml

* Overriding System time for testing (#4779)

* Overriding System time for testing

* Remove Joda Date Time examples

* BAEL-1728: add java instrumentation

* dupirefr/dupire.francois+pro@gmail.com [BAEL-1981] Spring data jpa dates (#4795)

* [BAEL-1981] Article entity and repository + tests

* [BAEL-1981] Removing unnecessary fields

* [BAEL-1981] spring-data-jpa module creation

* BAEL-1818 lamdba instead of loop; isEmpty() instead of == 0 (#4791)

* BAEL-2018 Moved to core-java-collections (#4796)

* BAEL-1691: comparing embedded servlet containers in spring boot

* vaadin spring

* format

* remove reactive ex

* move to reactive, extract mongodb ex

* PR for http://jira.baeldung.com/browse/BAEL-1947 Spring Boot Vue (#4687)

* commit first as binodpanta

* revert test change

* A short example of real-time event streaming using Spring WebFlux

* Code for http://jira.baeldung.com/browse/BAEL-1527

* remove unrelated files

* Apply feedback changes to rename test and remove link from readme file, ongoing work

* Update formatting fixes to code and add pom changes, that partially fix test runnning issues in IDE but not in cmdline

* Apply Eclipse formatter to test code and apply suggested pom fixes

* BAEL-1527 Formatting fix in pom.xml

* Use string.format to cleanup logging code

* BAEL-1527 Changed logging pattern

* Start the spring-boot-vue module, WIP

* some small updates with comments

* Add index html template page

* merge pom.xml fixes

* Add integration test with MockMvc to verify index.html content is rendered correctly

* fix up pom merge issues

* merge issues fix for pom

* pom end of file newline

* Update README.md

* Update README.md (#4706)

* add links (#4804)

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Create README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.MD

* Create README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* move mongodb ex

* fix readme files

* Bael 1832 (#4748)

* @Primary annotation

* @Primary annotation Employee name

* Update PrimaryApplication.java

* @Primary annotation with @Component

* add security exc

* added readme

* added link

* BAEL-2030 remove first element from list (#4803)

* BAEL-2042 JavaFaker unit tests

* Moved javafaker unit tests to testing-modules

* Update PushController.java

* * added examples of filtering collections using Streams, Apache CollectionUtils, Guava and Eclipse Collections

* * Added examples for java-9 filtering collector

* * minor fixes and cleaning duties

* add elements to list (#4814)

* BAEL-1960: Custom appender for log4j (#4731)

* BAEL-1960: Custom appender for log4j

* Changes as per suggestion to BAEL-1960

* Changes as [er review for BAEL-1960

* Changes for formatting as per suggestion.

* BAEL-1960. Copied pom.xml from master and pasted my changes against it.

* Chnages for spaces instead of tabs.

* Changes for spaces instead of tabs.

* PrincipalExtractor and AuthoritiesExtractor example

* Bael 1743 improved (#4826)

* compile only for firefox

* added parent module

* changed artifact id

* commenting out problematic modules in the integration-lite build

* integratio-lite profile work

* integration-lite work

* update spring data elasticsearch

* BAEL-1818 A Simple Guide to Connection Pooling in Java (#4823)

* Initial Commit

* Update parent pom.xml

* Update BasicConnectionPool class

* Update BasicConnectionPool class

* BAEL-1818 removed code from core-java module, cleaned up a little pom files

* BAEL-1818 moved the code from connectionpool.connectionpools package to connectionpool

* added link

* integration-lite trying out a few modules

* moved PrincipalExtractor and AuthoritiesExtractor example to spring-5-security module

* removed comment on pom

* [refs#BAEL-1992] Minor refactoring

* BAEL-1983 Intialize a HashMap in Java (#4819)

* move mqtt project

* added link

* Add items to list in core-java-collections (#4841)

* [BAEL-7608] - Fixed spring-5-reactive integration tests

* [BAEL-7608] - Reverted NettyContext to Embedded Tomcat example with Async = true

* [BAEL-7608] - Removed unused imports

* Update pom.xml

* [BAEL-7609] - Fixed spring-boot integration tests

* Added PR files for BAEL-2031 (#4844)

* Added source files for BAEL-2031

* Added test files for BAEL-2031

* upgrade sockets to spring5

* BAEL-1979 Added examples for SnakeYAML Library (#4802)

* BAEL-1979 Added examples for SnakeYAML Library

* BAEL-1979 Moved the snakeyaml related code to libraries module

* BAEL-1979 Removed the System.out.println() statements and converted the assertTrue to assertEquals wherever possible.

* BAEL-1979 Removed println statements, small formatting fix in pom.xml

* [BAEL-7608] - Fixed SecurityIntegrationTest with redirecting to login

* Bael 1555 - Improve Example (#4852)

* BAEL-1555

* Corrected indents and spacing

* RequestMapping to GetMapping

* Improved Performance For Concurrent Users

* BAEL-1958 Log using SLF4J (#4790)

* Log using SLF4J
Jira Ticket: BAEL-1958

* Incorporate first review comments

* Bael 2023 (#4851)

* bael-2023: removing all occurrences of a value from a list

* adjusting examples to match the article

* [BAEL-7437] - Added spring tx dependency to fix spring-mvc-simple junit 5 TCs

* add libraries server project

* remove extra files

* BAEL-1865 - Java Objects Sizes (#4584)

* BAEL-1865 - Java Objects Sizes

* BAEL-1865 - PR fix

* OAuth2 Principal and Authorities example - refactor and added example using custom authorization server

* Server-Sent Evensts

* BAEL-1936 Use of FilenameFilter (#4520)

* Added tests for FilenameFilter demo

-added a test to show FilenameFilter implementation
-added another test to show similar functionality using Predicate

* refactored code to get directory at a single location

* fixing formatting

* changed test class name to conform to custom rule

UnitTestNamingConventionRule lists the allowed test class names. Added ManualTest at the end to conform to the rule.

* add new module

* Update pom.xml (#4843)

* BAEL-1861 - Running JUnit tests from a Java application (#4526)

* BAEL-1562 - Thymeleaf sample working

* BAEL-1562 Code added for Fragments sample

* BAEL-1562 - Last correction for the test

* BAEL-1562 - Thymeleaf sample working

* BAEL-1562 Code added for Fragments sample

* BAEL-1562 - Last correction for the test

* Updates Thymeleaf version to 3.0.9.RELEASE

* Added msf4j projects

* updated msf4j project folder

* fixed issue with spring-thymeleaf/pom.xml

* Removed depedency-reduced-pom.xml

* Whitespacing fix

* Strange git issue with README.MD, wouldn't revert the file

* Added jupiter api

* Corrected junit test

* Added test engine to plugin

* Removed extra tag

* Little fixes to junit4 and junit4 run from java

* Removed scope from pom.xml

* Removed bin file from testing

* Slight changes for PMD

* Slight changes for PMD

* ok, moved code to another folder

* Renamed and fixed runjunitfromjava

* moved test classes to test folder

* moved main to src/java

* BAEL-1861 Moved test running classes to src/test/java

* Added changes to runjunitfromjava

* Added changes to runjunitfromjava

* BAEL-1861 Changed test execution code examples

* BAEL-1861 Changed test execution code examples; formatting

* Bael 1852 - Test case code is aligned to support Junit5 (#4847)

* add prototype bean ex with function

* remove extra classes

* remove extra import

* separate configs

* separate configs

* Update AppConfig.java

* Code update to support Junit5

* BAEL-1979 Added examples for SnakeYAML Library (#4802)

* BAEL-1979 Added examples for SnakeYAML Library

* BAEL-1979 Moved the snakeyaml related code to libraries module

* BAEL-1979 Removed the System.out.println() statements and converted the assertTrue to assertEquals wherever possible.

* BAEL-1979 Removed println statements, small formatting fix in pom.xml

* BAEL-1852 Renamed one test method, fixed formatting

* Bael 1273 Spring RSS Feed View (#4707)

* Added example for BAEL-1273 - rss feed with Spring.

* Fixed javadoc

* Removed useless SpringBootServletInitializer in RSS app's launcher

* Explicitely added Spring Boot starting class in pom.xml to prevent errors in package phase.

* Adding files for Exception Handling article (#4507)

* Adding files for Exception Handling article

* Updating files

* Test folder

* testing renaming

* Formatting and Naming Conventions

This commit reworks the code for the Intro to Exception Handling
article, ensuring that packages and classes are formatted and named
according to site standards.

* Update SseEmitterController.java (#4864)

* fixing package hierarchy (*.list.list.listoflist -> *.list.listoflist) (#4879)

* moved examples for 'removing all occurrences of an element from a list' to core-java-collections (#4878)

* BAEL-1958 Moved the example to logging-modules (#4886)

* Example for removing first element of array (BAEL-2029) (#4836)

* Example for removing first element of array (BAEL-2029)

* Use AssertJ assertions

* BAEL-1986 List initialization in one line (#4696)

* list initializations in one line

* Enhance after review

* formatting and naming

* Formatting and renaming 2

* Unit tests and DequeBasedSynchronizedStack added up

* Unit tests method names and class names modified as per the guidelines

* BAEL-1840 Builder Pattern in Kotlin (#4730)

* builder pattern in kotlin

* builder pattern in kotlin new-line

* deleted Sandbox, added unit test

* add other tests

* named and default parameters builder

* Make FoodOrderNamed a data class

* BAEL-1861 Replaced real tests with demo test "placeholders" (#4887)

* Spring Boot and Angular E-Commerce Application (#4874)

* Spring Boot and Angular E-Commerce Application

* Spring Boot and Angular E-Commerce Application pom.xml updated

* Spring Boot and Angular E-Commerce Application tests added

* BAEL-7965 JMH module fails when build (#4888)

* BAEL-7965 JMH module fails when build

-Added jmh module in default profile in parent pom

* Update pom.xml

moved jmh module to integration profile

* Create pom.xml

* Create FunctionTestSuite.java

BAEL-1857

* BAEL-1857 Running Parallel JUnit Tests with Maven

* BAEL-1901 and BAEL-1555 add links (#4892)

* BAEL-1766: Update README

* BAEL-1853: add link to article

* BAEL-1801: add link to article

* Added links back to articles

* Add links back to articles

* BAEL-1795: Update README

* BAEL-1901 and BAEL-1555 add links back to article

* [BAEL-1967] - Custom validation MessageSource in Spring Boot

* POM file updated for BAEL-1967

* BAEL-1704: Non-Trivial Work in Kotlin vs Java (#4861)

* BAEL-1704: Non-Trivial Work in Kotlin vs Java

* BAEL-1704: Non-Trivial Work in Kotlin vs Java

Renaming one test class

* Bael 1964 (#4881)

* Added initial code for BAEL-1964, in-memory authentication application

* Switched to default security encoder instead of a specific one

* Fix typo (#4897)

* add new module

* fix typo

* [BAEL-7670] Added logback.xml in missing modules in src/main/resources
This commit is contained in:
Neeraj Yadav
2018-08-05 20:21:07 +05:30
committed by GitHub
parent 88f832b6b7
commit 2926350e7b
1695 changed files with 56478 additions and 8373 deletions
+3 -2
View File
@@ -32,7 +32,6 @@
- [“Stream has already been operated upon or closed” Exception in Java](http://www.baeldung.com/java-stream-operated-upon-or-closed-exception)
- [Display All Time Zones With GMT And UTC in Java](http://www.baeldung.com/java-time-zones)
- [Copy a File with Java](http://www.baeldung.com/java-copy-file)
- [Generating Prime Numbers in Java](http://www.baeldung.com/java-generate-prime-numbers)
- [Static and Default Methods in Interfaces in Java](http://www.baeldung.com/java-static-default-methods)
- [Iterable to Stream in Java](http://www.baeldung.com/java-iterable-to-stream)
- [Converting String to Stream of chars](http://www.baeldung.com/java-string-to-stream)
@@ -47,7 +46,6 @@
- [Overview of Java Built-in Annotations](http://www.baeldung.com/java-default-annotations)
- [Finding Min/Max in an Array with Java](http://www.baeldung.com/java-array-min-max)
- [Internationalization and Localization in Java 8](http://www.baeldung.com/java-8-localization)
- [Filtering Kotlin Collections](http://www.baeldung.com/kotlin-filter-collection)
- [How to Find an Element in a List with Java](http://www.baeldung.com/find-list-element-java)
- [Measure Elapsed Time in Java](http://www.baeldung.com/java-measure-elapsed-time)
- [Java Optional orElse() vs orElseGet()](http://www.baeldung.com/java-optional-or-else-vs-or-else-get)
@@ -56,3 +54,6 @@
- [Java 8 Unsigned Arithmetic Support](http://www.baeldung.com/java-unsigned-arithmetic)
- [How to Get the Start and the End of a Day using Java](http://www.baeldung.com/java-day-start-end)
- [Generalized Target-Type Inference in Java](http://www.baeldung.com/java-generalized-target-type-inference)
- [Image to Base64 String Conversion](http://www.baeldung.com/java-base64-image-string)
- [Calculate Age in Java](http://www.baeldung.com/java-get-age)
- [Add Hours To a Date In Java](http://www.baeldung.com/java-add-hours-date)
+25 -82
View File
@@ -1,5 +1,5 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.baeldung</groupId>
<artifactId>core-java-8</artifactId>
@@ -10,8 +10,8 @@
<parent>
<groupId>com.baeldung</groupId>
<artifactId>parent-java</artifactId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../parent-java</relativePath>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../parent-java</relativePath>
</parent>
<dependencies>
@@ -94,6 +94,21 @@
<artifactId>streamex</artifactId>
<version>${streamex.version}</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>${joda.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>${asspectj.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${asspectj.version}</version>
</dependency>
</dependencies>
<build>
@@ -125,86 +140,14 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>libs/</classpathPrefix>
<mainClass>org.baeldung.executable.ExecutableMavenJar</mainClass>
</manifest>
</archive>
<source>1.8</source>
<target>1.8</target>
<compilerArgument>-parameters</compilerArgument>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<archiveBaseDirectory>${project.basedir}</archiveBaseDirectory>
<archive>
<manifest>
<mainClass>org.baeldung.executable.ExecutableMavenJar</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<shadedArtifactAttached>true</shadedArtifactAttached>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>org.baeldung.executable.ExecutableMavenJar</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.jolira</groupId>
<artifactId>onejar-maven-plugin</artifactId>
<executions>
<execution>
<configuration>
<mainClass>org.baeldung.executable.ExecutableMavenJar</mainClass>
<attachToBuild>true</attachToBuild>
<filename>${project.build.finalName}-onejar.${project.packaging}</filename>
</configuration>
<goals>
<goal>one-jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgument>-parameters</compilerArgument>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
@@ -225,10 +168,8 @@
<properties>
<!-- util -->
<guava.version>21.0</guava.version>
<commons-lang3.version>3.5</commons-lang3.version>
<commons-math3.version>3.6.1</commons-math3.version>
<commons-io.version>2.5</commons-io.version>
<commons-collections4.version>4.1</commons-collections4.version>
<collections-generic.version>4.01</collections-generic.version>
<commons-codec.version>1.10</commons-codec.version>
@@ -236,8 +177,10 @@
<vavr.version>0.9.0</vavr.version>
<protonpack.version>1.13</protonpack.version>
<streamex.version>0.6.5</streamex.version>
<joda.version>2.10</joda.version>
<!-- testing -->
<assertj.version>3.6.1</assertj.version>
<asspectj.version>1.8.9</asspectj.version>
<avaitility.version>1.7.0</avaitility.version>
<jmh-core.version>1.19</jmh-core.version>
<jmh-generator.version>1.19</jmh-generator.version>
@@ -0,0 +1,9 @@
package com.baeldung.aspect;
public aspect ChangeCallsToCurrentTimeInMillisMethod {
long around():
call(public static native long java.lang.System.currentTimeMillis())
&& within(user.code.base.pckg.*) {
return 0;
}
}
@@ -0,0 +1,63 @@
package com.baeldung.datetime.modify;
import org.apache.commons.lang3.time.DateUtils;
import org.joda.time.DateTime;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.Calendar;
import java.util.Date;
import java.util.logging.Logger;
public class DateIncrementer {
private static final Logger log = Logger.getLogger(DateIncrementer.class.getName());
private static final int INCREMENT_BY_IN_DAYS = 1;
public static String addOneDay(String date) {
return LocalDate
.parse(date)
.plusDays(INCREMENT_BY_IN_DAYS)
.toString();
}
public static String addOneDayJodaTime(String date) {
DateTime dateTime = new DateTime(date);
return dateTime
.plusDays(INCREMENT_BY_IN_DAYS)
.toString("yyyy-MM-dd");
}
public static String addOneDayCalendar(String date) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
c.setTime(sdf.parse(date));
c.add(Calendar.DATE, 1);
return sdf.format(c.getTime());
}
public static String addOneDayApacheCommons(String date) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date incrementedDate = DateUtils.addDays(sdf.parse(date), 1);
return sdf.format(incrementedDate);
}
public static void main(String[] args) throws ParseException {
String date = LocalDate
.now()
.toString();
log.info("Current date = " + date);
String incrementedDateJava8 = DateIncrementer.addOneDay(date);
log.info("Date incremented by one day using (Java 8): " + incrementedDateJava8);
String incrementedDateJodaTime = DateIncrementer.addOneDayJodaTime(date);
log.info("Date incremented by one day using (Joda-Time): " + incrementedDateJodaTime);
String incrementedDateCalendar = addOneDayCalendar(date);
log.info("Date incremented by one day using (java.util.Calendar): " + incrementedDateCalendar);
String incrementedDateApacheCommons = addOneDayApacheCommons(date);
log.info("Date incremented by one day using (Apache Commons DateUtils): " + incrementedDateApacheCommons);
}
}
@@ -0,0 +1,73 @@
package com.baeldung.list;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class CopyListService {
public List<Flower> copyListByConstructor(List<Flower> source) {
return new ArrayList<Flower>(source);
}
public List<Flower> copyListByConstructorAndEditOneFlowerInTheNewList(List<Flower> source) {
List<Flower> flowers = new ArrayList<>(source);
if(flowers.size() > 0) {
flowers.get(0).setPetals(flowers.get(0).getPetals() * 3);
}
return flowers;
}
public List<Flower> copyListByAddAllMethod(List<Flower> source) {
List<Flower> flowers = new ArrayList<>();
flowers.addAll(source);
return flowers;
}
public List<Flower> copyListByAddAllMethodAndEditOneFlowerInTheNewList(List<Flower> source) {
List<Flower> flowers = new ArrayList<>();
flowers.addAll(source);
if(flowers.size() > 0) {
flowers.get(0).setPetals(flowers.get(0).getPetals() * 3);
}
return flowers;
}
public List<Integer> copyListByCopyMethod(List<Integer> source, List<Integer> dest) {
Collections.copy(dest, source);
return dest;
}
public List<Flower> copyListByStream(List<Flower> source) {
return source.stream().collect(Collectors.toList());
}
public List<Flower> copyListByStreamAndSkipFirstElement(List<Flower> source) {
return source.stream().skip(1).collect(Collectors.toList());
}
public List<Flower> copyListByStreamWithFilter(List<Flower> source, Integer moreThanPetals) {
return source.stream().filter(f -> f.getPetals() > moreThanPetals).collect(Collectors.toList());
}
public List<Flower> copyListByStreamWithOptional(List<Flower> source) {
return Optional.ofNullable(source)
.map(List::stream)
.orElseGet(Stream::empty)
.collect(Collectors.toList());
}
public List<Flower> copyListByStreamWithOptionalAndSkip(List<Flower> source) {
return Optional.ofNullable(source)
.map(List::stream)
.orElseGet(Stream::empty)
.skip(1)
.collect(Collectors.toList());
}
}
@@ -0,0 +1,28 @@
package com.baeldung.list;
public class Flower {
private String name;
private int petals;
public Flower(String name, int petals) {
this.name = name;
this.petals = petals;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPetals() {
return petals;
}
public void setPetals(int petals) {
this.petals = petals;
}
}
@@ -0,0 +1,19 @@
package com.baeldung.nullsafecollectionstreams;
import java.util.Collection;
import java.util.stream.Stream;
import static org.apache.commons.collections4.CollectionUtils.emptyIfNull;
public class NullSafeCollectionStreamsUsingCommonsEmptyIfNull {
/**
* This method shows how to make a null safe stream from a collection through the use of
* emptyIfNull() method from Apache Commons CollectionUtils library
*
* @param collection The collection that is to be converted into a stream
* @return The stream that has been created from the collection or an empty stream if the collection is null
*/
public Stream<String> collectionAsStream(Collection<String> collection) {
return emptyIfNull(collection).stream();
}
}
@@ -0,0 +1,21 @@
package com.baeldung.nullsafecollectionstreams;
import java.util.Collection;
import java.util.Optional;
import java.util.stream.Stream;
public class NullSafeCollectionStreamsUsingJava8OptionalContainer {
/**
* This method shows how to make a null safe stream from a collection through the use of
* Java SE 8s Optional Container
*
* @param collection The collection that is to be converted into a stream
* @return The stream that has been created from the collection or an empty stream if the collection is null
*/
public Stream<String> collectionAsStream(Collection<String> collection) {
return Optional.ofNullable(collection)
.map(Collection::stream)
.orElseGet(Stream::empty);
}
}
@@ -0,0 +1,20 @@
package com.baeldung.nullsafecollectionstreams;
import java.util.Collection;
import java.util.stream.Stream;
public class NullSafeCollectionStreamsUsingNullDereferenceCheck {
/**
* This method shows how to make a null safe stream from a collection through the use of a check
* to prevent null dereferences
*
* @param collection The collection that is to be converted into a stream
* @return The stream that has been created from the collection or an empty stream if the collection is null
*/
public Stream<String> collectionAsStream(Collection<String> collection) {
return collection == null ? Stream.empty() : collection.stream();
}
}
@@ -1,59 +0,0 @@
package com.baeldung.prime;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
public class PrimeGenerator {
public static List<Integer> sieveOfEratosthenes(int n) {
final boolean prime[] = new boolean[n + 1];
Arrays.fill(prime, true);
for (int p = 2; p * p <= n; p++) {
if (prime[p]) {
for (int i = p * 2; i <= n; i += p)
prime[i] = false;
}
}
final List<Integer> primes = new LinkedList<>();
for (int i = 2; i <= n; i++) {
if (prime[i])
primes.add(i);
}
return primes;
}
public static List<Integer> primeNumbersBruteForce(int max) {
final List<Integer> primeNumbers = new LinkedList<Integer>();
for (int i = 2; i <= max; i++) {
if (isPrimeBruteForce(i)) {
primeNumbers.add(i);
}
}
return primeNumbers;
}
private static boolean isPrimeBruteForce(int x) {
for (int i = 2; i < x; i++) {
if (x % i == 0) {
return false;
}
}
return true;
}
public static List<Integer> primeNumbersTill(int max) {
return IntStream.rangeClosed(2, max)
.filter(x -> isPrime(x))
.boxed()
.collect(Collectors.toList());
}
private static boolean isPrime(int x) {
return IntStream.rangeClosed(2, (int) (Math.sqrt(x)))
.allMatch(n -> x % n != 0);
}
}
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="STDOUT" />
</root>
</configuration>
@@ -0,0 +1,34 @@
package com.baeldung.datetime.modify;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class DateIncrementerUnitTest {
private final static String DATE_TO_INCREMENT = "2018-07-03";
private final static String EXPECTED_DATE = "2018-07-04";
@Test
public void givenDate_whenUsingJava8_thenAddOneDay() throws Exception {
String incrementedDate = DateIncrementer.addOneDay(DATE_TO_INCREMENT);
assertEquals(EXPECTED_DATE, incrementedDate);
}
@Test
public void givenDate_whenUsingJodaTime_thenAddOneDay() throws Exception {
String incrementedDate = DateIncrementer.addOneDayJodaTime(DATE_TO_INCREMENT);
assertEquals(EXPECTED_DATE, incrementedDate);
}
@Test
public void givenDate_whenUsingCalendar_thenAddOneDay() throws Exception {
String incrementedDate = DateIncrementer.addOneDayCalendar(DATE_TO_INCREMENT);
assertEquals(EXPECTED_DATE, incrementedDate);
}
@Test
public void givenDate_whenUsingApacheCommons_thenAddOneDay() throws Exception {
String incrementedDate = DateIncrementer.addOneDayApacheCommons(DATE_TO_INCREMENT);
assertEquals(EXPECTED_DATE, incrementedDate);
}
}
@@ -0,0 +1,87 @@
package com.baeldung.list;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import java.util.*;
import static org.junit.Assert.*;
public class AddElementsUnitTest {
List<Flower> flowers;
@Before
public void init() {
this.flowers = new ArrayList<>(Arrays.asList(
new Flower("Poppy", 12),
new Flower("Anemone", 8),
new Flower("Catmint", 12)));
}
@Test
public void givenAList_whenTargetListIsEmpty_thenReturnTargetListWithNewItems() {
List<Flower> anotherList = new ArrayList<>();
anotherList.addAll(flowers);
assertEquals(anotherList.size(), flowers.size());
Assert.assertTrue(anotherList.containsAll(flowers));
}
@Test
public void givenAList_whenTargetListIsEmpty_thenReturnTargetListWithOneModifiedElementByConstructor() {
List<Flower> anotherList = new ArrayList<>();
anotherList.addAll(flowers);
Flower flower = anotherList.get(0);
flower.setPetals(flowers.get(0).getPetals() * 3);
assertEquals(anotherList.size(), flowers.size());
Assert.assertTrue(anotherList.containsAll(flowers));
}
@Test
public void givenAListAndElements_whenUseCollectionsAddAll_thenAddElementsToTargetList() {
List<Flower> target = new ArrayList<>();
Collections.addAll(target, flowers.get(0), flowers.get(1), flowers.get(2), flowers.get(0));
assertEquals(target.size(), 4);
}
@Test
public void givenTwoList_whenSourceListDoesNotHaveNullElements_thenAddElementsToTargetListSkipFirstElementByStreamProcess() {
List<Flower> flowerVase = new ArrayList<>();
flowers.stream()
.skip(1)
.forEachOrdered(flowerVase::add);
assertEquals(flowerVase.size() + 1, flowers.size());
assertFalse(flowerVase.containsAll(flowers));
}
@Test
public void givenTwoList_whenSourceListDoesNotHaveNullElements_thenAddElementsToTargetListFilteringElementsByStreamProcess() {
List<Flower> flowerVase = new ArrayList<>();
flowers.stream()
.filter(f -> f.getPetals() > 10)
.forEachOrdered(flowerVase::add);
assertEquals(flowerVase.size() + 1, flowers.size());
assertFalse(flowerVase.containsAll(flowers));
}
@Test
public void givenAList_whenListIsNotNull_thenAddElementsToListByStreamProcessWihtOptional() {
List<Flower> target = new ArrayList<>();
Optional.ofNullable(flowers)
.ifPresent(target::addAll);
assertNotNull(target);
assertEquals(target.size(), 3);
}
}
@@ -0,0 +1,129 @@
package com.baeldung.list;
import org.junit.Before;
import org.junit.Test;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static org.junit.Assert.*;
public class CopyListServiceUnitTest {
List<Flower> flowers;
private CopyListService copyListService;
@Before
public void init() {
this.copyListService = new CopyListService();
this.flowers = new ArrayList<>();
Flower poppy = new Flower("Poppy", 12);
flowers.add(poppy);
Flower anemone = new Flower("Anemone", 8);
flowers.add(anemone);
Flower catmint = new Flower("Catmint", 12);
flowers.add(catmint);
Flower diascia = new Flower("Diascia", 5);
flowers.add(diascia);
Flower iris = new Flower("Iris", 3);
flowers.add(iris);
Flower pansy = new Flower("Pansy", 5);
flowers.add(pansy);
}
@Test
public void givenAList_whenListDoesNotHaveNullElements_thenReturnAnotherListWithTheSameElementsByConstructor() {
List<Flower> copy = copyListService.copyListByConstructor(flowers);
assertEquals(copy.size(), flowers.size());
assertTrue(copy.containsAll(flowers));
}
@Test
public void givenAList_whenListDoesNotHaveNullElements_thenReturnAnotherListWithOneModifiedElementByConstructor() {
List<Flower> copy = copyListService.copyListByConstructorAndEditOneFlowerInTheNewList(flowers);
assertEquals(copy.size(), flowers.size());
assertTrue(copy.containsAll(flowers));
}
@Test
public void givenAList_whenListDoesNotHaveNullElements_thenReturnAnotherListWithTheSameElementsByAddAllmethod() {
List<Flower> copy = copyListService.copyListByAddAllMethod(flowers);
assertEquals(copy.size(), flowers.size());
assertTrue(copy.containsAll(flowers));
}
@Test
public void givenAList_whenListDoesNotHaveNullElements_thenReturnAnotherListWithOneModifiedElementByAddAllmethod() {
List<Flower> copy = copyListService.copyListByAddAllMethodAndEditOneFlowerInTheNewList(flowers);
assertEquals(copy.size(), flowers.size());
assertTrue(copy.containsAll(flowers));
}
@Test
public void givenAList_whenListsHaveSameSize_thenReturnAnotherListWithTheSameElementsByCopyMethod() {
List<Integer> source = Arrays.asList(1,2,3);
List<Integer> dest = Arrays.asList(4,5,6);
dest = copyListService.copyListByCopyMethod(source, dest);
assertEquals(dest.size(), source.size());
assertTrue(dest.containsAll(source));
}
@Test
public void givenAList_whenListsHaveDifferentSize_thenReturnAnotherListWithTheSameElementsByCopyMethod() {
List<Integer> source = Arrays.asList(1,2,3);
List<Integer> dest = Arrays.asList(5,6,7,8,9,10);
dest = copyListService.copyListByCopyMethod(source, dest);
assertNotEquals(dest.size(), source.size());
assertTrue(dest.containsAll(source));
}
@Test
public void givenAList_whenListDoesNotHaveNullElements_thenReturnAnotherListWithTheSameElementsByStreamProcess() {
List<Flower> copy = copyListService.copyListByStream(flowers);
assertEquals(copy.size(), flowers.size());
assertTrue(copy.containsAll(flowers));
}
@Test
public void givenAList_whenListDoesNotHaveNullElements_thenReturnAnotherListWithOneElementLessByStreamProcess() {
List<Flower> copy = copyListService.copyListByStreamAndSkipFirstElement(flowers);
assertNotEquals(copy.size(), flowers.size());
assertEquals(copy.size() + 1, flowers.size());
assertFalse(copy.containsAll(flowers));
}
@Test
public void givenAList_whenListDoesNotHaveNullElements_thenReturnAnotherListWithFilterElementsByStreamProcess() {
List<Flower> copy = copyListService.copyListByStreamWithFilter(flowers, 5);
assertNotEquals(copy.size(), flowers.size());
assertEquals(copy.size() + 3, flowers.size());
assertFalse(copy.containsAll(flowers));
}
@Test
public void givenAList_whenListIsNull_thenReturnEmptyListByStreamProcess() {
List<Flower> copy = copyListService.copyListByStreamWithOptional(null);
assertNotNull(copy);
assertEquals(copy.size(), 0);
}
@Test
public void givenAList_whenListIsNotNull_thenReturnAnotherListWithTheElementsByStreamProcess() {
List<Flower> copy = copyListService.copyListByStreamWithOptional(flowers);
assertEquals(copy.size(), flowers.size());
assertTrue(copy.containsAll(flowers));
}
@Test
public void givenAList_whenListIsNotNull_thenReturnAnotherListWithOneElementLessByStreamProcess() {
List<Flower> copy = copyListService.copyListByStreamWithOptionalAndSkip(flowers);
assertNotEquals(copy.size(), flowers.size());
assertEquals(copy.size() + 1, flowers.size());
assertFalse(copy.containsAll(flowers));
}
}
@@ -0,0 +1,41 @@
package com.baeldung.nullsafecollectionstreams;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.stream.Stream;
import org.junit.Test;
import static org.junit.Assert.*;
public class NullSafeCollectionStreamsUsingCommonsEmptyIfNullUnitTest {
private final NullSafeCollectionStreamsUsingCommonsEmptyIfNull instance =
new NullSafeCollectionStreamsUsingCommonsEmptyIfNull();
@Test
public void whenCollectionIsNull_thenExpectAnEmptyStream() {
Collection<String> collection = null;
Stream<String> expResult = Stream.empty();
Stream<String> result = instance.collectionAsStream(collection);
assertStreamEquals(expResult, result);
}
@Test
public void whenCollectionHasElements_thenExpectAStreamOfExactlyTheSameElements() {
Collection<String> collection = Arrays.asList("a", "b", "c");
Stream<String> expResult = Arrays.stream(new String[] { "a", "b", "c" });
Stream<String> result = instance.collectionAsStream(collection);
assertStreamEquals(expResult, result);
}
private static void assertStreamEquals(Stream<?> s1, Stream<?> s2) {
Iterator<?> iter1 = s1.iterator(), iter2 = s2.iterator();
while (iter1.hasNext() && iter2.hasNext())
assertEquals(iter1.next(), iter2.next());
assert !iter1.hasNext() && !iter2.hasNext();
}
}
@@ -0,0 +1,53 @@
/*
* 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 com.baeldung.nullsafecollectionstreams;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.stream.Stream;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import static org.junit.Assert.*;
/**
*
* @author Kwaje Anthony <kwajeanthony@gmail.com>
*/
public class NullSafeCollectionStreamsUsingJava8OptionalContainerUnitTest {
private final NullSafeCollectionStreamsUsingJava8OptionalContainer instance =
new NullSafeCollectionStreamsUsingJava8OptionalContainer();
@Test
public void whenCollectionIsNull_thenExpectAnEmptyStream() {
Collection<String> collection = null;
Stream<String> expResult = Stream.empty();
Stream<String> result = instance.collectionAsStream(collection);
assertStreamEquals(expResult, result);
}
@Test
public void whenCollectionHasElements_thenExpectAStreamOfExactlyTheSameElements() {
Collection<String> collection = Arrays.asList("a", "b", "c");
Stream<String> expResult = Arrays.stream(new String[] { "a", "b", "c" });
Stream<String> result = instance.collectionAsStream(collection);
assertStreamEquals(expResult, result);
}
private static void assertStreamEquals(Stream<?> s1, Stream<?> s2) {
Iterator<?> iter1 = s1.iterator(), iter2 = s2.iterator();
while (iter1.hasNext() && iter2.hasNext())
assertEquals(iter1.next(), iter2.next());
assert !iter1.hasNext() && !iter2.hasNext();
}
}
@@ -0,0 +1,45 @@
package com.baeldung.nullsafecollectionstreams;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.stream.Stream;
import org.junit.Test;
import static org.junit.Assert.*;
/**
*
* @author Kwaje Anthony <kwajeanthony@gmail.com>
*/
public class NullSafeCollectionStreamsUsingNullDereferenceCheckUnitTest {
private final NullSafeCollectionStreamsUsingNullDereferenceCheck instance =
new NullSafeCollectionStreamsUsingNullDereferenceCheck();
@Test
public void whenCollectionIsNull_thenExpectAnEmptyStream() {
Collection<String> collection = null;
Stream<String> expResult = Stream.empty();
Stream<String> result = instance.collectionAsStream(collection);
assertStreamEquals(expResult, result);
}
@Test
public void whenCollectionHasElements_thenExpectAStreamOfExactlyTheSameElements() {
Collection<String> collection = Arrays.asList("a", "b", "c");
Stream<String> expResult = Arrays.stream(new String[] { "a", "b", "c" });
Stream<String> result = instance.collectionAsStream(collection);
assertStreamEquals(expResult, result);
}
private static void assertStreamEquals(Stream<?> s1, Stream<?> s2) {
Iterator<?> iter1 = s1.iterator(), iter2 = s2.iterator();
while (iter1.hasNext() && iter2.hasNext())
assertEquals(iter1.next(), iter2.next());
assert !iter1.hasNext() && !iter2.hasNext();
}
}
@@ -1,28 +0,0 @@
package com.baeldung.prime;
import static com.baeldung.prime.PrimeGenerator.*;
import java.util.Arrays;
import java.util.List;
import org.junit.Test;
import static org.junit.Assert.*;
public class PrimeGeneratorUnitTest {
@Test
public void whenBruteForced_returnsSuccessfully() {
final List<Integer> primeNumbers = primeNumbersBruteForce(20);
assertEquals(Arrays.asList(new Integer[] { 2, 3, 5, 7, 11, 13, 17, 19 }), primeNumbers);
}
@Test
public void whenOptimized_returnsSuccessfully() {
final List<Integer> primeNumbers = primeNumbersTill(20);
assertEquals(Arrays.asList(new Integer[] { 2, 3, 5, 7, 11, 13, 17, 19 }), primeNumbers);
}
@Test
public void whenSieveOfEratosthenes_returnsSuccessfully() {
final List<Integer> primeNumbers = sieveOfEratosthenes(20);
assertEquals(Arrays.asList(new Integer[] { 2, 3, 5, 7, 11, 13, 17, 19 }), primeNumbers);
}
}
@@ -1,6 +1,7 @@
package com.baeldung.util;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import java.time.Clock;
import java.time.Instant;
@@ -9,6 +10,8 @@ import java.time.LocalTime;
import java.time.ZoneId;
import java.time.temporal.ChronoField;
import org.joda.time.DateTime;
import org.joda.time.DateTimeUtils;
import org.junit.Test;
public class CurrentDateTimeUnitTest {
@@ -39,5 +42,4 @@ public class CurrentDateTimeUnitTest {
assertEquals(clock.instant().getEpochSecond(), now.getEpochSecond());
}
}