spec(skeb/role): Skeb募集中のクリエイターに自動でロールが付与されるように・バッジから募集状態の確認ができるように (MisskeyIO#593)

This commit is contained in:
まっちゃとーにゅ 2024-04-01 20:12:15 +09:00 committed by GitHub
parent 31ebd77e8a
commit 95838a036e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
29 changed files with 323 additions and 44 deletions

View file

@ -467,6 +467,7 @@ describe('Note', () => {
isPublic: false,
isExplorable: false,
asBadge: false,
badgeBehavior: null,
canEditMembersByModerator: false,
policies: {
alwaysMarkNsfw: {
@ -780,6 +781,7 @@ describe('Note', () => {
isPublic: false,
isExplorable: false,
asBadge: false,
badgeBehavior: null,
canEditMembersByModerator: false,
policies: {
mentionLimit: {
@ -834,6 +836,7 @@ describe('Note', () => {
isPublic: false,
isExplorable: false,
asBadge: false,
badgeBehavior: null,
canEditMembersByModerator: false,
policies: {
mentionLimit: {
@ -890,6 +893,7 @@ describe('Note', () => {
isPublic: false,
isExplorable: false,
asBadge: false,
badgeBehavior: null,
canEditMembersByModerator: false,
policies: {
mentionLimit: {

View file

@ -651,11 +651,20 @@ describe('ユーザー', () => {
});
test('を取得することができ、バッヂロールがセットされていること', async () => {
const response = await successfulApiCall({ endpoint: 'users/show', parameters: { userId: userRoleBadge.id }, user: alice });
assert.deepStrictEqual(response.badgeRoles, [{
name: roleBadge.name,
iconUrl: roleBadge.iconUrl,
displayOrder: roleBadge.displayOrder,
}]);
if (roleBadge.badgeBehavior) {
assert.deepStrictEqual(response.badgeRoles, [{
name: roleBadge.name,
iconUrl: roleBadge.iconUrl,
displayOrder: roleBadge.displayOrder,
behavior: roleBadge.badgeBehavior,
}]);
} else {
assert.deepStrictEqual(response.badgeRoles, [{
name: roleBadge.name,
iconUrl: roleBadge.iconUrl,
displayOrder: roleBadge.displayOrder,
}]);
}
assert.deepStrictEqual(response.roles, []); // バッヂだからといってrolesが取れるとは限らない
});
test('をID指定のリスト形式で取得することができる', async () => {

View file

@ -251,6 +251,7 @@ export const channel = async (user: UserToken, channel: Partial<misskey.entities
export const role = async (user: UserToken, role: Partial<misskey.entities.Role> = {}, policies: any = {}): Promise<misskey.entities.Role> => {
const res = await api('admin/roles/create', {
asBadge: false,
badgeBehavior: null,
canEditMembersByModerator: false,
color: null,
condFormula: {