SessionMixinTest.kt 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /*
  2. * Nextcloud - Android Client
  3. *
  4. * SPDX-FileCopyrightText: 2020 Chris Narkiewicz <hello@ezaquarii.com>
  5. * SPDX-FileCopyrightText: 2020 Nextcloud GmbH
  6. * SPDX-License-Identifier: AGPL-3.0-or-later OR GPL-2.0-only
  7. */
  8. package com.nextcloud.client.mixins
  9. import android.app.Activity
  10. import com.nextcloud.client.account.UserAccountManager
  11. import org.junit.Before
  12. import org.junit.Test
  13. import org.mockito.Mock
  14. import org.mockito.Mockito.same
  15. import org.mockito.Mockito.spy
  16. import org.mockito.MockitoAnnotations
  17. import org.mockito.kotlin.verify
  18. class SessionMixinTest {
  19. @Mock
  20. private lateinit var activity: Activity
  21. @Mock
  22. private lateinit var userAccountManager: UserAccountManager
  23. private lateinit var session: SessionMixin
  24. @Before
  25. fun setUp() {
  26. MockitoAnnotations.initMocks(this)
  27. session = spy(
  28. SessionMixin(
  29. activity,
  30. userAccountManager
  31. )
  32. )
  33. }
  34. @Test
  35. fun `start account creation`() {
  36. // WHEN
  37. // start account creation flow
  38. session.startAccountCreation()
  39. // THEN
  40. // start is delegated to account manager
  41. // account manager receives parent activity
  42. verify(userAccountManager).startAccountCreation(same(activity))
  43. }
  44. }