1
0
Fork 0
mirror of https://github.com/anyproto/anytype-kotlin.git synced 2025-06-11 10:18:05 +09:00

Feature/session based config provider (#735)

This commit is contained in:
Evgenii Kozlov 2020-08-26 17:39:40 +03:00 committed by GitHub
parent f07c93dade
commit 5d4ed0df46
Signed by: github
GPG key ID: 4AEE18F83AFDEB23
20 changed files with 127 additions and 276 deletions

View file

@ -2,15 +2,10 @@ package com.agileburo.anytype.presentation.home
import MockDataFactory
import com.agileburo.anytype.domain.block.model.Block
import com.agileburo.anytype.domain.config.Config
import com.agileburo.anytype.domain.config.Gateway
import com.agileburo.anytype.domain.dashboard.model.HomeDashboard
import com.agileburo.anytype.domain.misc.UrlBuilder
import com.agileburo.anytype.emojifier.Emojifier
import com.agileburo.anytype.presentation.desktop.DashboardView
import com.agileburo.anytype.presentation.mapper.toView
import com.nhaarman.mockitokotlin2.any
import com.nhaarman.mockitokotlin2.doReturn
import com.nhaarman.mockitokotlin2.stub
import kotlinx.coroutines.runBlocking
import org.junit.Before
import org.junit.Test
@ -21,15 +16,9 @@ import kotlin.test.assertEquals
class HomeDashboardViewMapperTest {
@Mock
lateinit var emojifier: Emojifier
lateinit var gateway: Gateway
val builder = UrlBuilder(
config = Config(
home = MockDataFactory.randomUuid(),
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
private val builder: UrlBuilder get() = UrlBuilder(gateway)
@Before
fun setup() {

View file

@ -7,10 +7,7 @@ import com.agileburo.anytype.domain.auth.model.Account
import com.agileburo.anytype.domain.base.Either
import com.agileburo.anytype.domain.block.interactor.Move
import com.agileburo.anytype.domain.block.model.Block
import com.agileburo.anytype.domain.config.Config
import com.agileburo.anytype.domain.config.DebugSettings
import com.agileburo.anytype.domain.config.GetConfig
import com.agileburo.anytype.domain.config.GetDebugSettings
import com.agileburo.anytype.domain.config.*
import com.agileburo.anytype.domain.dashboard.interactor.CloseDashboard
import com.agileburo.anytype.domain.dashboard.interactor.OpenDashboard
import com.agileburo.anytype.domain.dashboard.interactor.toHomeDashboard
@ -72,15 +69,18 @@ class HomeDashboardViewModelTest {
@Mock
lateinit var move: Move
@Mock
lateinit var gateway: Gateway
private lateinit var vm: HomeDashboardViewModel
val config = Config(
private val config = Config(
home = MockDataFactory.randomUuid(),
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
val builder = UrlBuilder(config)
private val builder: UrlBuilder get() = UrlBuilder(gateway)
@Before
fun setup() {

View file

@ -2,24 +2,22 @@ package com.agileburo.anytype.presentation.mapper
import MockDataFactory
import com.agileburo.anytype.domain.block.model.Block
import com.agileburo.anytype.domain.config.Config
import com.agileburo.anytype.domain.config.Gateway
import com.agileburo.anytype.domain.dashboard.model.HomeDashboard
import com.agileburo.anytype.domain.misc.UrlBuilder
import kotlinx.coroutines.runBlocking
import org.junit.Before
import org.junit.Test
import org.mockito.Mock
import org.mockito.MockitoAnnotations
import kotlin.test.assertTrue
class HomeDashboardViewMapperTest {
val config = Config(
home = MockDataFactory.randomUuid(),
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
@Mock
lateinit var gateway: Gateway
val builder = UrlBuilder(config)
private val builder: UrlBuilder get() = UrlBuilder(gateway)
@Before
fun setup() {

View file

@ -3,25 +3,31 @@ package com.agileburo.anytype.presentation.mapper
import MockDataFactory
import com.agileburo.anytype.core_ui.features.page.BlockView
import com.agileburo.anytype.domain.block.model.Block
import com.agileburo.anytype.domain.config.Config
import com.agileburo.anytype.domain.config.Gateway
import com.agileburo.anytype.domain.misc.UrlBuilder
import org.junit.Before
import org.junit.Test
import org.mockito.Mock
import org.mockito.MockitoAnnotations
import kotlin.test.assertEquals
class MapperExtensionKtTest {
@Mock
lateinit var gateway : Gateway
private val urlBuilder: UrlBuilder get() = UrlBuilder(gateway)
@Before
fun before() {
MockitoAnnotations.initMocks(this)
}
@Test
fun `should return file block view`() {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val name = "name"
@ -62,13 +68,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.EMPTY
@ -78,7 +77,6 @@ class MapperExtensionKtTest {
val block = Block.Content.File(
state = state,
type = type
)
val expected = BlockView.MediaPlaceholder.File(id = id, indent = indent)
@ -92,14 +90,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.ERROR
@ -123,14 +113,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.UPLOADING
@ -153,14 +135,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val name = "name"
@ -201,13 +175,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.EMPTY
@ -231,14 +198,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.ERROR
@ -266,14 +225,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.UPLOADING
@ -296,13 +247,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val name = "name"
@ -342,14 +286,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.DONE
@ -386,14 +322,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.EMPTY
@ -424,14 +352,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.UPLOADING
@ -462,14 +382,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val state = Block.Content.File.State.ERROR
@ -500,14 +412,6 @@ class MapperExtensionKtTest {
val id = MockDataFactory.randomUuid()
val config = Config(
home = "home",
gateway = "gateway",
profile = "profile"
)
val urlBuilder = UrlBuilder(config = config)
val indent = MockDataFactory.randomInt()
val type = Block.Content.File.Type.VIDEO

View file

@ -6,7 +6,7 @@ import com.agileburo.anytype.core_ui.features.page.BlockView
import com.agileburo.anytype.core_utils.tools.Counter
import com.agileburo.anytype.domain.block.model.Block
import com.agileburo.anytype.domain.common.Id
import com.agileburo.anytype.domain.config.Config
import com.agileburo.anytype.domain.config.Gateway
import com.agileburo.anytype.domain.editor.Editor
import com.agileburo.anytype.domain.ext.asMap
import com.agileburo.anytype.domain.ext.content
@ -47,13 +47,10 @@ class DefaultBlockViewRendererTest {
@Mock
lateinit var toggleStateHolder: ToggleStateHolder
private lateinit var renderer: DefaultBlockViewRenderer
@Mock
lateinit var gateway: Gateway
private val config = Config(
home = MockDataFactory.randomUuid(),
gateway = MockDataFactory.randomString(),
profile = MockDataFactory.randomUuid()
)
private lateinit var renderer: DefaultBlockViewRenderer
private lateinit var wrapper: BlockViewRenderWrapper
@ -61,7 +58,7 @@ class DefaultBlockViewRendererTest {
fun setup() {
MockitoAnnotations.initMocks(this)
renderer = DefaultBlockViewRenderer(
urlBuilder = UrlBuilder(config),
urlBuilder = UrlBuilder(gateway),
toggleStateHolder = toggleStateHolder,
counter = Counter.Default()
)
@ -461,7 +458,7 @@ class DefaultBlockViewRendererTest {
id = page.id,
isFocused = false,
text = name,
image = UrlBuilder(config).thumbnail(imageName)
image = UrlBuilder(gateway).thumbnail(imageName)
),
BlockView.Text.Paragraph(
isFocused = true,
@ -534,7 +531,7 @@ class DefaultBlockViewRendererTest {
id = page.id,
isFocused = false,
text = name,
image = UrlBuilder(config).thumbnail(imageName)
image = UrlBuilder(gateway).thumbnail(imageName)
),
BlockView.Text.Paragraph(
isFocused = true,
@ -606,7 +603,7 @@ class DefaultBlockViewRendererTest {
id = page.id,
isFocused = false,
text = name,
image = UrlBuilder(config).thumbnail(imageName)
image = UrlBuilder(gateway).thumbnail(imageName)
),
BlockView.Text.Paragraph(
isFocused = true,

View file

@ -15,7 +15,7 @@ import com.agileburo.anytype.domain.block.model.Position
import com.agileburo.anytype.domain.clipboard.Copy
import com.agileburo.anytype.domain.clipboard.Paste
import com.agileburo.anytype.domain.common.Id
import com.agileburo.anytype.domain.config.Config
import com.agileburo.anytype.domain.config.Gateway
import com.agileburo.anytype.domain.download.DownloadFile
import com.agileburo.anytype.domain.event.interactor.InterceptEvents
import com.agileburo.anytype.domain.event.model.Event
@ -152,11 +152,17 @@ class PageViewModelTest {
@Mock
lateinit var turnIntoDocument: TurnIntoDocument
@Mock
lateinit var gateway : Gateway
private lateinit var vm: PageViewModel
private lateinit var builder: UrlBuilder
@Before
fun setup() {
MockitoAnnotations.initMocks(this)
builder = UrlBuilder(gateway)
}
@Test
@ -188,14 +194,6 @@ class PageViewModelTest {
val root = MockDataFactory.randomUuid()
val child = MockDataFactory.randomUuid()
val builder = UrlBuilder(
config = Config(
home = root,
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
val paragraph = Block(
id = child,
fields = Block.Fields(emptyMap()),
@ -371,14 +369,6 @@ class PageViewModelTest {
val root = MockDataFactory.randomUuid()
val child = MockDataFactory.randomUuid()
val builder = UrlBuilder(
config = Config(
home = root,
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
val paragraph = Block(
id = child,
fields = Block.Fields(emptyMap()),
@ -534,14 +524,6 @@ class PageViewModelTest {
val root = MockDataFactory.randomUuid()
val child = MockDataFactory.randomUuid()
val builder = UrlBuilder(
config = Config(
home = root,
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
val paragraph = Block(
id = child,
fields = Block.Fields(emptyMap()),
@ -645,14 +627,6 @@ class PageViewModelTest {
val root = MockDataFactory.randomUuid()
val child = MockDataFactory.randomUuid()
val builder = UrlBuilder(
config = Config(
home = root,
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
val paragraph = Block(
id = child,
fields = Block.Fields(emptyMap()),
@ -799,14 +773,6 @@ class PageViewModelTest {
val root = MockDataFactory.randomUuid()
val child = MockDataFactory.randomUuid()
val builder = UrlBuilder(
config = Config(
home = root,
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
val paragraph = Block(
id = child,
fields = Block.Fields(emptyMap()),
@ -1038,14 +1004,6 @@ class PageViewModelTest {
val root = MockDataFactory.randomUuid()
val child = MockDataFactory.randomUuid()
val builder = UrlBuilder(
config = Config(
home = root,
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
val paragraph = Block(
id = child,
fields = Block.Fields(emptyMap()),
@ -1417,14 +1375,6 @@ class PageViewModelTest {
children = listOf(child)
)
val builder = UrlBuilder(
config = Config(
home = root,
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
val style = Block.Content.Text.Style.H1
val new = Block(
@ -1685,14 +1635,6 @@ class PageViewModelTest {
secondChild = secondChild
)
val builder = UrlBuilder(
config = Config(
home = root,
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
val events: Flow<List<Event.Command>> = flow {
delay(pageOpenedDelay)
emit(
@ -2924,14 +2866,6 @@ class PageViewModelTest {
)
}
val builder = UrlBuilder(
config = Config(
home = MockDataFactory.randomUuid(),
gateway = MockDataFactory.randomString(),
profile = MockDataFactory.randomUuid()
)
)
stubObserveEvents(flow)
stubOpenPage()
buildViewModel(builder)
@ -4301,15 +4235,7 @@ class PageViewModelTest {
}
}
private fun buildViewModel(
urlBuilder: UrlBuilder = UrlBuilder(
config = Config(
home = MockDataFactory.randomUuid(),
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
) {
private fun buildViewModel(urlBuilder: UrlBuilder = builder) {
val storage = Editor.Storage()
val proxies = Editor.Proxer()

View file

@ -9,7 +9,7 @@ import com.agileburo.anytype.domain.block.model.Block
import com.agileburo.anytype.domain.clipboard.Copy
import com.agileburo.anytype.domain.clipboard.Paste
import com.agileburo.anytype.domain.common.Id
import com.agileburo.anytype.domain.config.Config
import com.agileburo.anytype.domain.config.Gateway
import com.agileburo.anytype.domain.download.DownloadFile
import com.agileburo.anytype.domain.event.interactor.InterceptEvents
import com.agileburo.anytype.domain.event.model.Event
@ -128,15 +128,12 @@ open class EditorPresentationTestSetup {
@Mock
lateinit var turnIntoDocument: TurnIntoDocument
open fun buildViewModel(
urlBuilder: UrlBuilder = UrlBuilder(
config = Config(
home = MockDataFactory.randomUuid(),
gateway = MockDataFactory.randomUuid(),
profile = MockDataFactory.randomUuid()
)
)
): PageViewModel {
@Mock
lateinit var gateway : Gateway
private val builder: UrlBuilder get() = UrlBuilder(gateway)
open fun buildViewModel(urlBuilder: UrlBuilder = builder): PageViewModel {
val storage = Editor.Storage()
val proxies = Editor.Proxer()