feat: フォロー承認制ユーザーかの情報をActivityPub側でも持たせるように

This commit is contained in:
2023-12-12 01:32:55 +09:00
parent 6b535a042a
commit fe74d1e30b
26 changed files with 98 additions and 63 deletions
@@ -59,7 +59,8 @@ class ActorAPControllerImplTest {
),
endpoints = mapOf("sharedInbox" to "https://example.com/inbox"),
followers = "https://example.com/users/hoge/followers",
following = "https://example.com/users/hoge/following"
following = "https://example.com/users/hoge/following",
manuallyApprovesFollowers = false
)
whenever(apUserService.getPersonByName(eq("hoge"))).doReturn(person)
@@ -133,6 +133,7 @@ class APNoteServiceImplTest {
endpoints = mapOf("sharedInbox" to "https://example.com/inbox"),
followers = user.followers,
following = user.following,
manuallyApprovesFollowers = false
)
val apUserService = mock<APUserService> {
@@ -79,7 +79,8 @@ class ActorServiceTest {
keyId = "a",
following = "",
followers = "",
sharedInbox = null
sharedInbox = null,
locked = false
)
userService.createRemoteUser(user)
verify(actorRepository, times(1)).save(any())
@@ -1,8 +1,8 @@
package dev.usbharu.hideout.mastodon.interfaces.api.account
import dev.usbharu.hideout.application.config.ActivityPubConfig
import dev.usbharu.hideout.domain.mastodon.model.generated.AccountSource
import dev.usbharu.hideout.domain.mastodon.model.generated.CredentialAccount
import dev.usbharu.hideout.domain.mastodon.model.generated.CredentialAccountSource
import dev.usbharu.hideout.domain.mastodon.model.generated.Role
import dev.usbharu.hideout.mastodon.service.account.AccountApiService
import kotlinx.coroutines.test.runTest
@@ -74,10 +74,10 @@ class MastodonAccountApiControllerTest {
lastStatusAt = "",
statusesCount = 0,
followersCount = 0,
source = CredentialAccountSource(
source = AccountSource(
note = "",
fields = emptyList(),
privacy = CredentialAccountSource.Privacy.public,
privacy = AccountSource.Privacy.public,
sensitive = false,
followRequestsCount = 0
),
@@ -4,6 +4,7 @@ import dev.usbharu.hideout.application.external.Transaction
import dev.usbharu.hideout.core.domain.model.actor.ActorRepository
import dev.usbharu.hideout.core.domain.model.relationship.RelationshipRepository
import dev.usbharu.hideout.core.query.FollowerQueryService
import dev.usbharu.hideout.core.service.media.MediaService
import dev.usbharu.hideout.core.service.relationship.RelationshipService
import dev.usbharu.hideout.core.service.user.UserService
import dev.usbharu.hideout.domain.mastodon.model.generated.Account
@@ -48,6 +49,9 @@ class AccountApiServiceImplTest {
@Mock
private lateinit var relationshipRepository: RelationshipRepository
@Mock
private lateinit var mediaService: MediaService
@InjectMocks
private lateinit var accountApiServiceImpl: AccountApiServiceImpl
+4 -3
View File
@@ -19,7 +19,6 @@ object UserBuilder {
domain: String = "example.com",
screenName: String = name,
description: String = "This user is test user.",
password: String = "password-$id",
inbox: String = "https://$domain/users/$id/inbox",
outbox: String = "https://$domain/users/$id/outbox",
url: String = "https://$domain/users/$id",
@@ -44,7 +43,8 @@ object UserBuilder {
createdAt = createdAt,
keyId = keyId,
followers = followers,
following = following
following = following,
locked = false
)
}
@@ -77,7 +77,8 @@ object UserBuilder {
createdAt = createdAt,
keyId = keyId,
followers = followers,
following = following
following = following,
locked = false
)
}