public void testDataCompatibilityWithHostNameWithWhitespace() throws Exception { DumbSlave slave = new DumbSlave( "abc def (xyz) : test", "dummy", createTmpDir().getPath(), "1", Mode.NORMAL, "", createComputerLauncher(null), RetentionStrategy.NOOP, Collections.EMPTY_LIST); jenkins.addNode(slave); FreeStyleProject p = createFreeStyleProject(); p.setAssignedLabel(jenkins.getLabel("abc def")); assertEquals("abc def", p.getAssignedLabel().getName()); assertEquals("\"abc def\"", p.getAssignedLabel().getExpression()); // expression should be persisted, not the name Field f = AbstractProject.class.getDeclaredField("assignedNode"); f.setAccessible(true); assertEquals("\"abc def\"", f.get(p)); // but if the name is set, we'd still like to parse it f.set(p, "a:b c"); assertEquals("a:b c", p.getAssignedLabel().getName()); }