aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2022-12-22 16:22:52 +0300
committerGravatar Vitaly Takmazov2022-12-22 16:22:52 +0300
commit33676cf1653f2053f57a9e0ecd5c8bda6c64d986 (patch)
tree0d15ff63f24d4ebf7554c51eb79a7b4d30689c7d /src
parenta06f31f65ab32d71fef8a6966c6bf5a114153341 (diff)
User info updates fix
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/juick/service/UserServiceImpl.java4
-rw-r--r--src/main/resources/db/specific/h2/V1.22__schema.sql4
-rw-r--r--src/test/java/com/juick/server/tests/ServerTests.java14
3 files changed, 18 insertions, 4 deletions
diff --git a/src/main/java/com/juick/service/UserServiceImpl.java b/src/main/java/com/juick/service/UserServiceImpl.java
index 4158561c..b5581b76 100644
--- a/src/main/java/com/juick/service/UserServiceImpl.java
+++ b/src/main/java/com/juick/service/UserServiceImpl.java
@@ -390,7 +390,6 @@ public class UserServiceImpl extends BaseJdbcService implements UserService {
return user;
}
- @Transactional
@Override
public boolean updateUserInfo(final User info) {
try {
@@ -401,7 +400,8 @@ public class UserServiceImpl extends BaseJdbcService implements UserService {
info.getCountry(),
info.getUrl(),
info.getDescription()) > 0;
- } catch (DataIntegrityViolationException e) {
+ } catch (Exception e) {
+ // pgjdbc 42.x do not use SQLException
return getJdbcTemplate().update("UPDATE usersinfo SET fullname = ?, country = ?, url = ?, descr = ? WHERE user_id = ?",
info.getFullName(),
info.getCountry(),
diff --git a/src/main/resources/db/specific/h2/V1.22__schema.sql b/src/main/resources/db/specific/h2/V1.22__schema.sql
index 83ff7054..2ded0e53 100644
--- a/src/main/resources/db/specific/h2/V1.22__schema.sql
+++ b/src/main/resources/db/specific/h2/V1.22__schema.sql
@@ -291,8 +291,8 @@ ALTER TABLE "PUBLIC"."USERS_SUBSCR" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_BB" PRIM
CREATE MEMORY TABLE "PUBLIC"."USERSINFO"(
"USER_ID" INTEGER NOT NULL,
"JID" CHARACTER(32) DEFAULT NULL,
- "FULLNAME" CHARACTER(32) DEFAULT NULL,
- "COUNTRY" CHARACTER(32) DEFAULT NULL,
+ "FULLNAME" VARCHAR(32) DEFAULT NULL,
+ "COUNTRY" VARCHAR(32) DEFAULT NULL,
"URL" CHARACTER(64) DEFAULT NULL,
"GENDER" CHARACTER(32) DEFAULT NULL,
"BDAY" CHARACTER(10) DEFAULT NULL,
diff --git a/src/test/java/com/juick/server/tests/ServerTests.java b/src/test/java/com/juick/server/tests/ServerTests.java
index 38eace7c..6eae82f3 100644
--- a/src/test/java/com/juick/server/tests/ServerTests.java
+++ b/src/test/java/com/juick/server/tests/ServerTests.java
@@ -2774,4 +2774,18 @@ public class ServerTests {
redirectedUrl("https://juick.com/vt/")
);
}
+ @Test
+ public void userInfoUpdateTest() {
+ assertThat(ugnich.getFullName(), equalTo(null));
+ var fullUgnichName = "Anton Ugnich";
+ ugnich.setFullName(fullUgnichName);
+ userService.updateUserInfo(ugnich);
+ var info = userService.getUserInfo(ugnich);
+ assertThat(info.getName(), equalTo(ugnichName));
+ assertThat(info.getFullName(), equalTo(fullUgnichName));
+ ugnich.setDescription("Test");
+ userService.updateUserInfo(ugnich);
+ var descr = userService.getUserInfo(ugnich);
+ assertThat(descr.getDescription(), equalTo("Test"));
+ }
}