Package org.jvnet.hudson.test
Class MockFolder
- java.lang.Object
-
- hudson.model.AbstractModelObject
-
- hudson.model.Actionable
-
- hudson.model.AbstractItem
-
- org.jvnet.hudson.test.MockFolder
-
- All Implemented Interfaces:
hudson.ExtensionPoint
,hudson.model.Describable<hudson.model.TopLevelItem>
,hudson.model.DescriptorByNameOwner
,hudson.model.Item
,hudson.model.ItemGroup<hudson.model.TopLevelItem>
,hudson.model.ModelObject
,hudson.model.ModifiableItemGroup<hudson.model.TopLevelItem>
,hudson.model.ModifiableViewGroup
,hudson.model.PersistenceRoot
,hudson.model.Saveable
,hudson.model.TopLevelItem
,hudson.model.ViewGroup
,hudson.search.SearchableModelObject
,hudson.search.SearchItem
,hudson.security.AccessControlled
,jenkins.model.DirectlyModifiableTopLevelItemGroup
,jenkins.model.ModelObjectWithContextMenu
,jenkins.model.ModifiableTopLevelItemGroup
,jenkins.util.io.OnMaster
,org.kohsuke.stapler.HttpDeletable
,org.kohsuke.stapler.StaplerFallback
,org.kohsuke.stapler.StaplerProxy
- Direct Known Subclasses:
SecuredMockFolder
public class MockFolder extends hudson.model.AbstractItem implements jenkins.model.DirectlyModifiableTopLevelItemGroup, hudson.model.TopLevelItem, hudson.model.ModifiableViewGroup, org.kohsuke.stapler.StaplerFallback
Minimal implementation of a modifiable item group akin to the CloudBees Folders plugin. No UI, just enough implementation to test functionality of code which should deal with item full names, etc.If you need to work with the UI during the test, or just prefer to depend on a plugin POM earlier than this class, you can simply add a test dependency on
cloudbees-folder
to your plugin and usejenkinsRule.jenkins.createProject(Folder.class, "name")
.- Since:
- 1.494
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MockFolder.DescriptorImpl
-
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
hudson.ExtensionPoint.LegacyInstancesAreScopedToHudson
-
Nested classes/interfaces inherited from interface jenkins.model.ModelObjectWithContextMenu
jenkins.model.ModelObjectWithContextMenu.ContextMenu, jenkins.model.ModelObjectWithContextMenu.ContextMenuVisibility, jenkins.model.ModelObjectWithContextMenu.MenuItem, jenkins.model.ModelObjectWithContextMenu.MenuItemType
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
MockFolder(hudson.model.ItemGroup parent, String name)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <I extends hudson.model.TopLevelItem>
Iadd(I item, String name)
void
addView(hudson.model.View view)
boolean
canAdd(hudson.model.TopLevelItem item)
boolean
canDelete(hudson.model.View view)
<T extends hudson.model.TopLevelItem>
Tcopy(T src, String name)
hudson.model.TopLevelItem
createProject(hudson.model.TopLevelItemDescriptor type, String name, boolean notify)
<T extends hudson.model.TopLevelItem>
TcreateProject(Class<T> type, String name)
Convenience method to create aFreeStyleProject
or similar.hudson.model.TopLevelItem
createProjectFromXML(String name, InputStream xml)
void
deleteView(hudson.model.View view)
hudson.model.TopLevelItem
doCreateItem(org.kohsuke.stapler.StaplerRequest req, org.kohsuke.stapler.StaplerResponse rsp)
Collection<? extends hudson.model.Job>
getAllJobs()
hudson.model.TopLevelItemDescriptor
getDescriptor()
hudson.model.TopLevelItem
getItem(String name)
hudson.model.ItemGroup<? extends hudson.model.TopLevelItem>
getItemGroup()
Collection<hudson.model.TopLevelItem>
getItems()
hudson.model.TopLevelItem
getJob(String name)
Same asgetItem(java.lang.String)
but named this way as aWebMethod
.hudson.model.View
getPrimaryView()
File
getRootDirFor(hudson.model.TopLevelItem child)
Object
getStaplerFallback()
String
getUrlChildPrefix()
hudson.model.View
getView(String name)
List<hudson.model.Action>
getViewActions()
Collection<hudson.model.View>
getViews()
hudson.views.ViewsTabBar
getViewsTabBar()
boolean
isNameEditable()
void
onCopiedFrom(hudson.model.Item src)
void
onDeleted(hudson.model.TopLevelItem item)
void
onLoad(hudson.model.ItemGroup<? extends hudson.model.Item> parent, String name)
void
onRenamed(hudson.model.TopLevelItem item, String oldName, String newName)
void
onViewRenamed(hudson.model.View view, String oldName, String newName)
void
remove(hudson.model.TopLevelItem item)
void
renameTo(String newName)
-
Methods inherited from class hudson.model.AbstractItem
checkRename, delete, delete, doCheckNewName, doConfigDotXml, doConfirmRename, doDoDelete, doReload, doSetName, doSubmitDescription, getAbsoluteUrl, getACL, getApi, getConfigFile, getDescription, getDisplayName, getDisplayNameOrNull, getFullDisplayName, getFullName, getName, getParent, getPronoun, getRelativeDisplayNameFrom, getRelativeNameFromGroup, getRootDir, getSearchName, getSearchUrl, getShortUrl, getTarget, getTaskNoun, getUrl, movedTo, performDelete, resolveForCLI, save, setDescription, setDisplayName, setDisplayNameOrNull, toString, updateByXml, updateByXml, writeConfigDotXml, writeReplace
-
Methods inherited from class hudson.model.Actionable
addAction, addOrReplaceAction, doContextMenu, getAction, getAction, getActions, getActions, getAllActions, getDynamic, removeAction, removeActions, replaceAction, replaceActions
-
Methods inherited from class hudson.model.AbstractModelObject
getSearch, getSearchIndex, makeSearchIndex, requirePOST, sendError, sendError, sendError, sendError, sendError
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface hudson.security.AccessControlled
checkAnyPermission, checkPermission, getACL, hasAnyPermission, hasPermission, hasPermission, hasPermission2
-
Methods inherited from interface hudson.model.Item
delete, getAbsoluteUrl, getDisplayName, getFullDisplayName, getFullName, getName, getParent, getRelativeNameFrom, getRelativeNameFrom, getShortUrl, getUrl, onCreatedFromScratch, save
-
Methods inherited from interface hudson.model.ItemGroup
allItems, allItems, allItems, getAllItems, getAllItems, getAllItems, getFullDisplayName, getFullName, getItems, getItemsStream, getItemsStream, getUrl
-
-
-
-
Constructor Detail
-
MockFolder
protected MockFolder(hudson.model.ItemGroup parent, String name)
-
-
Method Detail
-
onLoad
public void onLoad(hudson.model.ItemGroup<? extends hudson.model.Item> parent, String name) throws IOException
- Specified by:
onLoad
in interfacehudson.model.Item
- Overrides:
onLoad
in classhudson.model.AbstractItem
- Throws:
IOException
-
getItems
public Collection<hudson.model.TopLevelItem> getItems()
- Specified by:
getItems
in interfacehudson.model.ItemGroup<hudson.model.TopLevelItem>
-
getItem
public hudson.model.TopLevelItem getItem(String name)
- Specified by:
getItem
in interfacehudson.model.ItemGroup<hudson.model.TopLevelItem>
-
getAllJobs
public Collection<? extends hudson.model.Job> getAllJobs()
- Specified by:
getAllJobs
in interfacehudson.model.Item
- Specified by:
getAllJobs
in classhudson.model.AbstractItem
-
copy
public <T extends hudson.model.TopLevelItem> T copy(T src, String name) throws IOException
- Specified by:
copy
in interfacejenkins.model.ModifiableTopLevelItemGroup
- Throws:
IOException
-
onCopiedFrom
public void onCopiedFrom(hudson.model.Item src)
- Specified by:
onCopiedFrom
in interfacehudson.model.Item
- Overrides:
onCopiedFrom
in classhudson.model.AbstractItem
-
createProjectFromXML
public hudson.model.TopLevelItem createProjectFromXML(String name, InputStream xml) throws IOException
- Specified by:
createProjectFromXML
in interfacejenkins.model.ModifiableTopLevelItemGroup
- Throws:
IOException
-
createProject
public hudson.model.TopLevelItem createProject(hudson.model.TopLevelItemDescriptor type, String name, boolean notify) throws IOException
- Specified by:
createProject
in interfacejenkins.model.ModifiableTopLevelItemGroup
- Throws:
IOException
-
createProject
public <T extends hudson.model.TopLevelItem> T createProject(Class<T> type, String name) throws IOException
Convenience method to create aFreeStyleProject
or similar.- Throws:
IOException
-
doCreateItem
public hudson.model.TopLevelItem doCreateItem(org.kohsuke.stapler.StaplerRequest req, org.kohsuke.stapler.StaplerResponse rsp) throws IOException, javax.servlet.ServletException
- Specified by:
doCreateItem
in interfacehudson.model.ModifiableItemGroup<hudson.model.TopLevelItem>
- Throws:
IOException
javax.servlet.ServletException
-
getUrlChildPrefix
public String getUrlChildPrefix()
- Specified by:
getUrlChildPrefix
in interfacehudson.model.ItemGroup<hudson.model.TopLevelItem>
-
getRootDirFor
public File getRootDirFor(hudson.model.TopLevelItem child)
- Specified by:
getRootDirFor
in interfacehudson.model.ItemGroup<hudson.model.TopLevelItem>
-
onRenamed
public void onRenamed(hudson.model.TopLevelItem item, String oldName, String newName) throws IOException
- Specified by:
onRenamed
in interfacehudson.model.ItemGroup<hudson.model.TopLevelItem>
- Throws:
IOException
-
renameTo
public void renameTo(String newName) throws IOException
- Overrides:
renameTo
in classhudson.model.AbstractItem
- Throws:
IOException
-
onDeleted
public void onDeleted(hudson.model.TopLevelItem item) throws IOException
- Specified by:
onDeleted
in interfacehudson.model.ItemGroup<hudson.model.TopLevelItem>
- Throws:
IOException
-
canAdd
public boolean canAdd(hudson.model.TopLevelItem item)
- Specified by:
canAdd
in interfacejenkins.model.DirectlyModifiableTopLevelItemGroup
-
add
public <I extends hudson.model.TopLevelItem> I add(I item, String name) throws IOException, IllegalArgumentException
- Specified by:
add
in interfacejenkins.model.DirectlyModifiableTopLevelItemGroup
- Throws:
IOException
IllegalArgumentException
-
remove
public void remove(hudson.model.TopLevelItem item) throws IOException, IllegalArgumentException
- Specified by:
remove
in interfacejenkins.model.DirectlyModifiableTopLevelItemGroup
- Throws:
IOException
IllegalArgumentException
-
getDescriptor
public hudson.model.TopLevelItemDescriptor getDescriptor()
- Specified by:
getDescriptor
in interfacehudson.model.Describable<hudson.model.TopLevelItem>
- Specified by:
getDescriptor
in interfacehudson.model.TopLevelItem
-
addView
public void addView(@NonNull hudson.model.View view) throws IOException
- Specified by:
addView
in interfacehudson.model.ModifiableViewGroup
- Throws:
IOException
-
canDelete
public boolean canDelete(hudson.model.View view)
- Specified by:
canDelete
in interfacehudson.model.ViewGroup
-
deleteView
public void deleteView(hudson.model.View view) throws IOException
- Specified by:
deleteView
in interfacehudson.model.ViewGroup
- Throws:
IOException
-
getViews
public Collection<hudson.model.View> getViews()
- Specified by:
getViews
in interfacehudson.model.ViewGroup
-
getView
public hudson.model.View getView(String name)
- Specified by:
getView
in interfacehudson.model.ViewGroup
-
getPrimaryView
public hudson.model.View getPrimaryView()
- Specified by:
getPrimaryView
in interfacehudson.model.ViewGroup
-
onViewRenamed
public void onViewRenamed(hudson.model.View view, String oldName, String newName)
- Specified by:
onViewRenamed
in interfacehudson.model.ViewGroup
-
getViewsTabBar
public hudson.views.ViewsTabBar getViewsTabBar()
- Specified by:
getViewsTabBar
in interfacehudson.model.ViewGroup
-
getItemGroup
public hudson.model.ItemGroup<? extends hudson.model.TopLevelItem> getItemGroup()
- Specified by:
getItemGroup
in interfacehudson.model.ViewGroup
-
getViewActions
public List<hudson.model.Action> getViewActions()
- Specified by:
getViewActions
in interfacehudson.model.ViewGroup
-
getStaplerFallback
public Object getStaplerFallback()
- Specified by:
getStaplerFallback
in interfaceorg.kohsuke.stapler.StaplerFallback
-
getJob
public hudson.model.TopLevelItem getJob(String name)
Same asgetItem(java.lang.String)
but named this way as aWebMethod
.- See Also:
Hudson.getJob(java.lang.String)
-
isNameEditable
public boolean isNameEditable()
- Overrides:
isNameEditable
in classhudson.model.AbstractItem
-
-