From ff0416ee839ba64f413ae57b553581b4ee0e446f Mon Sep 17 00:00:00 2001 From: usbharu <64310155+usbharu@users.noreply.github.com> Date: Sun, 19 Nov 2023 13:25:47 +0900 Subject: [PATCH 1/2] =?UTF-8?q?feat:=20DB=E3=81=AE=E3=83=9E=E3=82=A4?= =?UTF-8?q?=E3=82=B0=E3=83=AC=E3=83=BC=E3=82=B7=E3=83=A7=E3=83=B3=E3=82=92?= =?UTF-8?q?Flyway=E3=81=A7=E8=A1=8C=E3=81=86=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 1 + .../exposedrepository/PostRepositoryImpl.kt | 10 +- src/main/resources/application.yml | 5 +- .../resources/db/migration/V1__Init_DB.sql | 188 ++++++++++++++++++ 4 files changed, 195 insertions(+), 9 deletions(-) create mode 100644 src/main/resources/db/migration/V1__Init_DB.sql diff --git a/build.gradle.kts b/build.gradle.kts index b0347c0b..b5f5cb83 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -182,6 +182,7 @@ dependencies { implementation("org.apache.tika:tika-core:2.9.1") implementation("net.coobird:thumbnailator:0.4.20") implementation("org.bytedeco:javacv-platform:1.5.9") + implementation("org.flywaydb:flyway-core") implementation("io.ktor:ktor-client-logging-jvm:$ktor_version") diff --git a/src/main/kotlin/dev/usbharu/hideout/core/infrastructure/exposedrepository/PostRepositoryImpl.kt b/src/main/kotlin/dev/usbharu/hideout/core/infrastructure/exposedrepository/PostRepositoryImpl.kt index a7f8c065..1de54ad8 100644 --- a/src/main/kotlin/dev/usbharu/hideout/core/infrastructure/exposedrepository/PostRepositoryImpl.kt +++ b/src/main/kotlin/dev/usbharu/hideout/core/infrastructure/exposedrepository/PostRepositoryImpl.kt @@ -75,20 +75,20 @@ class PostRepositoryImpl( object Posts : Table() { val id: Column = long("id") - val userId: Column = long("userId").references(Users.id) + val userId: Column = long("user_id").references(Users.id) val overview: Column = varchar("overview", 100).nullable() val text: Column = varchar("text", 3000) - val createdAt: Column = long("createdAt") + val createdAt: Column = long("created_at") val visibility: Column = integer("visibility").default(0) val url: Column = varchar("url", 500) - val repostId: Column = long("repostId").references(id).nullable() - val replyId: Column = long("replyId").references(id).nullable() + val repostId: Column = long("repost_id").references(id).nullable() + val replyId: Column = long("reply_id").references(id).nullable() val sensitive: Column = bool("sensitive").default(false) val apId: Column = varchar("ap_id", 100).uniqueIndex() override val primaryKey: PrimaryKey = PrimaryKey(id) } -object PostsMedia : Table() { +object PostsMedia : Table("posts_media") { val postId = long("post_id").references(Posts.id, ReferenceOption.CASCADE, ReferenceOption.CASCADE) val mediaId = long("media_id").references(Media.id, ReferenceOption.CASCADE, ReferenceOption.CASCADE) override val primaryKey = PrimaryKey(postId, mediaId) diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index b805eb58..2d0a6c82 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -19,7 +19,7 @@ spring: default-property-inclusion: always datasource: driver-class-name: org.h2.Driver - url: "jdbc:h2:./test-dev3;MODE=POSTGRESQL;TRACE_LEVEL_FILE=4" + url: "jdbc:h2:./test-dev4;MODE=POSTGRESQL;TRACE_LEVEL_FILE=4" username: "" password: "" # data: @@ -37,9 +37,6 @@ spring: h2: console: enabled: true - exposed: - generate-ddl: true - excluded-packages: dev.usbharu.hideout.core.infrastructure.kjobexposed server: tomcat: basedir: tomcat diff --git a/src/main/resources/db/migration/V1__Init_DB.sql b/src/main/resources/db/migration/V1__Init_DB.sql new file mode 100644 index 00000000..34da6594 --- /dev/null +++ b/src/main/resources/db/migration/V1__Init_DB.sql @@ -0,0 +1,188 @@ +CREATE TABLE IF NOT EXISTS "INSTANCE" +( + ID BIGINT PRIMARY KEY, + "NAME" VARCHAR(1000) NOT NULL, + DESCRIPTION VARCHAR(5000) NOT NULL, + URL VARCHAR(255) NOT NULL, + ICON_URL VARCHAR(255) NOT NULL, + SHARED_INBOX VARCHAR(255) NULL, + SOFTWARE VARCHAR(255) NOT NULL, + VERSION VARCHAR(255) NOT NULL, + IS_BLOCKED BOOLEAN NOT NULL, + IS_MUTED BOOLEAN NOT NULL, + MODERATION_NOTE VARCHAR(10000) NOT NULL, + CREATED_AT TIMESTAMP NOT NULL +); +CREATE TABLE IF NOT EXISTS USERS +( + ID BIGINT PRIMARY KEY, + "NAME" VARCHAR(300) NOT NULL, + "DOMAIN" VARCHAR(1000) NOT NULL, + SCREEN_NAME VARCHAR(300) NOT NULL, + DESCRIPTION VARCHAR(10000) NOT NULL, + PASSWORD VARCHAR(255) NULL, + INBOX VARCHAR(1000) NOT NULL, + OUTBOX VARCHAR(1000) NOT NULL, + URL VARCHAR(1000) NOT NULL, + PUBLIC_KEY VARCHAR(10000) NOT NULL, + PRIVATE_KEY VARCHAR(10000) NULL, + CREATED_AT BIGINT NOT NULL, + KEY_ID VARCHAR(1000) NOT NULL, + "FOLLOWING" VARCHAR(1000) NULL, + FOLLOWERS VARCHAR(1000) NULL, + "INSTANCE" BIGINT NULL, + CONSTRAINT FK_USERS_INSTANCE__ID FOREIGN KEY ("INSTANCE") REFERENCES "INSTANCE" (ID) ON DELETE RESTRICT ON UPDATE RESTRICT +); +CREATE TABLE IF NOT EXISTS FOLLOW_REQUESTS +( + ID BIGSERIAL PRIMARY KEY, + USER_ID BIGINT NOT NULL, + FOLLOWER_ID BIGINT NOT NULL, + CONSTRAINT FK_FOLLOW_REQUESTS_USER_ID__ID FOREIGN KEY (USER_ID) REFERENCES USERS (ID) ON DELETE RESTRICT ON UPDATE RESTRICT, + CONSTRAINT FK_FOLLOW_REQUESTS_FOLLOWER_ID__ID FOREIGN KEY (FOLLOWER_ID) REFERENCES USERS (ID) ON DELETE RESTRICT ON UPDATE RESTRICT +); +CREATE TABLE IF NOT EXISTS MEDIA +( + ID BIGINT PRIMARY KEY, + "NAME" VARCHAR(255) NOT NULL, + URL VARCHAR(255) NOT NULL, + REMOTE_URL VARCHAR(255) NULL, + THUMBNAIL_URL VARCHAR(255) NULL, + "TYPE" INT NOT NULL, + BLURHASH VARCHAR(255) NULL, + MIME_TYPE VARCHAR(255) NOT NULL, + DESCRIPTION VARCHAR(4000) NULL +); +CREATE TABLE IF NOT EXISTS META_INFO +( + ID BIGINT PRIMARY KEY, + VERSION VARCHAR(1000) NOT NULL, + KID VARCHAR(1000) NOT NULL, + JWT_PRIVATE_KEY VARCHAR(100000) NOT NULL, + JWT_PUBLIC_KEY VARCHAR(100000) NOT NULL +); +CREATE TABLE IF NOT EXISTS POSTS +( + ID BIGINT PRIMARY KEY, + USER_ID BIGINT NOT NULL, + OVERVIEW VARCHAR(100) NULL, + TEXT VARCHAR(3000) NOT NULL, + CREATED_AT BIGINT NOT NULL, + VISIBILITY INT DEFAULT 0 NOT NULL, + URL VARCHAR(500) NOT NULL, + REPOST_ID BIGINT NULL, + REPLY_ID BIGINT NULL, + "SENSITIVE" BOOLEAN DEFAULT FALSE NOT NULL, + AP_ID VARCHAR(100) NOT NULL +); +ALTER TABLE POSTS + ADD CONSTRAINT FK_POSTS_USERID__ID FOREIGN KEY (USER_ID) REFERENCES USERS (ID) ON DELETE RESTRICT ON UPDATE RESTRICT; +ALTER TABLE POSTS + ADD CONSTRAINT FK_POSTS_REPOSTID__ID FOREIGN KEY (REPOST_ID) REFERENCES POSTS (ID) ON DELETE RESTRICT ON UPDATE RESTRICT; +ALTER TABLE POSTS + ADD CONSTRAINT FK_POSTS_REPLYID__ID FOREIGN KEY (REPLY_ID) REFERENCES POSTS (ID) ON DELETE RESTRICT ON UPDATE RESTRICT; +CREATE TABLE IF NOT EXISTS POSTS_MEDIA +( + POST_ID BIGINT, + MEDIA_ID BIGINT, + CONSTRAINT pk_PostsMedia PRIMARY KEY (POST_ID, MEDIA_ID) +); +ALTER TABLE POSTS_MEDIA + ADD CONSTRAINT FK_POSTS_MEDIA_POST_ID__ID FOREIGN KEY (POST_ID) REFERENCES POSTS (ID) ON DELETE CASCADE ON UPDATE CASCADE; +ALTER TABLE POSTS_MEDIA + ADD CONSTRAINT FK_POSTS_MEDIA_MEDIA_ID__ID FOREIGN KEY (MEDIA_ID) REFERENCES MEDIA (ID) ON DELETE CASCADE ON UPDATE CASCADE; +CREATE TABLE IF NOT EXISTS REACTIONS +( + ID BIGSERIAL PRIMARY KEY, + EMOJI_ID BIGINT NOT NULL, + POST_ID BIGINT NOT NULL, + USER_ID BIGINT NOT NULL +); +ALTER TABLE REACTIONS + ADD CONSTRAINT FK_REACTIONS_POST_ID__ID FOREIGN KEY (POST_ID) REFERENCES POSTS (ID) ON DELETE RESTRICT ON UPDATE RESTRICT; +ALTER TABLE REACTIONS + ADD CONSTRAINT FK_REACTIONS_USER_ID__ID FOREIGN KEY (USER_ID) REFERENCES USERS (ID) ON DELETE RESTRICT ON UPDATE RESTRICT; +CREATE TABLE IF NOT EXISTS TIMELINES +( + ID BIGINT PRIMARY KEY, + USER_ID BIGINT NOT NULL, + TIMELINE_ID BIGINT NOT NULL, + POST_ID BIGINT NOT NULL, + POST_USER_ID BIGINT NOT NULL, + CREATED_AT BIGINT NOT NULL, + REPLY_ID BIGINT NULL, + REPOST_ID BIGINT NULL, + VISIBILITY INT NOT NULL, + "SENSITIVE" BOOLEAN NOT NULL, + IS_LOCAL BOOLEAN NOT NULL, + IS_PURE_REPOST BOOLEAN NOT NULL, + MEDIA_IDS VARCHAR(255) NOT NULL +); +CREATE TABLE IF NOT EXISTS USERS_FOLLOWERS +( + ID BIGSERIAL PRIMARY KEY, + USER_ID BIGINT NOT NULL, + FOLLOWER_ID BIGINT NOT NULL, + CONSTRAINT FK_USERS_FOLLOWERS_USER_ID__ID FOREIGN KEY (USER_ID) REFERENCES USERS (ID) ON DELETE RESTRICT ON UPDATE RESTRICT, + CONSTRAINT FK_USERS_FOLLOWERS_FOLLOWER_ID__ID FOREIGN KEY (FOLLOWER_ID) REFERENCES USERS (ID) ON DELETE RESTRICT ON UPDATE RESTRICT +); +CREATE TABLE IF NOT EXISTS APPLICATION_AUTHORIZATION +( + ID VARCHAR(255) PRIMARY KEY, + REGISTERED_CLIENT_ID VARCHAR(255) NOT NULL, + PRINCIPAL_NAME VARCHAR(255) NOT NULL, + AUTHORIZATION_GRANT_TYPE VARCHAR(255) NOT NULL, + AUTHORIZED_SCOPES VARCHAR(1000) DEFAULT NULL NULL, + "ATTRIBUTES" VARCHAR(4000) DEFAULT NULL NULL, + "STATE" VARCHAR(500) DEFAULT NULL NULL, + AUTHORIZATION_CODE_VALUE VARCHAR(4000) DEFAULT NULL NULL, + AUTHORIZATION_CODE_ISSUED_AT TIMESTAMP DEFAULT NULL NULL, + AUTHORIZATION_CODE_EXPIRES_AT TIMESTAMP DEFAULT NULL NULL, + AUTHORIZATION_CODE_METADATA VARCHAR(2000) DEFAULT NULL NULL, + ACCESS_TOKEN_VALUE VARCHAR(4000) DEFAULT NULL NULL, + ACCESS_TOKEN_ISSUED_AT TIMESTAMP DEFAULT NULL NULL, + ACCESS_TOKEN_EXPIRES_AT TIMESTAMP DEFAULT NULL NULL, + ACCESS_TOKEN_METADATA VARCHAR(2000) DEFAULT NULL NULL, + ACCESS_TOKEN_TYPE VARCHAR(255) DEFAULT NULL NULL, + ACCESS_TOKEN_SCOPES VARCHAR(1000) DEFAULT NULL NULL, + REFRESH_TOKEN_VALUE VARCHAR(4000) DEFAULT NULL NULL, + REFRESH_TOKEN_ISSUED_AT TIMESTAMP DEFAULT NULL NULL, + REFRESH_TOKEN_EXPIRES_AT TIMESTAMP DEFAULT NULL NULL, + REFRESH_TOKEN_METADATA VARCHAR(2000) DEFAULT NULL NULL, + OIDC_ID_TOKEN_VALUE VARCHAR(4000) DEFAULT NULL NULL, + OIDC_ID_TOKEN_ISSUED_AT TIMESTAMP DEFAULT NULL NULL, + OIDC_ID_TOKEN_EXPIRES_AT TIMESTAMP DEFAULT NULL NULL, + OIDC_ID_TOKEN_METADATA VARCHAR(2000) DEFAULT NULL NULL, + OIDC_ID_TOKEN_CLAIMS VARCHAR(2000) DEFAULT NULL NULL, + USER_CODE_VALUE VARCHAR(4000) DEFAULT NULL NULL, + USER_CODE_ISSUED_AT TIMESTAMP DEFAULT NULL NULL, + USER_CODE_EXPIRES_AT TIMESTAMP DEFAULT NULL NULL, + USER_CODE_METADATA VARCHAR(2000) DEFAULT NULL NULL, + DEVICE_CODE_VALUE VARCHAR(4000) DEFAULT NULL NULL, + DEVICE_CODE_ISSUED_AT TIMESTAMP DEFAULT NULL NULL, + DEVICE_CODE_EXPIRES_AT TIMESTAMP DEFAULT NULL NULL, + DEVICE_CODE_METADATA VARCHAR(2000) DEFAULT NULL NULL +); +CREATE TABLE IF NOT EXISTS OAUTH2_AUTHORIZATION_CONSENT +( + REGISTERED_CLIENT_ID VARCHAR(100), + PRINCIPAL_NAME VARCHAR(200), + AUTHORITIES VARCHAR(1000) NOT NULL, + CONSTRAINT pk_oauth2_authorization_consent PRIMARY KEY (REGISTERED_CLIENT_ID, PRINCIPAL_NAME) +); +CREATE TABLE IF NOT EXISTS REGISTERED_CLIENT +( + ID VARCHAR(100) PRIMARY KEY, + CLIENT_ID VARCHAR(100) NOT NULL, + CLIENT_ID_ISSUED_AT TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, + CLIENT_SECRET VARCHAR(200) DEFAULT NULL NULL, + CLIENT_SECRET_EXPIRES_AT TIMESTAMP DEFAULT NULL NULL, + CLIENT_NAME VARCHAR(200) NOT NULL, + CLIENT_AUTHENTICATION_METHODS VARCHAR(1000) NOT NULL, + AUTHORIZATION_GRANT_TYPES VARCHAR(1000) NOT NULL, + REDIRECT_URIS VARCHAR(1000) DEFAULT NULL NULL, + POST_LOGOUT_REDIRECT_URIS VARCHAR(1000) DEFAULT NULL NULL, + SCOPES VARCHAR(1000) NOT NULL, + CLIENT_SETTINGS VARCHAR(2000) NOT NULL, + TOKEN_SETTINGS VARCHAR(2000) NOT NULL +) From 5a8b4604c06a9b5f8da13851a0e4c17316113c9f Mon Sep 17 00:00:00 2001 From: usbharu <64310155+usbharu@users.noreply.github.com> Date: Sun, 19 Nov 2023 13:47:07 +0900 Subject: [PATCH 2/2] test: fix test sql --- ...pSignature認証でフォロワーがfollowers投稿を取得できる.sql | 2 +- ...httpSignature認証でフォロワーがpublic投稿を取得できる.sql | 3 ++- ...tpSignature認証でフォロワーがunlisted投稿を取得できる.sql | 3 ++- ...ィア付き投稿はattachmentにDocumentとして画像が存在する.sql | 5 +++-- .../note/リプライになっている投稿はinReplyToが存在する.sql | 3 ++- .../sql/note/匿名でfollowers投稿を取得しようとすると404.sql | 3 ++- .../resources/sql/note/匿名でpublic投稿を取得できる.sql | 3 ++- .../resources/sql/note/匿名でunlisted投稿を取得できる.sql | 3 ++- 8 files changed, 16 insertions(+), 9 deletions(-) diff --git a/src/intTest/resources/sql/note/httpSignature認証でフォロワーがfollowers投稿を取得できる.sql b/src/intTest/resources/sql/note/httpSignature認証でフォロワーがfollowers投稿を取得できる.sql index 53d28e59..a01f34bb 100644 --- a/src/intTest/resources/sql/note/httpSignature認証でフォロワーがfollowers投稿を取得できる.sql +++ b/src/intTest/resources/sql/note/httpSignature認証でフォロワーがfollowers投稿を取得できる.sql @@ -24,6 +24,6 @@ VALUES (9, 'test-user9', 'follower.example.com', 'Im test-user9.', 'THis account insert into USERS_FOLLOWERS (USER_ID, FOLLOWER_ID) VALUES (8, 9); -insert into POSTS (ID, "userId", OVERVIEW, TEXT, "createdAt", VISIBILITY, URL, "repostId", "replyId", SENSITIVE, AP_ID) +insert into POSTS (ID, USER_ID, OVERVIEW, TEXT, CREATED_AT, VISIBILITY, URL, REPLY_ID, REPOST_ID, SENSITIVE, AP_ID) VALUES (1239, 8, null, 'test post', 12345680, 2, 'https://example.com/users/test-user8/posts/1239', null, null, false, 'https://example.com/users/test-user8/posts/1239'); diff --git a/src/intTest/resources/sql/note/httpSignature認証でフォロワーがpublic投稿を取得できる.sql b/src/intTest/resources/sql/note/httpSignature認証でフォロワーがpublic投稿を取得できる.sql index e0fe1f83..6c78ae20 100644 --- a/src/intTest/resources/sql/note/httpSignature認証でフォロワーがpublic投稿を取得できる.sql +++ b/src/intTest/resources/sql/note/httpSignature認証でフォロワーがpublic投稿を取得できる.sql @@ -24,6 +24,7 @@ VALUES (5, 'test-user5', 'follower.example.com', 'Im test user5.', 'THis account insert into USERS_FOLLOWERS (USER_ID, FOLLOWER_ID) VALUES (4, 5); -insert into POSTS (ID, "userId", OVERVIEW, TEXT, "createdAt", VISIBILITY, URL, "repostId", "replyId", SENSITIVE, AP_ID) +insert into POSTS (ID, "USER_ID", OVERVIEW, TEXT, "CREATED_AT", VISIBILITY, URL, "REPOST_ID", "REPLY_ID", SENSITIVE, + AP_ID) VALUES (1237, 4, null, 'test post', 12345680, 0, 'https://example.com/users/test-user4/posts/1237', null, null, false, 'https://example.com/users/test-user4/posts/1237'); diff --git a/src/intTest/resources/sql/note/httpSignature認証でフォロワーがunlisted投稿を取得できる.sql b/src/intTest/resources/sql/note/httpSignature認証でフォロワーがunlisted投稿を取得できる.sql index 82c7cff9..94de8f2e 100644 --- a/src/intTest/resources/sql/note/httpSignature認証でフォロワーがunlisted投稿を取得できる.sql +++ b/src/intTest/resources/sql/note/httpSignature認証でフォロワーがunlisted投稿を取得できる.sql @@ -24,6 +24,7 @@ VALUES (7, 'test-user7', 'follower.example.com', 'Im test-user7.', 'THis account insert into USERS_FOLLOWERS (USER_ID, FOLLOWER_ID) VALUES (6, 7); -insert into POSTS (ID, "userId", OVERVIEW, TEXT, "createdAt", VISIBILITY, URL, "repostId", "replyId", SENSITIVE, AP_ID) +insert into POSTS (ID, "USER_ID", OVERVIEW, TEXT, "CREATED_AT", VISIBILITY, URL, "REPOST_ID", "REPLY_ID", SENSITIVE, + AP_ID) VALUES (1238, 6, null, 'test post', 12345680, 1, 'https://example.com/users/test-user6/posts/1238', null, null, false, 'https://example.com/users/test-user6/posts/1238'); diff --git a/src/intTest/resources/sql/note/メディア付き投稿はattachmentにDocumentとして画像が存在する.sql b/src/intTest/resources/sql/note/メディア付き投稿はattachmentにDocumentとして画像が存在する.sql index 2f0b65a7..efe290a5 100644 --- a/src/intTest/resources/sql/note/メディア付き投稿はattachmentにDocumentとして画像が存在する.sql +++ b/src/intTest/resources/sql/note/メディア付き投稿はattachmentにDocumentとして画像が存在する.sql @@ -9,7 +9,8 @@ VALUES (11, 'test-user11', 'example.com', 'Im test-user11.', 'THis account is te 'https://example.com/users/test-user11#pubkey', 'https://example.com/users/test-user11/following', 'https://example.com/users/test-user11/followers', null); -insert into POSTS (ID, "userId", OVERVIEW, TEXT, "createdAt", VISIBILITY, URL, "repostId", "replyId", SENSITIVE, AP_ID) +insert into POSTS (ID, "USER_ID", OVERVIEW, TEXT, "CREATED_AT", VISIBILITY, URL, "REPOST_ID", "REPLY_ID", SENSITIVE, + AP_ID) VALUES (1242, 11, null, 'test post', 12345680, 0, 'https://example.com/users/test-user11/posts/1242', null, null, false, 'https://example.com/users/test-user11/posts/1242'); @@ -17,6 +18,6 @@ insert into MEDIA (ID, NAME, URL, REMOTE_URL, THUMBNAIL_URL, TYPE, BLURHASH, MIM VALUES (1, 'test-media', 'https://example.com/media/test-media.png', null, null, 0, null, 'image/png', null), (2, 'test-media2', 'https://example.com/media/test-media2.png', null, null, 0, null, 'image/png', null); -insert into POSTSMEDIA(POST_ID, MEDIA_ID) +insert into POSTS_MEDIA(POST_ID, MEDIA_ID) VALUES (1242, 1), (1242, 2); diff --git a/src/intTest/resources/sql/note/リプライになっている投稿はinReplyToが存在する.sql b/src/intTest/resources/sql/note/リプライになっている投稿はinReplyToが存在する.sql index d32ffce0..30455c5c 100644 --- a/src/intTest/resources/sql/note/リプライになっている投稿はinReplyToが存在する.sql +++ b/src/intTest/resources/sql/note/リプライになっている投稿はinReplyToが存在する.sql @@ -9,7 +9,8 @@ VALUES (10, 'test-user10', 'example.com', 'Im test-user10.', 'THis account is te 'https://example.com/users/test-user10#pubkey', 'https://example.com/users/test-user10/following', 'https://example.com/users/test-user10/followers', null); -insert into POSTS (ID, "userId", OVERVIEW, TEXT, "createdAt", VISIBILITY, URL, "repostId", "replyId", SENSITIVE, AP_ID) +insert into POSTS (ID, "USER_ID", OVERVIEW, TEXT, "CREATED_AT", VISIBILITY, URL, "REPOST_ID", "REPLY_ID", SENSITIVE, + AP_ID) VALUES (1240, 10, null, 'test post', 12345680, 0, 'https://example.com/users/test-user10/posts/1240', null, null, false, 'https://example.com/users/test-user10/posts/1240'), (1241, 10, null, 'test post', 12345680, 0, 'https://example.com/users/test-user10/posts/1241', null, 1240, false, diff --git a/src/intTest/resources/sql/note/匿名でfollowers投稿を取得しようとすると404.sql b/src/intTest/resources/sql/note/匿名でfollowers投稿を取得しようとすると404.sql index 1da76bf1..9b880740 100644 --- a/src/intTest/resources/sql/note/匿名でfollowers投稿を取得しようとすると404.sql +++ b/src/intTest/resources/sql/note/匿名でfollowers投稿を取得しようとすると404.sql @@ -9,6 +9,7 @@ VALUES (3, 'test-user3', 'example.com', 'Im test user3.', 'THis account is test 'https://example.com/users/test-user3#pubkey', 'https://example.com/users/test-user3/following', 'https://example.com/users/test-user3/followers', null); -insert into POSTS (ID, "userId", OVERVIEW, TEXT, "createdAt", VISIBILITY, URL, "repostId", "replyId", SENSITIVE, AP_ID) +insert into POSTS (ID, "USER_ID", OVERVIEW, TEXT, "CREATED_AT", VISIBILITY, URL, "REPOST_ID", "REPLY_ID", SENSITIVE, + AP_ID) VALUES (1236, 3, null, 'test post', 12345680, 2, 'https://example.com/users/test-user3/posts/1236', null, null, false, 'https://example.com/users/test-user3/posts/1236') diff --git a/src/intTest/resources/sql/note/匿名でpublic投稿を取得できる.sql b/src/intTest/resources/sql/note/匿名でpublic投稿を取得できる.sql index e8362d0f..14e7b47a 100644 --- a/src/intTest/resources/sql/note/匿名でpublic投稿を取得できる.sql +++ b/src/intTest/resources/sql/note/匿名でpublic投稿を取得できる.sql @@ -8,6 +8,7 @@ VALUES (1, 'test-user', 'example.com', 'Im test user.', 'THis account is test us 'https://example.com/users/test-user#pubkey', 'https://example.com/users/test-user/following', 'https://example.com/users/test-users/followers', null); -insert into POSTS (ID, "userId", OVERVIEW, TEXT, "createdAt", VISIBILITY, URL, "repostId", "replyId", SENSITIVE, AP_ID) +insert into POSTS (ID, "USER_ID", OVERVIEW, TEXT, "CREATED_AT", VISIBILITY, URL, "REPOST_ID", "REPLY_ID", SENSITIVE, + AP_ID) VALUES (1234, 1, null, 'test post', 12345680, 0, 'https://example.com/users/test-user/posts/1234', null, null, false, 'https://example.com/users/test-user/posts/1234') diff --git a/src/intTest/resources/sql/note/匿名でunlisted投稿を取得できる.sql b/src/intTest/resources/sql/note/匿名でunlisted投稿を取得できる.sql index fa04a3ce..f9bfe549 100644 --- a/src/intTest/resources/sql/note/匿名でunlisted投稿を取得できる.sql +++ b/src/intTest/resources/sql/note/匿名でunlisted投稿を取得できる.sql @@ -9,6 +9,7 @@ VALUES (2, 'test-user2', 'example.com', 'Im test user2.', 'THis account is test 'https://example.com/users/test-user2#pubkey', 'https://example.com/users/test-user2/following', 'https://example.com/users/test-user2/followers', null); -insert into POSTS (ID, "userId", OVERVIEW, TEXT, "createdAt", VISIBILITY, URL, "repostId", "replyId", SENSITIVE, AP_ID) +insert into POSTS (ID, "USER_ID", OVERVIEW, TEXT, "CREATED_AT", VISIBILITY, URL, "REPOST_ID", "REPLY_ID", SENSITIVE, + AP_ID) VALUES (1235, 2, null, 'test post', 12345680, 1, 'https://example.com/users/test-user2/posts/1235', null, null, false, 'https://example.com/users/test-user2/posts/1235')