일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- kotlin
- 카드내역 공유
- moveToState
- android clean architecture
- List
- Koin
- nvidia-docker
- 작성
- todofication
- fragment
- onViewCreated
- andorid
- Android
- 안드로이드 클린 아키텍쳐
- RX
- compileKotlin FAILED
- 뷰 상태복구
- 카드 내역 공유 앱
- 특가촌
- 타이머앱
- 대학톡
- 뷰 상태 저장
- Quickly
- java.lang.OutOfMemoryError: Java heap space
- 올인원타이머
- 특가게시판
- 안드로이드
- recyclerview
- RxJava
- 특가알람
- Today
- Total
목록RX (2)
seoft
사이드 프로젝트 진행 중 간단하게 Repository 대상의 테스트가 진행되면 좋을 것 같아 진행하였고, 관련해서 기술합니다. 단순히 최근검색어를 로컬로 get, add, clear 하는 로직을 테스트하기위해 필요한 부분중 핵심적인 일부 코드만 모았습니다. 먼저 유닛테스트와 디펜던시가 없는 실 프로젝트 구성 중 koin 인잭션이 있는 코드들을 기술합니다. SettingRepository.kt DataSource와 Preference 주입도 내부적으로 포함되있으나 해당 코드들은 생략하고 unit test로 사용하지 않는 코드들도 생략합니다. ResultModule.kt 실제 프로젝트 구성에서 전반적인 di를 구성합니다, 해당 예제에서는 repositoryModule, localModule 만 관여되며, S..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/1jUia/btqFCpT0Wya/mPkhpMeKXRAg0azgIlNvsk/img.png)
concatMapEager는 기존 concatMap 역할에서 스트림이 병렬로 처리된다는 특징을 가지고 있다. 그렇기 때문에 동시성과 함께 순서가 보장되어야 될 경우 concatMapEager 연산자를 사용하면 된다. 여러 api host로부터 값을 받오는 즉시 처리하되, 순서를 보장해야되는게 요구사항이라고 가정을 해본다. request함수를 사전 정의 하였는데 각 url에 따른 randome 시간 후에 response가 오는 상황으로 가정하고 해당 함수를 거쳐 Single로 반환된다. url string 리스트를 개별 flowable로 반환하여 concatMapEager내에서 하나씩 태우게 되고 반환된 Single 결과값을 flowable으로 변환에 스트림을 진행한다. string리스트의 순서와 동일하게..