diff --git a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/staticmodifier/Car.java b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/staticmodifier/Car.java index 950f008dcd..1158851fbd 100644 --- a/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/staticmodifier/Car.java +++ b/core-java-modules/core-java-lang-oop-modifiers/src/main/java/com/baeldung/staticmodifier/Car.java @@ -42,6 +42,10 @@ public class Car { this.engine = engine; } + public static String getCarsInformation(Car car) { + return car.getName() + "-" + car.getEngine(); + } + public static void setNumberOfCars(int numberOfCars) { Car.numberOfCars = numberOfCars; } diff --git a/core-java-modules/core-java-lang-oop-modifiers/src/test/java/com/baeldung/staticmethod/CallNonStaticMethodUnitTest.java b/core-java-modules/core-java-lang-oop-modifiers/src/test/java/com/baeldung/staticmethod/CallNonStaticMethodUnitTest.java new file mode 100644 index 0000000000..1171cb2e7a --- /dev/null +++ b/core-java-modules/core-java-lang-oop-modifiers/src/test/java/com/baeldung/staticmethod/CallNonStaticMethodUnitTest.java @@ -0,0 +1,21 @@ +package com.baeldung.staticmethod; + +import static org.junit.Assert.assertEquals; + +import org.junit.AfterClass; +import org.junit.Test; + +import com.baeldung.staticmodifier.Car; + +public class CallNonStaticMethodUnitTest { + @AfterClass + public static void setUpCarInstance() { + Car.setNumberOfCars(0); + } + @Test + public void whenCallingNonStaticMethodInStaticMethodWithInstanceClass_thenSuccess() { + Car car = new Car("Jaguar", "V8"); + assertEquals("Jaguar-V8", Car.getCarsInformation(car)); + } + +} diff --git a/core-java-modules/core-java-lang-oop-modifiers/src/test/java/com/baeldung/staticmodifier/CarUnitTest.java b/core-java-modules/core-java-lang-oop-modifiers/src/test/java/com/baeldung/staticmodifier/CarUnitTest.java index f55955caa8..68bbe8f0a2 100644 --- a/core-java-modules/core-java-lang-oop-modifiers/src/test/java/com/baeldung/staticmodifier/CarUnitTest.java +++ b/core-java-modules/core-java-lang-oop-modifiers/src/test/java/com/baeldung/staticmodifier/CarUnitTest.java @@ -2,9 +2,16 @@ package com.baeldung.staticmodifier; import static org.junit.Assert.*; +import org.junit.AfterClass; import org.junit.Test; public class CarUnitTest { + + @AfterClass + public static void setUpCarInstance() { + Car.setNumberOfCars(0); + } + @Test public void whenNumberOfCarObjectsInitialized_thenStaticCounterIncreases() { new Car("Jaguar", "V8");