Skip to content

Commit 950d7b9

Browse files
authored
Migrate from RestartableJenkinsRule to JenkinsSessionRule (#485)
2 parents 5ed27a3 + ae815da commit 950d7b9

File tree

4 files changed

+34
-93
lines changed

4 files changed

+34
-93
lines changed

src/test/java/com/cloudbees/hudson/plugins/folder/ChildNameGeneratorAltTest.java

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,7 @@
5757
import net.sf.json.JSONObject;
5858
import org.junit.Rule;
5959
import org.junit.Test;
60-
import org.junit.runners.model.Statement;
61-
import org.jvnet.hudson.test.RestartableJenkinsRule;
60+
import org.jvnet.hudson.test.JenkinsSessionRule;
6261
import org.jvnet.hudson.test.TestExtension;
6362
import org.kohsuke.stapler.StaplerRequest2;
6463

@@ -79,19 +78,17 @@
7978
public class ChildNameGeneratorAltTest {
8079

8180
@Rule
82-
public RestartableJenkinsRule r = new RestartableJenkinsRule();
81+
public JenkinsSessionRule r = new JenkinsSessionRule();
8382

8483
/**
8584
* Given: a computed folder
8685
* When: creating a new instance
8786
* Then: mangling gets applied
8887
*/
8988
@Test
90-
public void createdFromScratch() {
91-
r.addStep(new Statement() {
92-
@Override
93-
public void evaluate() throws Throwable {
94-
ComputedFolderImpl instance = r.j.jenkins.createProject(ComputedFolderImpl.class, "instance");
89+
public void createdFromScratch() throws Throwable {
90+
r.then(j -> {
91+
ComputedFolderImpl instance = j.createProject(ComputedFolderImpl.class, "instance");
9592
instance.assertItemNames(0);
9693
instance.recompute(Result.SUCCESS);
9794
instance.assertItemNames(1);
@@ -107,17 +104,14 @@ public void evaluate() throws Throwable {
107104
);
108105
instance.recompute(Result.SUCCESS);
109106
checkComputedFolder(instance, 2);
110-
}
111107
});
112-
r.addStep(new Statement() {
113-
@Override
114-
public void evaluate() throws Throwable {
115-
TopLevelItem i = r.j.jenkins.getItem("instance");
108+
r.then(j -> {
109+
TopLevelItem i = j.jenkins.getItem("instance");
116110
assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class));
117111
ComputedFolderImpl instance = (ComputedFolderImpl) i;
118112
checkComputedFolder(instance, 0);
119-
r.j.jenkins.reload();
120-
i = r.j.jenkins.getItem("instance");
113+
j.jenkins.reload();
114+
i = j.jenkins.getItem("instance");
121115
assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class));
122116
instance = (ComputedFolderImpl) i;
123117
checkComputedFolder(instance, 0);
@@ -130,8 +124,6 @@ public void evaluate() throws Throwable {
130124
for (int k = 0; k < items.size(); k++) {
131125
assertSame("Individual items must be the same", items.get(k), newItems.get(k));
132126
}
133-
134-
}
135127
});
136128
}
137129

src/test/java/com/cloudbees/hudson/plugins/folder/ChildNameGeneratorRecTest.java

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -52,12 +52,10 @@
5252
import java.util.Locale;
5353
import java.util.Set;
5454
import java.util.TreeSet;
55-
import edu.umd.cs.findbugs.annotations.NonNull;
5655
import net.sf.json.JSONObject;
5756
import org.junit.Rule;
5857
import org.junit.Test;
59-
import org.junit.runners.model.Statement;
60-
import org.jvnet.hudson.test.RestartableJenkinsRule;
58+
import org.jvnet.hudson.test.JenkinsSessionRule;
6159
import org.jvnet.hudson.test.TestExtension;
6260
import org.kohsuke.stapler.StaplerRequest2;
6361

@@ -77,19 +75,17 @@
7775
public class ChildNameGeneratorRecTest {
7876

7977
@Rule
80-
public RestartableJenkinsRule r = new RestartableJenkinsRule();
78+
public JenkinsSessionRule r = new JenkinsSessionRule();
8179

8280
/**
8381
* Given: a computed folder
8482
* When: creating a new instance
8583
* Then: mangling gets applied
8684
*/
8785
@Test
88-
public void createdFromScratch() {
89-
r.addStep(new Statement() {
90-
@Override
91-
public void evaluate() throws Throwable {
92-
ComputedFolderImpl instance = r.j.jenkins.createProject(ComputedFolderImpl.class, "instance");
86+
public void createdFromScratch() throws Throwable {
87+
r.then(j -> {
88+
ComputedFolderImpl instance = j.createProject(ComputedFolderImpl.class, "instance");
9389
instance.assertItemNames(0);
9490
instance.recompute(Result.SUCCESS);
9591
instance.assertItemNames(1);
@@ -105,23 +101,19 @@ public void evaluate() throws Throwable {
105101
);
106102
instance.recompute(Result.SUCCESS);
107103
checkComputedFolder(instance, 2);
108-
}
109104
});
110-
r.addStep(new Statement() {
111-
@Override
112-
public void evaluate() throws Throwable {
113-
TopLevelItem i = r.j.jenkins.getItem("instance");
105+
r.then(j -> {
106+
TopLevelItem i = j.jenkins.getItem("instance");
114107
assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class));
115108
ComputedFolderImpl instance = (ComputedFolderImpl) i;
116109
checkComputedFolder(instance, 0);
117-
r.j.jenkins.reload();
118-
i = r.j.jenkins.getItem("instance");
110+
j.jenkins.reload();
111+
i = j.jenkins.getItem("instance");
119112
assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class));
120113
instance = (ComputedFolderImpl) i;
121114
checkComputedFolder(instance, 0);
122115
instance.doReload();
123116
checkComputedFolder(instance, 0);
124-
}
125117
});
126118
}
127119

src/test/java/com/cloudbees/hudson/plugins/folder/ChildNameGeneratorTest.java

Lines changed: 9 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,7 @@
5757
import org.apache.commons.lang.StringUtils;
5858
import org.junit.Rule;
5959
import org.junit.Test;
60-
import org.junit.runners.model.Statement;
61-
import org.jvnet.hudson.test.RestartableJenkinsRule;
60+
import org.jvnet.hudson.test.JenkinsSessionRule;
6261
import org.jvnet.hudson.test.TestExtension;
6362
import org.kohsuke.stapler.StaplerRequest2;
6463

@@ -99,19 +98,17 @@
9998
public class ChildNameGeneratorTest {
10099

101100
@Rule
102-
public RestartableJenkinsRule r = new RestartableJenkinsRule();
101+
public JenkinsSessionRule r = new JenkinsSessionRule();
103102

104103
/**
105104
* Given: a computed folder
106105
* When: creating a new instance
107106
* Then: mangling gets applied
108107
*/
109108
@Test
110-
public void createdFromScratch() {
111-
r.addStep(new Statement() {
112-
@Override
113-
public void evaluate() throws Throwable {
114-
ComputedFolderImpl instance = r.j.jenkins.createProject(ComputedFolderImpl.class, "instance");
109+
public void createdFromScratch() throws Throwable {
110+
r.then(j -> {
111+
ComputedFolderImpl instance = j.createProject(ComputedFolderImpl.class, "instance");
115112
instance.assertItemNames(0);
116113
instance.recompute(Result.SUCCESS);
117114
instance.assertItemNames(1);
@@ -127,23 +124,19 @@ public void evaluate() throws Throwable {
127124
);
128125
instance.recompute(Result.SUCCESS);
129126
checkComputedFolder(instance, 2, Normalizer.Form.NFC);
130-
}
131127
});
132-
r.addStep(new Statement() {
133-
@Override
134-
public void evaluate() throws Throwable {
135-
TopLevelItem i = r.j.jenkins.getItem("instance");
128+
r.then(j -> {
129+
TopLevelItem i = j.jenkins.getItem("instance");
136130
assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class));
137131
ComputedFolderImpl instance = (ComputedFolderImpl) i;
138132
checkComputedFolder(instance, 0, Normalizer.Form.NFC);
139-
r.j.jenkins.reload();
140-
i = r.j.jenkins.getItem("instance");
133+
j.jenkins.reload();
134+
i = j.jenkins.getItem("instance");
141135
assertThat("Item loaded from disk", i, instanceOf(ComputedFolderImpl.class));
142136
instance = (ComputedFolderImpl) i;
143137
checkComputedFolder(instance, 0, Normalizer.Form.NFC);
144138
instance.doReload();
145139
checkComputedFolder(instance, 0, Normalizer.Form.NFC);
146-
}
147140
});
148141
}
149142

@@ -270,35 +263,6 @@ private void checkComputedFolder(ComputedFolderImpl instance, int round, Normali
270263
}
271264
}
272265

273-
private Normalizer.Form inferNormalizerForm() {
274-
Normalizer.Form form = null;
275-
File[] contents = r.j.jenkins.getRootDir().listFiles();
276-
if (contents != null) {
277-
for (File f: contents) {
278-
if ("leanbh-c\u00faig.probe".equals(f.getName())) {
279-
form = Normalizer.Form.NFC;
280-
System.out.println("\n\nUsing NFC normalization dataset as underlying filesystem is NFC\n\n");
281-
break;
282-
} else if ("leanbh-c\u00c3\u00baig.probe".equals(f.getName())) {
283-
// Windows-1252
284-
form = Normalizer.Form.NFC;
285-
System.out.println("\n\nUsing NFC normalization dataset as underlying filesystem is Windows-1252 NFC\n\n");
286-
break;
287-
} else if ("leanbh-cu\u0301ig.probe".equals(f.getName())) {
288-
form = Normalizer.Form.NFD;
289-
System.out.println("\n\nUsing NFD normalization dataset as underlying filesystem is NFD\n\n");
290-
break;
291-
} else if ("leanbh-cu\u00cc\ufffdig.probe".equals(f.getName())) {
292-
// Windows-1252
293-
form = Normalizer.Form.NFD;
294-
System.out.println("\n\nUsing NFD normalization dataset as underlying filesystem is Windows-1252 NFD\n\n");
295-
break;
296-
}
297-
}
298-
}
299-
return form;
300-
}
301-
302266
private void checkChild(ComputedFolderImpl instance, String idealName) throws IOException {
303267
String encodedName = encode(idealName);
304268
FreeStyleProject item = instance.getItem(encodedName);

src/test/java/com/cloudbees/hudson/plugins/folder/computed/ComputedFolder2Test.java

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -41,38 +41,31 @@
4141

4242
import org.junit.Rule;
4343
import org.junit.Test;
44-
import org.junit.runners.model.Statement;
4544
import org.jvnet.hudson.test.Issue;
46-
import org.jvnet.hudson.test.RestartableJenkinsRule;
45+
import org.jvnet.hudson.test.JenkinsSessionRule;
4746
import org.jvnet.hudson.test.TestExtension;
4847

4948
public class ComputedFolder2Test {
5049

5150
@Rule
52-
public RestartableJenkinsRule rr = new RestartableJenkinsRule();
51+
public JenkinsSessionRule rr = new JenkinsSessionRule();
5352

5453
@Issue("JENKINS-42593")
5554
@Test
56-
public void eventAfterRestart() {
57-
rr.addStep(new Statement() {
58-
@Override
59-
public void evaluate() throws Throwable {
60-
EventableFolder d = rr.j.jenkins.createProject(EventableFolder.class, "d");
55+
public void eventAfterRestart() throws Throwable {
56+
rr.then(j -> {
57+
EventableFolder d = j.createProject(EventableFolder.class, "d");
6158
d.add("one");
6259
String log = ComputedFolderTest.doRecompute(d, Result.SUCCESS);
6360
assertThat(log, d.getItems(), hasSize(equalTo(1)));
64-
}
6561
});
66-
rr.addStep(new Statement() {
67-
@Override
68-
public void evaluate() throws Throwable {
69-
EventableFolder d = rr.j.jenkins.getItemByFullName("d", EventableFolder.class);
62+
rr.then(j -> {
63+
EventableFolder d = j.jenkins.getItemByFullName("d", EventableFolder.class);
7064
assertNotNull(d);
7165
assertThat(d.getItems(), hasSize(equalTo(1)));
7266
d.add("two");
7367
String log = ComputedFolderTest.doRecompute(d, Result.SUCCESS);
7468
assertThat(log, d.getItems(), hasSize(equalTo(1)));
75-
}
7669
});
7770
}
7871

0 commit comments

Comments
 (0)