aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/com/juick/tests/JsonTests.java
blob: 795b342971a44764f828ed4afba86d37e6d69ee7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package com.juick.tests;

import com.juick.json.MessageSerializer;
import com.juick.server.MessagesQueries;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.DriverManagerDataSource;

import java.io.FileInputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
import java.util.Properties;

public class JsonTests {

    JdbcTemplate jdbc;
    @Before
    public void setupConnection() {
        Properties conf = new Properties();
        try {
            conf.load(new FileInputStream("/etc/juick/api.conf"));
            DriverManagerDataSource dataSource = new DriverManagerDataSource();
            dataSource.setDriverClassName("com.mysql.jdbc.Driver");
            dataSource.setUrl("jdbc:mysql://localhost/juick?autoReconnect=true&user="
                    + conf.getProperty("mysql_username", "")
                    + "&password=" + conf.getProperty("mysql_password", ""));
            jdbc = new JdbcTemplate(dataSource);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    @Test
    public void CompareSerializers() {
        List<Integer> mids = MessagesQueries.getMyFeed(jdbc, 3694, 2799786);
        MessageSerializer messageSerializer = new MessageSerializer();
        if (mids != null && !mids.isEmpty()) {
            List<com.juick.Message> msgs = MessagesQueries.getMessages(jdbc, mids);
            if (msgs != null && !msgs.isEmpty()) {
                String json = messageSerializer.serializeList(msgs);
                try {
                    String data = new String(Files.readAllBytes(Paths.get("original.json")), "UTF-8");
                    Assert.assertEquals("json should match", data, json);
                } catch (IOException e) {
                    e.printStackTrace();
                }

            }
        }
    }
}