@@ -50,8 +50,8 @@ public class JSONObjectTest {
@Test
@Ignore
public void toStringTest ( ) {
String str = " { \" code \" : 500, \" data \" :null} " ;
JSONObject jsonObject = new JSONObject ( str ) ;
final String str = " { \" code \" : 500, \" data \" :null} " ;
final JSONObject jsonObject = new JSONObject ( str ) ;
Console . log ( jsonObject ) ;
jsonObject . getConfig ( ) . setIgnoreNullValue ( true ) ;
Console . log ( jsonObject . toStringPretty ( ) ) ;
@@ -59,9 +59,9 @@ public class JSONObjectTest {
@Test
public void toStringTest2 ( ) {
String str = " { \" test \" : \" 关于开展2018年度“文明集体”、“文明职工”评选表彰活动的通知 \" } " ;
final String str = " { \" test \" : \" 关于开展2018年度“文明集体”、“文明职工”评选表彰活动的通知 \" } " ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject json = new JSONObject ( str ) ;
final JSONObject json = new JSONObject ( str ) ;
Assert . assertEquals ( str , json . toString ( ) ) ;
}
@@ -70,7 +70,7 @@ public class JSONObjectTest {
*/
@Test
public void toStringTest3 ( ) {
JSONObject json = Objects . requireNonNull ( JSONUtil . createObj ( ) //
final JSONObject json = Objects . requireNonNull ( JSONUtil . createObj ( ) //
. set ( " dateTime " , DateUtil . parse ( " 2019-05-02 22:12:01 " ) ) ) //
. setDateFormat ( DatePattern . NORM_DATE_PATTERN ) ;
Assert . assertEquals ( " { \" dateTime \" : \" 2019-05-02 \" } " , json . toString ( ) ) ;
@@ -89,13 +89,13 @@ public class JSONObjectTest {
@Test
public void putAllTest ( ) {
JSONObject json1 = JSONUtil . createObj ( )
final JSONObject json1 = JSONUtil . createObj ( )
. set ( " a " , " value1 " )
. set ( " b " , " value2 " )
. set ( " c " , " value3 " )
. set ( " d " , true ) ;
JSONObject json2 = JSONUtil . createObj ( )
final JSONObject json2 = JSONUtil . createObj ( )
. set ( " a " , " value21 " )
. set ( " b " , " value22 " ) ;
@@ -109,8 +109,8 @@ public class JSONObjectTest {
@Test
public void parseStringTest ( ) {
String jsonStr = " { \" b \" : \" value2 \" , \" c \" : \" value3 \" , \" a \" : \" value1 \" , \" d \" : true, \" e \" : null} " ;
JSONObject jsonObject = JSONUtil . parseObj ( jsonStr ) ;
final String jsonStr = " { \" b \" : \" value2 \" , \" c \" : \" value3 \" , \" a \" : \" value1 \" , \" d \" : true, \" e \" : null} " ;
final JSONObject jsonObject = JSONUtil . parseObj ( jsonStr ) ;
Assert . assertEquals ( jsonObject . get ( " a " ) , " value1 " ) ;
Assert . assertEquals ( jsonObject . get ( " b " ) , " value2 " ) ;
Assert . assertEquals ( jsonObject . get ( " c " ) , " value3 " ) ;
@@ -122,57 +122,57 @@ public class JSONObjectTest {
@Test
public void parseStringTest2 ( ) {
String jsonStr = " { \" file_name \" : \" RMM20180127009_731.000 \" , \" error_data \" : \" 201121151350701001252500000032 18973908335 18973908335 13601893517 201711211700152017112115135420171121 6594000000010100000000000000000000000043190101701001910072 100001100 \" , \" error_code \" : \" F140 \" , \" error_info \" : \" 最早发送时间格式错误, 该字段可以为空, 当不为空时正确填写格式为“YYYYMMDDHHMISS” \" , \" app_name \" : \" inter-pre-check \" } " ;
final String jsonStr = " { \" file_name \" : \" RMM20180127009_731.000 \" , \" error_data \" : \" 201121151350701001252500000032 18973908335 18973908335 13601893517 201711211700152017112115135420171121 6594000000010100000000000000000000000043190101701001910072 100001100 \" , \" error_code \" : \" F140 \" , \" error_info \" : \" 最早发送时间格式错误, 该字段可以为空, 当不为空时正确填写格式为“YYYYMMDDHHMISS” \" , \" app_name \" : \" inter-pre-check \" } " ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject json = new JSONObject ( jsonStr ) ;
final JSONObject json = new JSONObject ( jsonStr ) ;
Assert . assertEquals ( " F140 " , json . getStr ( " error_code " ) ) ;
Assert . assertEquals ( " 最早发送时间格式错误, 该字段可以为空, 当不为空时正确填写格式为“YYYYMMDDHHMISS” " , json . getStr ( " error_info " ) ) ;
}
@Test
public void parseStringTest3 ( ) {
String jsonStr = " { \" test \" : \" 体”、“文 \" } " ;
final String jsonStr = " { \" test \" : \" 体”、“文 \" } " ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject json = new JSONObject ( jsonStr ) ;
final JSONObject json = new JSONObject ( jsonStr ) ;
Assert . assertEquals ( " 体”、“文 " , json . getStr ( " test " ) ) ;
}
@Test
public void parseStringTest4 ( ) {
String jsonStr = " {'msg':'这里还没有内容','data':{'cards':[]},'ok':0} " ;
final String jsonStr = " {'msg':'这里还没有内容','data':{'cards':[]},'ok':0} " ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject json = new JSONObject ( jsonStr ) ;
final JSONObject json = new JSONObject ( jsonStr ) ;
Assert . assertEquals ( new Integer ( 0 ) , json . getInt ( " ok " ) ) ;
Assert . assertEquals ( new JSONArray ( ) , json . getJSONObject ( " data " ) . getJSONArray ( " cards " ) ) ;
}
@Test
public void parseBytesTest ( ) {
String jsonStr = " {'msg':'这里还没有内容','data':{'cards':[]},'ok':0} " ;
final String jsonStr = " {'msg':'这里还没有内容','data':{'cards':[]},'ok':0} " ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject json = new JSONObject ( jsonStr . getBytes ( StandardCharsets . UTF_8 ) ) ;
final JSONObject json = new JSONObject ( jsonStr . getBytes ( StandardCharsets . UTF_8 ) ) ;
Assert . assertEquals ( new Integer ( 0 ) , json . getInt ( " ok " ) ) ;
Assert . assertEquals ( new JSONArray ( ) , json . getJSONObject ( " data " ) . getJSONArray ( " cards " ) ) ;
}
@Test
public void parseReaderTest ( ) {
String jsonStr = " {'msg':'这里还没有内容','data':{'cards':[]},'ok':0} " ;
final String jsonStr = " {'msg':'这里还没有内容','data':{'cards':[]},'ok':0} " ;
final StringReader stringReader = new StringReader ( jsonStr ) ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject json = new JSONObject ( stringReader ) ;
final JSONObject json = new JSONObject ( stringReader ) ;
Assert . assertEquals ( new Integer ( 0 ) , json . getInt ( " ok " ) ) ;
Assert . assertEquals ( new JSONArray ( ) , json . getJSONObject ( " data " ) . getJSONArray ( " cards " ) ) ;
}
@Test
public void parseInputStreamTest ( ) {
String jsonStr = " {'msg':'这里还没有内容','data':{'cards':[]},'ok':0} " ;
final String jsonStr = " {'msg':'这里还没有内容','data':{'cards':[]},'ok':0} " ;
final ByteArrayInputStream in = new ByteArrayInputStream ( jsonStr . getBytes ( StandardCharsets . UTF_8 ) ) ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject json = new JSONObject ( in ) ;
final JSONObject json = new JSONObject ( in ) ;
Assert . assertEquals ( new Integer ( 0 ) , json . getInt ( " ok " ) ) ;
Assert . assertEquals ( new JSONArray ( ) , json . getJSONObject ( " data " ) . getJSONArray ( " cards " ) ) ;
}
@@ -180,9 +180,9 @@ public class JSONObjectTest {
@Test
@Ignore
public void parseStringWithBomTest ( ) {
String jsonStr = FileUtil . readUtf8String ( " f:/test/jsontest.txt " ) ;
JSONObject json = new JSONObject ( jsonStr ) ;
JSONObject json2 = JSONUtil . parseObj ( json ) ;
final String jsonStr = FileUtil . readUtf8String ( " f:/test/jsontest.txt " ) ;
final JSONObject json = new JSONObject ( jsonStr ) ;
final JSONObject json2 = JSONUtil . parseObj ( json ) ;
Console . log ( json ) ;
Console . log ( json2 ) ;
}
@@ -190,23 +190,23 @@ public class JSONObjectTest {
@Test
public void parseStringWithSlashTest ( ) {
//在5.3.2之前,</div>中的/会被转义, 修复此bug的单元测试
String jsonStr = " { \" a \" : \" <div>aaa</div> \" } " ;
final String jsonStr = " { \" a \" : \" <div>aaa</div> \" } " ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject json = new JSONObject ( jsonStr ) ;
final JSONObject json = new JSONObject ( jsonStr ) ;
Assert . assertEquals ( " <div>aaa</div> " , json . get ( " a " ) ) ;
Assert . assertEquals ( jsonStr , json . toString ( ) ) ;
}
@Test
public void toBeanTest ( ) {
JSONObject subJson = JSONUtil . createObj ( ) . set ( " value1 " , " strValue1 " ) . set ( " value2 " , " 234 " ) ;
JSONObject json = JSONUtil . createObj ( ) . set ( " strValue " , " strTest " ) . set ( " intValue " , 123 )
final JSONObject subJson = JSONUtil . createObj ( ) . set ( " value1 " , " strValue1 " ) . set ( " value2 " , " 234 " ) ;
final JSONObject json = JSONUtil . createObj ( ) . set ( " strValue " , " strTest " ) . set ( " intValue " , 123 )
// 测试空字符串转对象
. set ( " doubleValue " , " " )
. set ( " beanValue " , subJson )
. set ( " list " , JSONUtil . createArray ( ) . set ( " a " ) . set ( " b " ) ) . set ( " testEnum " , " TYPE_A " ) ;
TestBean bean = json . toBean ( TestBean . class ) ;
final TestBean bean = json . toBean ( TestBean . class ) ;
Assert . assertEquals ( " a " , bean . getList ( ) . get ( 0 ) ) ;
Assert . assertEquals ( " b " , bean . getList ( ) . get ( 1 ) ) ;
@@ -219,14 +219,14 @@ public class JSONObjectTest {
@Test
public void toBeanNullStrTest ( ) {
JSONObject json = JSONUtil . createObj ( ) //
final JSONObject json = JSONUtil . createObj ( ) //
. set ( " strValue " , " null " ) //
. set ( " intValue " , 123 ) //
// 子对象对应"null"字符串,如果忽略错误,跳过,否则抛出转换异常
. set ( " beanValue " , " null " ) //
. set ( " list " , JSONUtil . createArray ( ) . set ( " a " ) . set ( " b " ) ) ;
TestBean bean = json . toBean ( TestBean . class , true ) ;
final TestBean bean = json . toBean ( TestBean . class , true ) ;
// 当JSON中为字符串"null"时应被当作字符串处理
Assert . assertEquals ( " null " , bean . getStrValue ( ) ) ;
// 当JSON中为字符串"null"时Bean中的字段类型不匹配应在ignoreError模式下忽略注入
@@ -235,14 +235,14 @@ public class JSONObjectTest {
@Test
public void toBeanTest2 ( ) {
UserA userA = new UserA ( ) ;
final UserA userA = new UserA ( ) ;
userA . setA ( " A user " ) ;
userA . setName ( " { \ n \ t \" body \" :{ \ n \ t \ t \" loginId \" : \" id \" , \ n \ t \ t \" password \" : \" pwd \" \ n \ t} \ n} " ) ;
userA . setDate ( new Date ( ) ) ;
userA . setSqs ( CollectionUtil . newArrayList ( new Seq ( " seq1 " ) , new Seq ( " seq2 " ) ) ) ;
JSONObject json = JSONUtil . parseObj ( userA ) ;
UserA userA2 = json . toBean ( UserA . class ) ;
final JSONObject json = JSONUtil . parseObj ( userA ) ;
final UserA userA2 = json . toBean ( UserA . class ) ;
// 测试数组
Assert . assertEquals ( " seq1 " , userA2 . getSqs ( ) . get ( 0 ) . getSeq ( ) ) ;
// 测试带换行符等特殊字符转换是否成功
@@ -251,33 +251,33 @@ public class JSONObjectTest {
@Test
public void toBeanWithNullTest ( ) {
String jsonStr = " {'data':{'userName':'ak','password': null}} " ;
UserWithMap user = JSONUtil . toBean ( JSONUtil . parseObj ( jsonStr ) , UserWithMap . class ) ;
final String jsonStr = " {'data':{'userName':'ak','password': null}} " ;
final UserWithMap user = JSONUtil . toBean ( JSONUtil . parseObj ( jsonStr ) , UserWithMap . class ) ;
Assert . assertTrue ( user . getData ( ) . containsKey ( " password " ) ) ;
}
@Test
public void toBeanTest4 ( ) {
String json = " { \" data \" :{ \" b \" : \" c \" }} " ;
final String json = " { \" data \" :{ \" b \" : \" c \" }} " ;
UserWithMap map = JSONUtil . toBean ( json , UserWithMap . class ) ;
final UserWithMap map = JSONUtil . toBean ( json , UserWithMap . class ) ;
Assert . assertEquals ( " c " , map . getData ( ) . get ( " b " ) ) ;
}
@Test
public void toBeanTest5 ( ) {
String readUtf8Str = ResourceUtil . readUtf8Str ( " suiteReport.json " ) ;
JSONObject json = JSONUtil . parseObj ( readUtf8Str ) ;
SuiteReport bean = json . toBean ( SuiteReport . class ) ;
final String readUtf8Str = ResourceUtil . readUtf8Str ( " suiteReport.json " ) ;
final JSONObject json = JSONUtil . parseObj ( readUtf8Str ) ;
final SuiteReport bean = json . toBean ( SuiteReport . class ) ;
// 第一层
List < CaseReport > caseReports = bean . getCaseReports ( ) ;
CaseReport caseReport = caseReports . get ( 0 ) ;
final List < CaseReport > caseReports = bean . getCaseReports ( ) ;
final CaseReport caseReport = caseReports . get ( 0 ) ;
Assert . assertNotNull ( caseReport ) ;
// 第二层
List < StepReport > stepReports = caseReports . get ( 0 ) . getStepReports ( ) ;
StepReport stepReport = stepReports . get ( 0 ) ;
final List < StepReport > stepReports = caseReports . get ( 0 ) . getStepReports ( ) ;
final StepReport stepReport = stepReports . get ( 0 ) ;
Assert . assertNotNull ( stepReport ) ;
}
@@ -286,18 +286,18 @@ public class JSONObjectTest {
*/
@Test
public void toBeanTest6 ( ) {
JSONObject json = JSONUtil . createObj ( )
final JSONObject json = JSONUtil . createObj ( )
. set ( " targetUrl " , " http://test.com " )
. set ( " success " , " true " )
. set ( " result " , JSONUtil . createObj ( )
. set ( " token " , " tokenTest " )
. set ( " userId " , " 测试用户1 " ) ) ;
TokenAuthWarp2 bean = json . toBean ( TokenAuthWarp2 . class ) ;
final TokenAuthWarp2 bean = json . toBean ( TokenAuthWarp2 . class ) ;
Assert . assertEquals ( " http://test.com " , bean . getTargetUrl ( ) ) ;
Assert . assertEquals ( " true " , bean . getSuccess ( ) ) ;
TokenAuthResponse result = bean . getResult ( ) ;
final TokenAuthResponse result = bean . getResult ( ) ;
Assert . assertNotNull ( result ) ;
Assert . assertEquals ( " tokenTest " , result . getToken ( ) ) ;
Assert . assertEquals ( " 测试用户1 " , result . getUserId ( ) ) ;
@@ -309,21 +309,21 @@ public class JSONObjectTest {
*/
@Test
public void toBeanTest7 ( ) {
String jsonStr = " { \" result \" :{ \" phone \" : \" 15926297342 \" , \" appKey \" : \" e1ie12e1ewsdqw1 \" , " +
final String jsonStr = " { \" result \" :{ \" phone \" : \" 15926297342 \" , \" appKey \" : \" e1ie12e1ewsdqw1 \" , " +
" \" secret \" : \" dsadadqwdqs121d1e2 \" , \" message \" : \" hello world \" }, \" code \" :100, \" " +
" message \" : \" validate message \" } " ;
ResultDto < ? > dto = JSONUtil . toBean ( jsonStr , ResultDto . class ) ;
final ResultDto < ? > dto = JSONUtil . toBean ( jsonStr , ResultDto . class ) ;
Assert . assertEquals ( " validate message " , dto . getMessage ( ) ) ;
}
@Test
public void parseBeanTest ( ) {
UserA userA = new UserA ( ) ;
final UserA userA = new UserA ( ) ;
userA . setName ( " nameTest " ) ;
userA . setDate ( new Date ( ) ) ;
userA . setSqs ( CollectionUtil . newArrayList ( new Seq ( null ) , new Seq ( " seq2 " ) ) ) ;
JSONObject json = JSONUtil . parseObj ( userA , false ) ;
final JSONObject json = JSONUtil . parseObj ( userA , false ) ;
Assert . assertTrue ( json . containsKey ( " a " ) ) ;
Assert . assertTrue ( json . getJSONArray ( " sqs " ) . getJSONObject ( 0 ) . containsKey ( " seq " ) ) ;
@@ -331,28 +331,28 @@ public class JSONObjectTest {
@Test
public void parseBeanTest2 ( ) {
TestBean bean = new TestBean ( ) ;
final TestBean bean = new TestBean ( ) ;
bean . setDoubleValue ( 111 . 1 ) ;
bean . setIntValue ( 123 ) ;
bean . setList ( CollUtil . newArrayList ( " a " , " b " , " c " ) ) ;
bean . setStrValue ( " strTest " ) ;
bean . setTestEnum ( TestEnum . TYPE_B ) ;
JSONObject json = JSONUtil . parseObj ( bean , false ) ;
final JSONObject json = JSONUtil . parseObj ( bean , false ) ;
// 枚举转换检查
Assert . assertEquals ( " TYPE_B " , json . get ( " testEnum " ) ) ;
TestBean bean2 = json . toBean ( TestBean . class ) ;
final TestBean bean2 = json . toBean ( TestBean . class ) ;
Assert . assertEquals ( bean . toString ( ) , bean2 . toString ( ) ) ;
}
@Test
public void parseBeanTest3 ( ) {
JSONObject json = JSONUtil . createObj ( )
final JSONObject json = JSONUtil . createObj ( )
. set ( " code " , 22 )
. set ( " data " , " { \" jobId \" : \" abc \" , \" videoUrl \" : \" http://a.com/a.mp4 \" } " ) ;
JSONBean bean = json . toBean ( JSONBean . class ) ;
final JSONBean bean = json . toBean ( JSONBean . class ) ;
Assert . assertEquals ( 22 , bean . getCode ( ) ) ;
Assert . assertEquals ( " abc " , bean . getData ( ) . getObj ( " jobId " ) ) ;
Assert . assertEquals ( " http://a.com/a.mp4 " , bean . getData ( ) . getObj ( " videoUrl " ) ) ;
@@ -360,13 +360,13 @@ public class JSONObjectTest {
@Test
public void beanTransTest ( ) {
UserA userA = new UserA ( ) ;
final UserA userA = new UserA ( ) ;
userA . setA ( " A user " ) ;
userA . setName ( " nameTest " ) ;
userA . setDate ( new Date ( ) ) ;
JSONObject userAJson = JSONUtil . parseObj ( userA ) ;
UserB userB = JSONUtil . toBean ( userAJson , UserB . class ) ;
final JSONObject userAJson = JSONUtil . parseObj ( userA ) ;
final UserB userB = JSONUtil . toBean ( userAJson , UserB . class ) ;
Assert . assertEquals ( userA . getName ( ) , userB . getName ( ) ) ;
Assert . assertEquals ( userA . getDate ( ) , userB . getDate ( ) ) ;
@@ -374,63 +374,63 @@ public class JSONObjectTest {
@Test
public void beanTransTest2 ( ) {
UserA userA = new UserA ( ) ;
final UserA userA = new UserA ( ) ;
userA . setA ( " A user " ) ;
userA . setName ( " nameTest " ) ;
userA . setDate ( DateUtil . parse ( " 2018-10-25 " ) ) ;
JSONObject userAJson = JSONUtil . parseObj ( userA ) ;
final JSONObject userAJson = JSONUtil . parseObj ( userA ) ;
// 自定义日期格式
userAJson . setDateFormat ( " yyyy-MM-dd " ) ;
UserA bean = JSONUtil . toBean ( userAJson . toString ( ) , UserA . class ) ;
final UserA bean = JSONUtil . toBean ( userAJson . toString ( ) , UserA . class ) ;
Assert . assertEquals ( DateUtil . parse ( " 2018-10-25 " ) , bean . getDate ( ) ) ;
}
@Test
public void beanTransTest3 ( ) {
JSONObject userAJson = JSONUtil . createObj ( )
final JSONObject userAJson = JSONUtil . createObj ( )
. set ( " a " , " AValue " )
. set ( " name " , " nameValue " )
. set ( " date " , " 08:00:00 " ) ;
UserA bean = JSONUtil . toBean ( userAJson . toString ( ) , UserA . class ) ;
final UserA bean = JSONUtil . toBean ( userAJson . toString ( ) , UserA . class ) ;
Assert . assertEquals ( DateUtil . today ( ) + " 08:00:00 " , DateUtil . date ( bean . getDate ( ) ) . toString ( ) ) ;
}
@Test
public void parseFromBeanTest ( ) {
UserA userA = new UserA ( ) ;
final UserA userA = new UserA ( ) ;
userA . setA ( null ) ;
userA . setName ( " nameTest " ) ;
userA . setDate ( new Date ( ) ) ;
JSONObject userAJson = JSONUtil . parseObj ( userA ) ;
final JSONObject userAJson = JSONUtil . parseObj ( userA ) ;
Assert . assertFalse ( userAJson . containsKey ( " a " ) ) ;
JSONObject userAJsonWithNullValue = JSONUtil . parseObj ( userA , false ) ;
final JSONObject userAJsonWithNullValue = JSONUtil . parseObj ( userA , false ) ;
Assert . assertTrue ( userAJsonWithNullValue . containsKey ( " a " ) ) ;
Assert . assertTrue ( userAJsonWithNullValue . containsKey ( " sqs " ) ) ;
}
@Test
public void specialCharTest ( ) {
String json = " { \" pattern \" : \" [abc] \ b \ u2001 \" , \" pattern2Json \" : { \" patternText \" : \" [ab] \\ b \" }} " ;
JSONObject obj = JSONUtil . parseObj ( json ) ;
final String json = " { \" pattern \" : \" [abc] \ b \ u2001 \" , \" pattern2Json \" : { \" patternText \" : \" [ab] \\ b \" }} " ;
final JSONObject obj = JSONUtil . parseObj ( json ) ;
Assert . assertEquals ( " [abc] \\ b \\ u2001 " , obj . getStrEscaped ( " pattern " ) ) ;
Assert . assertEquals ( " { \" patternText \" : \" [ab] \\ b \" } " , obj . getStrEscaped ( " pattern2Json " ) ) ;
}
@Test
public void getStrTest ( ) {
String json = " { \" name \" : \" yyb \\ nbbb \" } " ;
JSONObject jsonObject = JSONUtil . parseObj ( json ) ;
final String json = " { \" name \" : \" yyb \\ nbbb \" } " ;
final JSONObject jsonObject = JSONUtil . parseObj ( json ) ;
// 没有转义按照默认规则显示
Assert . assertEquals ( " yyb \ nbbb " , jsonObject . getStr ( " name " ) ) ;
// 转义按照字符串显示
Assert . assertEquals ( " yyb \\ nbbb " , jsonObject . getStrEscaped ( " name " ) ) ;
String bbb = jsonObject . getStr ( " bbb " , " defaultBBB " ) ;
final String bbb = jsonObject . getStr ( " bbb " , " defaultBBB " ) ;
Assert . assertEquals ( " defaultBBB " , bbb ) ;
}
@@ -444,7 +444,7 @@ public class JSONObjectTest {
Assert . assertEquals ( " 张三 " , jsonObject . getStr ( " name " ) ) ;
Assert . assertEquals ( new Integer ( 35 ) , jsonObject . getInt ( " age " ) ) ;
JSONObject json = JSONUtil . createObj ( )
final JSONObject json = JSONUtil . createObj ( )
. set ( " name " , " 张三 " )
. set ( " age " , 35 ) ;
final BeanWithAlias bean = JSONUtil . toBean ( Objects . requireNonNull ( json ) . toString ( ) , BeanWithAlias . class ) ;
@@ -454,10 +454,10 @@ public class JSONObjectTest {
@Test
public void setDateFormatTest ( ) {
JSONConfig jsonConfig = JSONConfig . create ( ) ;
final JSONConfig jsonConfig = JSONConfig . create ( ) ;
jsonConfig . setDateFormat ( " yyyy-MM-dd HH:mm:ss " ) ;
JSONObject json = new JSONObject ( jsonConfig ) ;
final JSONObject json = new JSONObject ( jsonConfig ) ;
json . append ( " date " , DateUtil . parse ( " 2020-06-05 11:16:11 " ) ) ;
json . append ( " bbb " , " 222 " ) ;
json . append ( " aaa " , " 123 " ) ;
@@ -466,16 +466,16 @@ public class JSONObjectTest {
@Test
public void setDateFormatTest2 ( ) {
JSONConfig jsonConfig = JSONConfig . create ( ) ;
final JSONConfig jsonConfig = JSONConfig . create ( ) ;
jsonConfig . setDateFormat ( " yyyy#MM#dd " ) ;
Date date = DateUtil . parse ( " 2020-06-05 11:16:11 " ) ;
JSONObject json = new JSONObject ( jsonConfig ) ;
final Date date = DateUtil . parse ( " 2020-06-05 11:16:11 " ) ;
final JSONObject json = new JSONObject ( jsonConfig ) ;
json . set ( " date " , date ) ;
json . set ( " bbb " , " 222 " ) ;
json . set ( " aaa " , " 123 " ) ;
String jsonStr = " { \" date \" : \" 2020#06#05 \" , \" bbb \" : \" 222 \" , \" aaa \" : \" 123 \" } " ;
final String jsonStr = " { \" date \" : \" 2020#06#05 \" , \" bbb \" : \" 222 \" , \" aaa \" : \" 123 \" } " ;
Assert . assertEquals ( jsonStr , json . toString ( ) ) ;
@@ -486,16 +486,16 @@ public class JSONObjectTest {
@Test
public void setCustomDateFormatTest ( ) {
JSONConfig jsonConfig = JSONConfig . create ( ) ;
final JSONConfig jsonConfig = JSONConfig . create ( ) ;
jsonConfig . setDateFormat ( " #sss " ) ;
Date date = DateUtil . parse ( " 2020-06-05 11:16:11 " ) ;
JSONObject json = new JSONObject ( jsonConfig ) ;
final Date date = DateUtil . parse ( " 2020-06-05 11:16:11 " ) ;
final JSONObject json = new JSONObject ( jsonConfig ) ;
json . set ( " date " , date ) ;
json . set ( " bbb " , " 222 " ) ;
json . set ( " aaa " , " 123 " ) ;
String jsonStr = " { \" date \" :1591326971, \" bbb \" : \" 222 \" , \" aaa \" : \" 123 \" } " ;
final String jsonStr = " { \" date \" :1591326971, \" bbb \" : \" 222 \" , \" aaa \" : \" 123 \" } " ;
Assert . assertEquals ( jsonStr , json . toString ( ) ) ;
@@ -506,7 +506,7 @@ public class JSONObjectTest {
@Test
public void getTimestampTest ( ) {
String timeStr = " 1970-01-01 00:00:00 " ;
final String timeStr = " 1970-01-01 00:00:00 " ;
final JSONObject jsonObject = JSONUtil . createObj ( ) . set ( " time " , timeStr ) ;
final Timestamp time = jsonObject . get ( " time " , Timestamp . class ) ;
Assert . assertEquals ( " 1970-01-01 00:00:00.0 " , time . toString ( ) ) ;
@@ -605,7 +605,7 @@ public class JSONObjectTest {
@Test
public void floatTest ( ) {
Map < String , Object > map = new HashMap < > ( ) ;
final Map < String , Object > map = new HashMap < > ( ) ;
map . put ( " c " , 2 . 0F ) ;
final String s = JSONUtil . toJsonStr ( map ) ;
@@ -626,7 +626,7 @@ public class JSONObjectTest {
@Test
public void putByPathTest ( ) {
JSONObject json = new JSONObject ( ) ;
final JSONObject json = new JSONObject ( ) ;
json . putByPath ( " aa.bb " , " BB " ) ;
Assert . assertEquals ( " { \" aa \" :{ \" bb \" : \" BB \" }} " , json . toString ( ) ) ;
}
@@ -634,8 +634,8 @@ public class JSONObjectTest {
@Test
public void bigDecimalTest ( ) {
String jsonStr = " { \" orderId \" : \" 1704747698891333662002277 \" } " ;
BigDecimalBean bigDecimalBean = JSONUtil . toBean ( jsonStr , BigDecimalBean . class ) ;
final String jsonStr = " { \" orderId \" : \" 1704747698891333662002277 \" } " ;
final BigDecimalBean bigDecimalBean = JSONUtil . toBean ( jsonStr , BigDecimalBean . class ) ;
Assert . assertEquals ( " { \" orderId \" :1704747698891333662002277} " , JSONUtil . toJsonStr ( bigDecimalBean ) ) ;
}
@@ -647,7 +647,7 @@ public class JSONObjectTest {
@Test
public void filterIncludeTest ( ) {
JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) )
final JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) )
. set ( " a " , " value1 " )
. set ( " b " , " value2 " )
. set ( " c " , " value3 " )
@@ -659,7 +659,7 @@ public class JSONObjectTest {
@Test
public void filterExcludeTest ( ) {
JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) )
final JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) )
. set ( " a " , " value1 " )
. set ( " b " , " value2 " )
. set ( " c " , " value3 " )
@@ -671,7 +671,7 @@ public class JSONObjectTest {
@Test
public void editTest ( ) {
JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) )
final JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) )
. set ( " a " , " value1 " )
. set ( " b " , " value2 " )
. set ( " c " , " value3 " )
@@ -691,7 +691,7 @@ public class JSONObjectTest {
@Test
public void toUnderLineCaseTest ( ) {
JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) )
final JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) )
. set ( " aKey " , " value1 " )
. set ( " bJob " , " value2 " )
. set ( " cGood " , " value3 " )
@@ -706,7 +706,7 @@ public class JSONObjectTest {
@Test
public void nullToEmptyTest ( ) {
JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) . setIgnoreNullValue ( false ) )
final JSONObject json1 = JSONUtil . createObj ( JSONConfig . create ( ) . setIgnoreNullValue ( false ) )
. set ( " a " , null )
. set ( " b " , " value2 " ) ;
@@ -719,18 +719,18 @@ public class JSONObjectTest {
@Test
public void parseFilterTest ( ) {
String jsonStr = " { \" b \" : \" value2 \" , \" c \" : \" value3 \" , \" a \" : \" value1 \" , \" d \" : true, \" e \" : null} " ;
final String jsonStr = " { \" b \" : \" value2 \" , \" c \" : \" value3 \" , \" a \" : \" value1 \" , \" d \" : true, \" e \" : null} " ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject jsonObject = new JSONObject ( jsonStr , null , ( pair ) - > " b " . equals ( pair . getKey ( ) ) ) ;
final JSONObject jsonObject = new JSONObject ( jsonStr , null , ( pair ) - > " b " . equals ( pair . getKey ( ) ) ) ;
Assert . assertEquals ( 1 , jsonObject . size ( ) ) ;
Assert . assertEquals ( " value2 " , jsonObject . get ( " b " ) ) ;
}
@Test
public void parseFilterEditTest ( ) {
String jsonStr = " { \" b \" : \" value2 \" , \" c \" : \" value3 \" , \" a \" : \" value1 \" , \" d \" : true, \" e \" : null} " ;
final String jsonStr = " { \" b \" : \" value2 \" , \" c \" : \" value3 \" , \" a \" : \" value1 \" , \" d \" : true, \" e \" : null} " ;
//noinspection MismatchedQueryAndUpdateOfCollection
JSONObject jsonObject = new JSONObject ( jsonStr , null , ( pair ) - > {
final JSONObject jsonObject = new JSONObject ( jsonStr , null , ( pair ) - > {
if ( " b " . equals ( pair . getKey ( ) ) ) {
pair . setValue ( pair . getValue ( ) + " _edit " ) ;
}