diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 23d629f3..797ddafa 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,52 +8,55 @@ on: pull_request: branches: - master -# Jobs jobs: test: - name: Run tests and publish test coverage + name: Test on Java ${{ matrix.java-version }} runs-on: ubuntu-latest + strategy: + matrix: + java-version: [11, 17, 21] steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v4 - - name: Set up Java JDK - uses: actions/setup-java@v2 + - name: Set up Java JDK ${{ matrix.java-version }} + uses: actions/setup-java@v4 with: - java-version: 8 - distribution: 'adopt' - + java-version: ${{ matrix.java-version }} + distribution: 'temurin' + - name: Install dependencies run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V -Dgpg.skip - + - name: Run tests and collect coverage - run: mvn -B test + run: mvn -B test - name: Upload coverage to Codecov - uses: codecov/codecov-action@v3 + if: matrix.java-version == 21 + uses: codecov/codecov-action@v4 with: fail_ci_if_error: false verbose: true - + publish: if: startsWith(github.ref, 'refs/tags/v') needs: test runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up Maven Central Repository - uses: actions/setup-java@v2 + uses: actions/setup-java@v4 with: - java-version: 8 - distribution: 'adopt' + java-version: 11 + distribution: 'temurin' server-id: ossrh server-username: MAVEN_USERNAME server-password: MAVEN_PASSWORD gpg-private-key: ${{ secrets.OSSRH_GPG_SECRET_KEY }} - + - name: Build with Maven run: mvn clean package -B - + - name: Publish package run: | mvn deploy -Dgpg.passphrase=${{ secrets.MAVEN_GPG_PASSPHRASE }} diff --git a/pom.xml b/pom.xml index 61d95118..c015e928 100644 --- a/pom.xml +++ b/pom.xml @@ -36,8 +36,8 @@ UTF-8 - 1.8 - 1.8 + 11 + 11 @@ -53,8 +53,8 @@ org.mockito - mockito-inline - 2.13.0 + mockito-core + 5.23.0 test @@ -68,31 +68,31 @@ com.squareup.okhttp3 okhttp - 3.10.0 + 4.12.0 com.squareup.okhttp3 logging-interceptor - 3.10.0 + 4.12.0 org.json json - 20231013 + 20240303 commons-codec commons-codec - 1.11 + 1.17.1 org.apache.commons commons-text - 1.3 + 1.12.0 diff --git a/src/test/java/com/razorpay/BaseTest.java b/src/test/java/com/razorpay/BaseTest.java index fde9918f..1f8ce102 100644 --- a/src/test/java/com/razorpay/BaseTest.java +++ b/src/test/java/com/razorpay/BaseTest.java @@ -16,7 +16,7 @@ import java.util.Map; import static org.junit.Assert.assertEquals; -import static org.mockito.ArgumentMatchers.anyObject; +import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -30,7 +30,7 @@ public class BaseTest { @Before public void setUp() throws Exception { - MockitoAnnotations.initMocks(this); + MockitoAnnotations.openMocks(this); mockGetCall(); mockURL(Collections.emptyList()); } @@ -44,7 +44,7 @@ private void mockGetCall() throws IOException, IllegalAccessException { Call call = mock(Call.class); when(call.execute()).thenReturn(mockedResponse); - when(okHttpClient.newCall(anyObject())).thenReturn(call); + when(okHttpClient.newCall(any())).thenReturn(call); }