aboutsummaryrefslogtreecommitdiffstats
path: root/src/test/java/org/berzerkula/builddb/BuilddbApplicationPkgTests.java
blob: 98272f6de54e82faadccecf46f44bb3f496b57f2 (plain)
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
package org.berzerkula.builddb;

import org.berzerkula.builddb.models.Pkg;
import org.berzerkula.builddb.repositories.TestH2PkgRepository;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.List;

import static org.junit.jupiter.api.Assertions.*;

@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
class BuilddbApplicationPkgTests {

	/*@LocalServerPort
	private int port;

	private String baseUrl = "http://localhost:" + port + "/";
	private String basePkgUrl = "http://localhost:" + port + "/pkgs";*/

	private Integer pkgSeq = 123;
	private String pkgName = "test";
	private String pkgVersion = "1.2.3-test";
	private String pkgConfigure = "./configure --prefix=/opt/test";
	private String pkgBuild = "make test";
	private String pkgInstall = "make install-test";
	private String pkgSetup = "test setup.";
	private String pkgNotes = "test notes.";
	private String pkgUrl = "http://localhost/test-1.2.3-test.tar.gz";

	@Autowired
	private TestH2PkgRepository h2Repository;

	private Pkg testPkg = new Pkg();

	@BeforeEach
	public void setUp() {
		h2Repository.deleteAll();
		testPkg = setPkgDetails(pkgSeq, pkgName, pkgVersion, pkgConfigure, pkgBuild, pkgInstall, pkgSetup, pkgNotes, pkgUrl);
		h2Repository.save(testPkg);
	}

	@Test
	public void testAddPkg() {
		testPkg = setPkgDetails(pkgSeq, pkgName, pkgVersion, pkgConfigure, pkgBuild, pkgInstall, pkgSetup, pkgNotes, pkgUrl);
		h2Repository.save(testPkg);
		List<Pkg> responsePkgs = h2Repository.findAll();
		assertNotNull(responsePkgs);
		assertEquals(2, responsePkgs.size());
		assertEquals(pkgSeq, responsePkgs.get(1).getSequence());
		assertEquals(pkgName, responsePkgs.get(1).getName());
		assertEquals(pkgVersion, responsePkgs.get(1).getVersion());
		assertEquals(pkgConfigure, responsePkgs.get(1).getConfigure());
		assertEquals(pkgBuild, responsePkgs.get(1).getBuild());
		assertEquals(pkgInstall, responsePkgs.get(1).getInstall());
		assertEquals(pkgSetup, responsePkgs.get(1).getSetup());
		assertEquals(pkgNotes, responsePkgs.get(1).getNotes());
		assertEquals(pkgUrl, responsePkgs.get(1).getUrl());
	}

	@Test
	public void testGetPkgs() {
		h2Repository.save(testPkg);
		List<Pkg> pkgs = h2Repository.findAll();
		assertEquals(1, pkgs.size());
		assertEquals(1, h2Repository.findAll().size());
	}

	@Test
	public void testUpdatePkg() {
		List<Pkg> pkgs = h2Repository.findAll();
		testPkg = pkgs.get(0);
		testPkg.setSequence(987);
		h2Repository.save(testPkg);

		pkgs = h2Repository.findAll();
		assertEquals(1, pkgs.size());
		assertNotEquals(0, testPkg.getId());
		assertEquals(987, testPkg.getSequence());
	}

	@Test
	public void tsetDeletePkg() {
		List<Pkg> pkgs = h2Repository.findAll();
		testPkg = pkgs.get(0);
		h2Repository.delete(testPkg);
		pkgs = h2Repository.findAll();

		assertEquals(0, pkgs.size());
	}

	private Pkg setPkgDetails(Integer seq, String name, String version, String configure, String build,
							   String install, String setup, String notes, String url) {
		Pkg pkg = new Pkg();
		pkg.setSequence(seq);
		pkg.setName(name);
		pkg.setVersion(version);
		pkg.setConfigure(configure);
		pkg.setBuild(build);
		pkg.setInstall(install);
		pkg.setSetup(setup);
		pkg.setNotes(notes);
		pkg.setUrl(url);
		return pkg;
	}

	@Test
	void contextLoads() {
	}

}