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:
parent
f07c93dade
commit
5d4ed0df46
20 changed files with 127 additions and 276 deletions
|
@ -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() {
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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()
|
||||
|
|
|
@ -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()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue