Skip to content
This repository was archived by the owner on Jan 5, 2019. It is now read-only.

Commit 30b551e

Browse files
committed
Add smoke tests, re-add slf4j for test logging
1 parent b5bf033 commit 30b551e

6 files changed

Lines changed: 76 additions & 6 deletions

File tree

Jenkinsfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,5 @@ pipeline {
2222

2323
def mvn(String goals) {
2424
def mvnHome = tool 'Maven 3'
25-
sh "'${mvnHome}/bin/mvn' -Dmaven.test.failure.ignore $goals"
25+
sh "'${mvnHome}/bin/mvn' -Dmaven.test.failure.ignore -Djavarant.test.smoke $goals"
2626
}

pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<!-- Dependencies -->
4242
<jackson.version>2.8.9</jackson.version>
4343
<fluent.version>4.5.3</fluent.version>
44+
<slf4j.version>1.7.25</slf4j.version>
4445
<guice.version>4.1.0</guice.version>
4546
<testng.version>6.11</testng.version>
4647
<wiremock.version>2.7.1</wiremock.version>
@@ -83,6 +84,12 @@
8384
<version>${wiremock.version}</version>
8485
<scope>test</scope>
8586
</dependency>
87+
<dependency>
88+
<groupId>org.slf4j</groupId>
89+
<artifactId>slf4j-simple</artifactId>
90+
<version>${slf4j.version}</version>
91+
<scope>test</scope>
92+
</dependency>
8693
</dependencies>
8794

8895
<!-- Distribution management for OSSRH -->

src/main/java/com/scorpiac/javarant/DevRant.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class DevRant {
1515
private final DevRantAuth devRantAuth;
1616

1717
private RequestHandler requestHandler;
18-
Auth auth;
18+
private Auth auth;
1919

2020
static {
2121
INJECTOR = Guice.createInjector();
@@ -40,6 +40,14 @@ RequestHandler getRequestHandler() {
4040
return requestHandler;
4141
}
4242

43+
Auth getAuthObject() {
44+
return auth;
45+
}
46+
47+
void setAuthObject(Auth auth) {
48+
this.auth = auth;
49+
}
50+
4351
/**
4452
* Access the devRant feed.
4553
*

src/main/java/com/scorpiac/javarant/DevRantAuth.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ public Comment voteComment(int id, Vote vote) {
4646

4747
private NameValuePair[] getParameters(List<NameValuePair> params) {
4848
// Add the auth parameters.
49-
params.add(new BasicNameValuePair("token_id", devRant.auth.getId()));
50-
params.add(new BasicNameValuePair("token_key", devRant.auth.getKey()));
51-
params.add(new BasicNameValuePair("user_id", devRant.auth.getUserId()));
49+
params.add(new BasicNameValuePair("token_id", devRant.getAuthObject().getId()));
50+
params.add(new BasicNameValuePair("token_key", devRant.getAuthObject().getKey()));
51+
params.add(new BasicNameValuePair("user_id", devRant.getAuthObject().getUserId()));
5252

5353
return params.toArray(new NameValuePair[0]);
5454
}

src/test/java/com/scorpiac/javarant/DevRantAuthIT.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public class DevRantAuthIT extends ITHelper {
1313

1414
@BeforeClass
1515
public void login() {
16-
devRant.auth = new Auth("123", "t0k3n", "456");
16+
devRant.setAuthObject(new Auth("123", "t0k3n", "456"));
1717
authBody = "token_id=123&token_key=t0k3n&user_id=456";
1818
}
1919

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
package com.scorpiac.javarant;
2+
3+
import org.testng.SkipException;
4+
import org.testng.annotations.BeforeClass;
5+
import org.testng.annotations.Test;
6+
7+
import java.util.UUID;
8+
9+
import static org.testng.Assert.*;
10+
11+
public class DevRantSmokeTestIT {
12+
private final DevRant devRant = new DevRant();
13+
14+
@BeforeClass
15+
public void checkShouldTest() {
16+
if (System.getProperty("javarant.test.smoke") == null) {
17+
throw new SkipException("Property 'javarant.test.smoke' is not set, skipping smoke tests.");
18+
}
19+
}
20+
21+
@Test
22+
public void testGetRant() {
23+
Rant rant = devRant.getRant(892667);
24+
25+
assertEquals(rant.getId(), 892667);
26+
assertEquals(rant.getUser().getUsername(), "LucaScorpion");
27+
assertNotNull(rant.getImage());
28+
}
29+
30+
@Test(expectedExceptions = NoSuchRantException.class, expectedExceptionsMessageRegExp = ".*123.*")
31+
public void testGetRantInvalid() {
32+
devRant.getRant(123);
33+
}
34+
35+
@Test
36+
public void testGetUserByUsername() {
37+
User user = devRant.getUser("LucaScorpion");
38+
39+
assertEquals(user.getUsername(), "LucaScorpion");
40+
assertEquals(user.getId(), 102959);
41+
assertFalse(user.getRants().isEmpty());
42+
assertTrue(user.getRantsCount() > 0);
43+
}
44+
45+
@Test(expectedExceptions = NoSuchUserException.class, expectedExceptionsMessageRegExp = ".*'This-is-a-non-existing-username.*'.*")
46+
public void testGetUserByUsernameInvalid() {
47+
// Add some randomness in case someone wants to fuck this test by registering this username.
48+
devRant.getUser("This-is-a-non-existing-username-" + UUID.randomUUID().toString());
49+
}
50+
51+
@Test(expectedExceptions = NoSuchUserException.class, expectedExceptionsMessageRegExp = ".*123.*")
52+
public void testGetUserInvalid() {
53+
devRant.getUser(123);
54+
}
55+
}

0 commit comments

Comments
 (0)