Skip to content

Commit 13975dc

Browse files
committed
L12
1 parent a6e82af commit 13975dc

6 files changed

Lines changed: 144 additions & 0 deletions

File tree

JavaCore2.iml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
<orderEntry type="library" scope="TEST" name="Maven: org.apache.sling:org.apache.sling.javax.activation:0.1.0" level="project" />
2525
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:activation:1.1.1" level="project" />
2626
<orderEntry type="library" scope="TEST" name="Maven: org.codehaus.groovy:groovy-json:3.0.2" level="project" />
27+
<orderEntry type="library" name="Maven: org.mariadb.jdbc:mariadb-java-client:2.6.0" level="project" />
2728
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-java:3.141.59" level="project" />
2829
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-api:3.141.59" level="project" />
2930
<orderEntry type="library" name="Maven: org.seleniumhq.selenium:selenium-chrome-driver:3.141.59" level="project" />

pom.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,12 @@
4747
<scope>test</scope>
4848
</dependency>
4949

50+
<dependency>
51+
<groupId>org.mariadb.jdbc</groupId>
52+
<artifactId>mariadb-java-client</artifactId>
53+
<version>2.6.0</version>
54+
</dependency>
55+
5056
<dependency>
5157
<groupId>org.seleniumhq.selenium</groupId>
5258
<artifactId>selenium-java</artifactId>

src/test/java/apiTest/TestDb.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
package apiTest;
2+
3+
import helpers.DbAdapter;
4+
import models.Playlist;
5+
import org.testng.Assert;
6+
import org.testng.annotations.Test;
7+
8+
import java.sql.SQLException;
9+
10+
public class TestDb {
11+
@Test
12+
public void getArtists_ListOfArtistReturned() throws SQLException {
13+
DbAdapter.getArtists();
14+
}
15+
16+
@Test
17+
public void getPlaylists_ListOfPlaylists_returned() throws SQLException {
18+
DbAdapter.getAllPlaylists();
19+
}
20+
21+
@Test
22+
public void getSinglePlaylistById() throws SQLException {
23+
Playlist pl = DbAdapter.getPlaylistsById(19);
24+
Assert.assertEquals(pl.name,"Dima");
25+
}
26+
}
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
package helpers;
2+
3+
import models.Artist;
4+
import models.Playlist;
5+
6+
import java.sql.*;
7+
import java.util.ArrayList;
8+
import java.util.List;
9+
10+
public class DbAdapter {
11+
static final String JDBC_DRIVER = "org.mariadb.jdbc.Driver";
12+
static final String DB_URL = "jdbc:mariadb://koelapp.testpro.io/dbkoel";
13+
static final String USER = "dbuser02";
14+
static final String PASS = "pa$$02";
15+
16+
static Connection conn = null;
17+
static Statement stmt = null;
18+
19+
public static List<Artist> getArtists() throws SQLException {
20+
List<Artist> artists = new ArrayList<Artist>();
21+
try {
22+
Class.forName(JDBC_DRIVER);
23+
conn = DriverManager.getConnection(DB_URL, USER, PASS);
24+
stmt = conn.createStatement();
25+
26+
String sqlQuery = "SELECT * FROM artists";
27+
ResultSet rs = stmt.executeQuery(sqlQuery);
28+
while (rs.next()) {
29+
String name = rs.getString("name");
30+
int id = rs.getInt("id");
31+
32+
Artist artist = new Artist(id,name);
33+
artists.add(artist);
34+
}
35+
} catch (SQLException | ClassNotFoundException err) {
36+
err.printStackTrace();
37+
} finally {
38+
if (conn != null) {
39+
conn.close();
40+
}
41+
}
42+
return artists;
43+
}
44+
45+
public static List<Playlist> getAllPlaylists() throws SQLException {
46+
List<Playlist> playlists = new ArrayList<Playlist>();
47+
try {
48+
Class.forName(JDBC_DRIVER);
49+
conn = DriverManager.getConnection(DB_URL, USER, PASS);
50+
stmt = conn.createStatement();
51+
52+
String sqlQuery = "SELECT * FROM playlists";
53+
ResultSet rs = stmt.executeQuery(sqlQuery);
54+
while (rs.next()) {
55+
String name = rs.getString("name");
56+
int id = rs.getInt("id");
57+
58+
Playlist playlist = new Playlist(id,name);
59+
playlists.add(playlist);
60+
}
61+
} catch (SQLException | ClassNotFoundException err) {
62+
err.printStackTrace();
63+
} finally {
64+
if (conn != null) {
65+
conn.close();
66+
}
67+
}
68+
return playlists;
69+
}
70+
71+
public static Playlist getPlaylistsById(int id) throws SQLException {
72+
Playlist returnedPlaylist = new Playlist();
73+
try {
74+
Class.forName(JDBC_DRIVER);
75+
conn = DriverManager.getConnection(DB_URL, USER, PASS);
76+
stmt = conn.createStatement();
77+
78+
String sqlQuery = "SELECT id, name FROM playlists WHERE id="+id;
79+
List<Playlist> pls = new ArrayList<>();
80+
ResultSet rs = stmt.executeQuery(sqlQuery);
81+
while (rs.next()) {
82+
String name = rs.getString("name");
83+
84+
Playlist playlist = new Playlist(id,name);
85+
pls.add(playlist);
86+
}
87+
returnedPlaylist = pls.get(0);
88+
} catch (SQLException | ClassNotFoundException err) {
89+
err.printStackTrace();
90+
} finally {
91+
if (conn != null) {
92+
conn.close();
93+
}
94+
}
95+
return returnedPlaylist;
96+
}
97+
}

src/test/java/models/Artist.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,9 @@
33
public class Artist {
44
public int id;
55
public String name;
6+
7+
public Artist(int id, String name) {
8+
this.id = id;
9+
this.name = name;
10+
}
611
}

src/test/java/models/Playlist.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,13 @@ public class Playlist {
55
public String name;
66
public String[] rules;
77
public boolean is_smart;
8+
9+
public Playlist(int id, String name) {
10+
this.id = id;
11+
this.name = name;
12+
}
13+
14+
public Playlist() {
15+
16+
}
817
}

0 commit comments

Comments
 (0)