As per my understanding the requirement is - make three different requests and print the result after applying the business logic.
- 10thCharacterRequest: Grabs the content from https://developer.android.com/guide/platform and finds the 10th character and displays.
- Every10thCharacterRequest: Grabs the content from https://developer.android.com/guide/platform and finds every 10th character (i.e. 10th, 20th, 30th, etc.) In this case I have not removed the white characters as I see it is emphasised in case 3 but not here. Thus, I assumed that we need to display the white spaces as well
- WordCounterRequest: It Grabs the content from https://developer.android.com/guide/platform and displays the count of each word after splits into words by removing whitespace characters.
It is developed using MVVM clean architecture. It uses repository pattern to fetch the data from server. As the app is being developed from the scratch, I decided to modularize it.
View are being tested by Instrumentation Tests For testing UseCases, Repository and ViewModels UNIT tests are written
- Kotlin
- Retrofit
- RxJava
- Koin
- JUnit
- Espresso
- Mockito
- Jsoup
- Jetpack library
- Material design