/NYTimesMostPopular

A sample android app written in Kotlin using mvp-architecture that displays list of NYTimes news items.

Primary LanguageKotlin

NY Times Most Popular

NY Times Most Popular show as list of articles and its details when items on the list are tapped.

Tech

  • MVP pattern used.
  • Dagger, Retrofit, RxJava, Timber, Glide are used.
  • Android X and Kotlin extension are used.
  • JUnit and espresso are used for normal and connected test cases.

Build the project from the command-line

$ git clone git@github.com:gobinda99/NYTimesMostPopular.git
$ cd NYTimesMostPopular
$ ./gradlew clean assembleDebug

Run static code analysis such as linting. The result will generate on path "app/build/reports/lint-results.html"

$ ./gradlew clean lint

Run unit tests.

$ ./gradlew clean test

Run Connected Android Test. Make sure mobile device or emulator connected to machine.

$ ./gradlew clean connectedAndroidTest

All Tasks in a single command line. The reports and apk will generate in "app/build/*" repository.

$ ./gradlew clean test connectedAndroidTest lint assembleDebug

Run SonarQube from command line to generate report.

$ ./gradlew sonarqube \
       -Dsonar.projectKey=gobinda99_NYTimesMostPopular \
       -Dsonar.organization=gobinda99-github \
       -Dsonar.host.url=https://sonarcloud.io \
       -Dsonar.login=53935205a45f1b78679ae5e986eaa76d334bf2d9

Here is the link to see SonacQube Report of the project.