From e8971c84ff78d719b0fea06c8c8f0ad2cdcf08c7 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Mon, 24 Jul 2017 11:38:45 +0300 Subject: move MockUtils to juick-core --- juick-core/build.gradle | 16 ++++++- juick-core/src/test/java/com/juick/UserTest.java | 36 +++++++++++++++ .../test/java/com/juick/test/util/MockUtils.java | 51 ++++++++++++++++++++++ 3 files changed, 101 insertions(+), 2 deletions(-) create mode 100644 juick-core/src/test/java/com/juick/UserTest.java create mode 100644 juick-core/src/test/java/com/juick/test/util/MockUtils.java (limited to 'juick-core') diff --git a/juick-core/build.gradle b/juick-core/build.gradle index c75bc320..ae44f28c 100644 --- a/juick-core/build.gradle +++ b/juick-core/build.gradle @@ -2,13 +2,14 @@ apply plugin: 'java' dependencies { compile "com.fasterxml.jackson.core:jackson-annotations:${rootProject.jacksonVersion}" - compile "org.slf4j:slf4j-api:${rootProject.slf4jVersion}" - compile 'org.apache.httpcomponents:httpclient:4.5.3' compile 'org.apache.commons:commons-lang3:3.6' compile 'org.apache.commons:commons-collections4:4.1' + compile "org.apache.commons:commons-text:1.1" compile 'commons-io:commons-io:2.5' compile 'org.ocpsoft.prettytime:prettytime:4.0.1.Final' + testCompile "com.fasterxml.jackson.core:jackson-core:${rootProject.jacksonVersion}" + testCompile "com.fasterxml.jackson.core:jackson-databind:${rootProject.jacksonVersion}" testCompile "junit:junit:${rootProject.junitVersion}" testCompile "org.hamcrest:hamcrest-all:${rootProject.hamcrestVersion}" } @@ -18,3 +19,14 @@ compileJava.options.encoding = 'UTF-8' configurations { all*.exclude module: 'commons-logging' } + +configurations { + testArtifacts.extendsFrom testRuntime +} +task testJar(type: Jar) { + classifier "test" + from sourceSets.test.output +} +artifacts { + testArtifacts testJar +} diff --git a/juick-core/src/test/java/com/juick/UserTest.java b/juick-core/src/test/java/com/juick/UserTest.java new file mode 100644 index 00000000..13331426 --- /dev/null +++ b/juick-core/src/test/java/com/juick/UserTest.java @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2008-2017, Juick + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ + +package com.juick; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.juick.test.util.MockUtils; +import org.junit.Assert; +import org.junit.Test; + +import java.io.IOException; + +public class UserTest { + @Test + public void userEqualityTest() throws IOException { + User ugnich = MockUtils.mockUser(1, "ugnich", "secret"); + String jsonUser = "{\"uid\" : 1, \"uname\": \"ugnich\"}"; + ObjectMapper jsonMapper = new ObjectMapper(); + User jsonUgnich = jsonMapper.readValue(jsonUser, User.class); + Assert.assertEquals(ugnich, jsonUgnich); + } +} diff --git a/juick-core/src/test/java/com/juick/test/util/MockUtils.java b/juick-core/src/test/java/com/juick/test/util/MockUtils.java new file mode 100644 index 00000000..72204cfe --- /dev/null +++ b/juick-core/src/test/java/com/juick/test/util/MockUtils.java @@ -0,0 +1,51 @@ +/* + * Copyright (C) 2008-2017, Juick + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ + +package com.juick.test.util; + +import com.juick.Message; +import com.juick.User; +import org.apache.commons.text.RandomStringGenerator; + +import java.util.Date; + +/** + * Created by vitalyster on 12.01.2017. + */ +public class MockUtils { + final static RandomStringGenerator generator = new RandomStringGenerator.Builder().withinRange('a', 'z').build(); + public static Message mockMessage(Integer mid, final User user, final String messageText) { + Message msg = new Message(); + + msg.setMid(mid); + msg.setUser(user); + msg.setText(messageText == null ? generator.generate(24) : messageText); + msg.setDate(new Date()); + return msg; + } + + public static User mockUser(final int uid, final String name, final String password) { + User user = new User(); + + user.setName(name); + user.setUid(uid); + user.setCredentials(password); + user.setBanned(false); + + return user; + } +} -- cgit v1.2.3