Skip to content

Commit bf3b409

Browse files
author
Marcus Linke
committed
Merge branch 'Vlatombe-filters-implements-equals-hashcode't push origin master
2 parents 12a0bb3 + 95796f6 commit bf3b409

File tree

4 files changed

+79
-1
lines changed

4 files changed

+79
-1
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ Change Log
22
===
33
Latest SNAPSHOT version
44
---
5+
* [#335] (https://github.com/docker-java/docker-java/pull/335) Improve backward-compatibility support for older API versions
56
* [#333] (https://github.com/docker-java/docker-java/pull/333) Adding support for withPidMode
67

78
v2.1.1

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@
6262

6363
<!-- test dependencies -->
6464
<logback.version>1.1.0</logback.version>
65-
<testng.version>5.12.1</testng.version>
65+
<testng.version>6.1.1</testng.version>
6666
<hamcrest.library.version>1.3</hamcrest.library.version>
6767
<hamcrest.jpa-matchers>1.6</hamcrest.jpa-matchers>
6868
<lambdaj.version>2.3.3</lambdaj.version>

src/main/java/com/github/dockerjava/api/model/Filters.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,24 @@ private static List<String> labelsMapToList(Map<String, String> labels) {
9292
return result;
9393
}
9494

95+
@Override
96+
public boolean equals(Object o) {
97+
if (this == o)
98+
return true;
99+
if (o == null || getClass() != o.getClass())
100+
return false;
101+
102+
Filters filters1 = (Filters) o;
103+
104+
return filters.equals(filters1.filters);
105+
106+
}
107+
108+
@Override
109+
public int hashCode() {
110+
return filters.hashCode();
111+
}
112+
95113
@Override
96114
public String toString() {
97115
try {
@@ -100,4 +118,5 @@ public String toString() {
100118
throw new RuntimeException(e);
101119
}
102120
}
121+
103122
}
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package com.github.dockerjava.api.model;
2+
3+
import com.google.common.collect.Maps;
4+
import org.testng.annotations.Test;
5+
6+
import java.util.Map;
7+
8+
import static org.testng.Assert.*;
9+
10+
/**
11+
* @author Vincent Latombe <vincent@latombe.net>
12+
*/
13+
public class FiltersTest {
14+
15+
@Test
16+
public void newFiltersShouldBeEquals() {
17+
assertEquals(new Filters(), new Filters());
18+
}
19+
20+
@Test
21+
public void newFiltersShouldHaveEqualHashcode() {
22+
assertEquals(new Filters().hashCode(), new Filters().hashCode());
23+
}
24+
25+
@Test
26+
public void filtersWithEqualContentShouldBeEquals() {
27+
assertEquals(new Filters().withContainers("foo"), new Filters().withContainers("foo"));
28+
assertEquals(new Filters().withLabels("alpha=val"), new Filters().withLabels("alpha=val"));
29+
}
30+
31+
@Test
32+
public void filtersWithEqualContentShouldHaveEqualHashcode() {
33+
assertEquals(new Filters().withContainers("foo").hashCode(), new Filters().withContainers("foo").hashCode());
34+
assertEquals(new Filters().withLabels("alpha=val").hashCode(), new Filters().withLabels("alpha=val").hashCode());
35+
}
36+
37+
@Test
38+
public void withLabelsMapShouldBeEqualsToVarargs() {
39+
Map<String, String> map = Maps.newHashMap();
40+
map.put("alpha", "val");
41+
assertEquals(new Filters().withLabels("alpha=val"), new Filters().withLabels(map));
42+
43+
map = Maps.newHashMap();
44+
map.put("alpha", "val");
45+
map.put("beta", "val1");
46+
assertEquals(new Filters().withLabels("alpha=val", "beta=val1"), new Filters().withLabels(map));
47+
}
48+
49+
@Test
50+
public void filtersWithDifferentContentShouldntBeEquals() {
51+
assertNotEquals(new Filters().withContainers("foo"), new Filters().withContainers("bar"));
52+
}
53+
54+
@Test
55+
public void filtersWithDifferentContentShouldntHaveEqualHashcode() {
56+
assertNotEquals(new Filters().withContainers("foo").hashCode(), new Filters().withContainers("bar").hashCode());
57+
}
58+
}

0 commit comments

Comments
 (0)