├── .gitignore ├── .travis.yml ├── README.md ├── cfg └── resource │ └── thirdparty │ └── docbook │ ├── dtd │ ├── ChangeLog │ ├── README │ ├── calstblx.dtd │ ├── catalog.xml │ ├── dbcentx.mod │ ├── dbgenent.mod │ ├── dbhierx.mod │ ├── dbnotnx.mod │ ├── dbpoolx.mod │ ├── docbook.cat │ ├── docbookx.dtd │ ├── ent │ │ ├── iso-amsa.ent │ │ ├── iso-amsb.ent │ │ ├── iso-amsc.ent │ │ ├── iso-amsn.ent │ │ ├── iso-amso.ent │ │ ├── iso-amsr.ent │ │ ├── iso-box.ent │ │ ├── iso-cyr1.ent │ │ ├── iso-cyr2.ent │ │ ├── iso-dia.ent │ │ ├── iso-grk1.ent │ │ ├── iso-grk2.ent │ │ ├── iso-grk3.ent │ │ ├── iso-grk4.ent │ │ ├── iso-lat1.ent │ │ ├── iso-lat2.ent │ │ ├── iso-num.ent │ │ ├── iso-pub.ent │ │ └── iso-tech.ent │ ├── htmltblx.mod │ └── soextblx.dtd │ ├── easyb_fopdf.xsl │ ├── easyb_xhtml.xsl │ └── xsl │ ├── TODO │ ├── VERSION │ ├── common │ ├── ChangeLog │ ├── af.xml │ ├── ar.xml │ ├── autoidx-ng.xsl │ ├── bg.xml │ ├── bn.xml │ ├── bs.xml │ ├── ca.xml │ ├── common.xsl │ ├── cs.xml │ ├── da.xml │ ├── de.xml │ ├── el.xml │ ├── en.xml │ ├── es.xml │ ├── et.xml │ ├── eu.xml │ ├── fi.xml │ ├── fr.xml │ ├── gentext.xsl │ ├── he.xml │ ├── hr.xml │ ├── hu.xml │ ├── id.xml │ ├── it.xml │ ├── ja.xml │ ├── ko.xml │ ├── l10n.dtd │ ├── l10n.xml │ ├── l10n.xsl │ ├── la.xml │ ├── labels.xsl │ ├── lt.xml │ ├── nl.xml │ ├── nn.xml │ ├── no.xml │ ├── olink.xsl │ ├── pi.xsl │ ├── pl.xml │ ├── pt.xml │ ├── pt_br.xml │ ├── ro.xml │ ├── ru.xml │ ├── sk.xml │ ├── sl.xml │ ├── sr.xml │ ├── sr_Latn.xml │ ├── subtitles.xsl │ ├── sv.xml │ ├── table.xsl │ ├── targetdatabase.dtd │ ├── targets.xsl │ ├── th.xml │ ├── titles.xsl │ ├── tr.xml │ ├── uk.xml │ ├── vi.xml │ ├── xh.xml │ ├── zh_cn.xml │ └── zh_tw.xml │ ├── fo │ ├── ChangeLog │ ├── admon.xsl │ ├── autoidx-ng.xsl │ ├── autoidx.xsl │ ├── autotoc.xsl │ ├── axf.xsl │ ├── biblio.xsl │ ├── block.xsl │ ├── callout.xsl │ ├── component.xsl │ ├── division.xsl │ ├── docbook.xsl │ ├── docbookng.xsl │ ├── ebnf.xsl │ ├── fo-patch-for-fop.xsl │ ├── fo-rtf.xsl │ ├── fo.xsl │ ├── footnote.xsl │ ├── fop.xsl │ ├── formal.xsl │ ├── glossary.xsl │ ├── graphics.xsl │ ├── htmltbl.xsl │ ├── index.xsl │ ├── info.xsl │ ├── inline.xsl │ ├── keywords.xsl │ ├── lists.xsl │ ├── math.xsl │ ├── pagesetup.xsl │ ├── param.ent │ ├── param.xml │ ├── param.xsl │ ├── param.xweb │ ├── passivetex.xsl │ ├── pdf2index │ ├── pi.xsl │ ├── profile-docbook.xsl │ ├── qandaset.xsl │ ├── refentry.xsl │ ├── sections.xsl │ ├── synop.xsl │ ├── table.xsl │ ├── task.xsl │ ├── titlepage.templates.xml │ ├── titlepage.templates.xsl │ ├── titlepage.xsl │ ├── toc.xsl │ ├── verbatim.xsl │ ├── xep.xsl │ └── xref.xsl │ ├── html │ ├── ChangeLog │ ├── admon.xsl │ ├── autoidx-ng.xsl │ ├── autoidx.xsl │ ├── autotoc.xsl │ ├── biblio.xsl │ ├── block.xsl │ ├── callout.xsl │ ├── changebars.xsl │ ├── chunk-code.xsl │ ├── chunk-common.xsl │ ├── chunk.xsl │ ├── chunker.xsl │ ├── chunkfast.xsl │ ├── chunktoc.xsl │ ├── component.xsl │ ├── division.xsl │ ├── docbook.xsl │ ├── docbookng.xsl │ ├── ebnf.xsl │ ├── footnote.xsl │ ├── formal.xsl │ ├── glossary.xsl │ ├── graphics.xsl │ ├── html-rtf.xsl │ ├── html.xsl │ ├── htmltbl.xsl │ ├── index.xsl │ ├── info.xsl │ ├── inline.xsl │ ├── keywords.xsl │ ├── lists.xsl │ ├── maketoc.xsl │ ├── manifest.xsl │ ├── math.xsl │ ├── oldchunker.xsl │ ├── onechunk.xsl │ ├── param.ent │ ├── param.xml │ ├── param.xsl │ ├── param.xweb │ ├── pi.xsl │ ├── profile-chunk-code.xsl │ ├── profile-chunk.xsl │ ├── profile-docbook.xsl │ ├── profile-onechunk.xsl │ ├── qandaset.xsl │ ├── refentry.xsl │ ├── sections.xsl │ ├── synop.xsl │ ├── table.xsl │ ├── task.xsl │ ├── titlepage.templates.xml │ ├── titlepage.templates.xsl │ ├── titlepage.xsl │ ├── toc.xsl │ ├── verbatim.xsl │ └── xref.xsl │ ├── images │ ├── ChangeLog │ ├── blank.png │ ├── caution.gif │ ├── caution.png │ ├── caution.tif │ ├── draft.png │ ├── home.gif │ ├── home.png │ ├── important.gif │ ├── important.png │ ├── important.tif │ ├── logo_easyb.jpg │ ├── next.gif │ ├── next.png │ ├── note.gif │ ├── note.png │ ├── note.tif │ ├── prev.gif │ ├── prev.png │ ├── tip.gif │ ├── tip.png │ ├── tip.tif │ ├── toc-blank.png │ ├── toc-minus.png │ ├── toc-plus.png │ ├── up.gif │ ├── up.png │ ├── warning.gif │ ├── warning.png │ └── warning.tif │ ├── lib │ ├── ChangeLog │ ├── lib.xml │ ├── lib.xsl │ └── lib.xweb │ ├── params │ ├── ChangeLog │ ├── admon.graphics.extension.xml │ ├── admon.graphics.path.xml │ ├── admon.graphics.xml │ ├── admon.style.xml │ ├── admon.textlabel.xml │ ├── admonition.properties.xml │ ├── admonition.title.properties.xml │ ├── alignment.xml │ ├── annotate.toc.xml │ ├── appendix.autolabel.xml │ ├── arbortext.extensions.xml │ ├── article.appendix.title.properties.xml │ ├── author.othername.in.middle.xml │ ├── autotoc.label.separator.xml │ ├── axf.extensions.xml │ ├── base.dir.xml │ ├── biblioentry.item.separator.xml │ ├── bibliography.collection.xml │ ├── bibliography.numbered.xml │ ├── blockquote.properties.xml │ ├── body.font.family.xml │ ├── body.font.master.xml │ ├── body.font.size.xml │ ├── body.margin.bottom.xml │ ├── body.margin.top.xml │ ├── bridgehead.in.toc.xml │ ├── callout.defaultcolumn.xml │ ├── callout.graphics.extension.xml │ ├── callout.graphics.number.limit.xml │ ├── callout.graphics.path.xml │ ├── callout.graphics.xml │ ├── callout.list.table.xml │ ├── callout.unicode.font.xml │ ├── callout.unicode.number.limit.xml │ ├── callout.unicode.start.character.xml │ ├── callout.unicode.xml │ ├── callouts.extension.xml │ ├── chapter.autolabel.xml │ ├── chunk.first.sections.xml │ ├── chunk.quietly.xml │ ├── chunk.section.depth.xml │ ├── chunk.sections.xml │ ├── chunk.separate.lots.xml │ ├── chunk.toc.xml │ ├── chunk.tocs.and.lots.xml │ ├── chunker.output.cdata-section-elements.xml │ ├── chunker.output.doctype-public.xml │ ├── chunker.output.doctype-system.xml │ ├── chunker.output.encoding.xml │ ├── chunker.output.indent.xml │ ├── chunker.output.media-type.xml │ ├── chunker.output.method.xml │ ├── chunker.output.omit-xml-declaration.xml │ ├── chunker.output.standalone.xml │ ├── citerefentry.link.xml │ ├── collect.xref.targets.xml │ ├── column.count.back.xml │ ├── column.count.body.xml │ ├── column.count.front.xml │ ├── column.count.index.xml │ ├── column.count.lot.xml │ ├── column.count.titlepage.xml │ ├── column.gap.back.xml │ ├── column.gap.body.xml │ ├── column.gap.front.xml │ ├── column.gap.index.xml │ ├── column.gap.lot.xml │ ├── column.gap.titlepage.xml │ ├── compact.list.item.spacing.xml │ ├── component.label.includes.part.label.xml │ ├── component.title.properties.xml │ ├── css.decoration.xml │ ├── current.docid.xml │ ├── default.float.class.xml │ ├── default.image.width.xml │ ├── default.table.width.xml │ ├── default.units.xml │ ├── dingbat.font.family.xml │ ├── double.sided.xml │ ├── draft.mode.xml │ ├── draft.watermark.image.xml │ ├── ebnf.assignment.xml │ ├── ebnf.statement.terminator.xml │ ├── ebnf.table.bgcolor.xml │ ├── ebnf.table.border.xml │ ├── eclipse.autolabel.xml │ ├── eclipse.plugin.id.xml │ ├── eclipse.plugin.name.xml │ ├── eclipse.plugin.provider.xml │ ├── emphasis.propagates.style.xml │ ├── entry.propagates.style.xml │ ├── equation.properties.xml │ ├── example.properties.xml │ ├── figure.properties.xml │ ├── firstterm.only.link.xml │ ├── footer.column.widths.xml │ ├── footer.content.properties.xml │ ├── footer.rule.xml │ ├── footers.on.blank.pages.xml │ ├── footnote.font.size.xml │ ├── footnote.number.format.xml │ ├── footnote.number.symbols.xml │ ├── footnote.sep.leader.properties.xml │ ├── fop.extensions.xml │ ├── formal.object.properties.xml │ ├── formal.procedures.xml │ ├── formal.title.placement.xml │ ├── formal.title.properties.xml │ ├── funcsynopsis.decoration.xml │ ├── funcsynopsis.style.xml │ ├── funcsynopsis.tabular.threshold.xml │ ├── function.parens.xml │ ├── generate.id.attributes.xml │ ├── generate.index.xml │ ├── generate.legalnotice.link.xml │ ├── generate.manifest.xml │ ├── generate.meta.abstract.xml │ ├── generate.section.toc.level.xml │ ├── generate.toc.xml │ ├── glossary.as.blocks.xml │ ├── glossary.collection.xml │ ├── glossentry.show.acronym.xml │ ├── glosslist.as.blocks.xml │ ├── glossterm.auto.link.xml │ ├── glossterm.separation.xml │ ├── glossterm.width.xml │ ├── graphic.default.extension.xml │ ├── graphicsize.extension.xml │ ├── header.column.widths.xml │ ├── header.content.properties.xml │ ├── header.rule.xml │ ├── headers.on.blank.pages.xml │ ├── html.base.xml │ ├── html.cellpadding.xml │ ├── html.cellspacing.xml │ ├── html.cleanup.xml │ ├── html.ext.xml │ ├── html.extra.head.links.xml │ ├── html.longdesc.link.xml │ ├── html.longdesc.xml │ ├── html.stylesheet.type.xml │ ├── html.stylesheet.xml │ ├── htmlhelp.alias.file.xml │ ├── htmlhelp.autolabel.xml │ ├── htmlhelp.button.back.xml │ ├── htmlhelp.button.forward.xml │ ├── htmlhelp.button.hideshow.xml │ ├── htmlhelp.button.home.url.xml │ ├── htmlhelp.button.home.xml │ ├── htmlhelp.button.jump1.title.xml │ ├── htmlhelp.button.jump1.url.xml │ ├── htmlhelp.button.jump1.xml │ ├── htmlhelp.button.jump2.title.xml │ ├── htmlhelp.button.jump2.url.xml │ ├── htmlhelp.button.jump2.xml │ ├── htmlhelp.button.locate.xml │ ├── htmlhelp.button.next.xml │ ├── htmlhelp.button.options.xml │ ├── htmlhelp.button.prev.xml │ ├── htmlhelp.button.print.xml │ ├── htmlhelp.button.refresh.xml │ ├── htmlhelp.button.stop.xml │ ├── htmlhelp.button.zoom.xml │ ├── htmlhelp.chm.xml │ ├── htmlhelp.default.topic.xml │ ├── htmlhelp.display.progress.xml │ ├── htmlhelp.encoding.xml │ ├── htmlhelp.enhanced.decompilation.xml │ ├── htmlhelp.enumerate.images.xml │ ├── htmlhelp.force.map.and.alias.xml │ ├── htmlhelp.hhc.binary.xml │ ├── htmlhelp.hhc.folders.instead.books.xml │ ├── htmlhelp.hhc.section.depth.xml │ ├── htmlhelp.hhc.show.root.xml │ ├── htmlhelp.hhc.width.xml │ ├── htmlhelp.hhc.xml │ ├── htmlhelp.hhk.xml │ ├── htmlhelp.hhp.tail.xml │ ├── htmlhelp.hhp.window.xml │ ├── htmlhelp.hhp.windows.xml │ ├── htmlhelp.hhp.xml │ ├── htmlhelp.map.file.xml │ ├── htmlhelp.only.xml │ ├── htmlhelp.remember.window.position.xml │ ├── htmlhelp.show.advanced.search.xml │ ├── htmlhelp.show.favorities.xml │ ├── htmlhelp.show.menu.xml │ ├── htmlhelp.show.toolbar.text.xml │ ├── htmlhelp.title.xml │ ├── htmlhelp.use.hhk.xml │ ├── htmlhelp.window.geometry.xml │ ├── hyphenate.verbatim.xml │ ├── hyphenate.xml │ ├── ignore.image.scaling.xml │ ├── img.src.path.xml │ ├── index.on.role.xml │ ├── index.on.type.xml │ ├── index.prefer.titleabbrev.xml │ ├── index.preferred.page.properties.xml │ ├── informal.object.properties.xml │ ├── informalequation.properties.xml │ ├── informalexample.properties.xml │ ├── informalfigure.properties.xml │ ├── informaltable.properties.xml │ ├── inherit.keywords.xml │ ├── insert.olink.page.number.xml │ ├── insert.olink.pdf.frag.xml │ ├── insert.xref.page.number.xml │ ├── l10n.gentext.default.language.xml │ ├── l10n.gentext.language.xml │ ├── l10n.gentext.use.xref.language.xml │ ├── label.from.part.xml │ ├── line-height.xml │ ├── linenumbering.everyNth.xml │ ├── linenumbering.extension.xml │ ├── linenumbering.separator.xml │ ├── linenumbering.width.xml │ ├── link.mailto.url.xml │ ├── list.block.spacing.xml │ ├── list.item.spacing.xml │ ├── make.graphic.viewport.xml │ ├── make.index.markup.xml │ ├── make.single.year.ranges.xml │ ├── make.valid.html.xml │ ├── make.year.ranges.xml │ ├── manifest.in.base.dir.xml │ ├── manifest.xml │ ├── manual.toc.xml │ ├── marker.section.level.xml │ ├── menuchoice.menu.separator.xml │ ├── menuchoice.separator.xml │ ├── monospace.font.family.xml │ ├── monospace.properties.xml │ ├── monospace.verbatim.properties.xml │ ├── navig.graphics.extension.xml │ ├── navig.graphics.path.xml │ ├── navig.graphics.xml │ ├── navig.showtitles.xml │ ├── nominal.image.depth.xml │ ├── nominal.image.width.xml │ ├── nominal.table.width.xml │ ├── normal.para.spacing.xml │ ├── olink.base.uri.xml │ ├── olink.debug.xml │ ├── olink.doctitle.xml │ ├── olink.fragid.xml │ ├── olink.lang.fallback.sequence.xml │ ├── olink.outline.ext.xml │ ├── olink.properties.xml │ ├── olink.pubid.xml │ ├── olink.resolver.xml │ ├── olink.sysid.xml │ ├── page.height.portrait.xml │ ├── page.height.xml │ ├── page.margin.bottom.xml │ ├── page.margin.inner.xml │ ├── page.margin.outer.xml │ ├── page.margin.top.xml │ ├── page.orientation.xml │ ├── page.width.portrait.xml │ ├── page.width.xml │ ├── paper.type.xml │ ├── para.propagates.style.xml │ ├── part.autolabel.xml │ ├── passivetex.extensions.xml │ ├── phrase.propagates.style.xml │ ├── pixels.per.inch.xml │ ├── points.per.em.xml │ ├── preface.autolabel.xml │ ├── prefer.internal.olink.xml │ ├── preferred.mediaobject.role.xml │ ├── procedure.properties.xml │ ├── process.empty.source.toc.xml │ ├── process.source.toc.xml │ ├── profile.arch.xml │ ├── profile.attribute.xml │ ├── profile.condition.xml │ ├── profile.conformance.xml │ ├── profile.lang.xml │ ├── profile.os.xml │ ├── profile.revision.xml │ ├── profile.revisionflag.xml │ ├── profile.role.xml │ ├── profile.security.xml │ ├── profile.separator.xml │ ├── profile.userlevel.xml │ ├── profile.value.xml │ ├── profile.vendor.xml │ ├── punct.honorific.xml │ ├── qanda.defaultlabel.xml │ ├── qanda.inherit.numeration.xml │ ├── qanda.title.level1.properties.xml │ ├── qanda.title.level2.properties.xml │ ├── qanda.title.level3.properties.xml │ ├── qanda.title.level4.properties.xml │ ├── qanda.title.level5.properties.xml │ ├── qanda.title.level6.properties.xml │ ├── qanda.title.properties.xml │ ├── qandadiv.autolabel.xml │ ├── refentry.generate.name.xml │ ├── refentry.generate.title.xml │ ├── refentry.pagebreak.xml │ ├── refentry.separator.xml │ ├── refentry.title.properties.xml │ ├── refentry.xref.manvolnum.xml │ ├── region.after.extent.xml │ ├── region.before.extent.xml │ ├── root.filename.xml │ ├── root.properties.xml │ ├── rootid.xml │ ├── runinhead.default.title.end.punct.xml │ ├── runinhead.title.end.punct.xml │ ├── sans.font.family.xml │ ├── saxon.callouts.xml │ ├── saxon.character.representation.xml │ ├── saxon.linenumbering.xml │ ├── saxon.tablecolumns.xml │ ├── section.autolabel.max.depth.xml │ ├── section.autolabel.xml │ ├── section.label.includes.component.label.xml │ ├── section.level1.properties.xml │ ├── section.level2.properties.xml │ ├── section.level3.properties.xml │ ├── section.level4.properties.xml │ ├── section.level5.properties.xml │ ├── section.level6.properties.xml │ ├── section.properties.xml │ ├── section.title.level1.properties.xml │ ├── section.title.level2.properties.xml │ ├── section.title.level3.properties.xml │ ├── section.title.level4.properties.xml │ ├── section.title.level5.properties.xml │ ├── section.title.level6.properties.xml │ ├── section.title.properties.xml │ ├── segmentedlist.as.table.xml │ ├── shade.verbatim.style.xml │ ├── shade.verbatim.xml │ ├── show.comments.xml │ ├── show.revisionflag.xml │ ├── sidebar.properties.xml │ ├── simplesect.in.toc.xml │ ├── spacing.paras.xml │ ├── subscript.properties.xml │ ├── superscript.properties.xml │ ├── suppress.footer.navigation.xml │ ├── suppress.header.navigation.xml │ ├── suppress.navigation.xml │ ├── symbol.font.family.xml │ ├── table.borders.with.css.xml │ ├── table.cell.border.color.xml │ ├── table.cell.border.style.xml │ ├── table.cell.border.thickness.xml │ ├── table.cell.padding.xml │ ├── table.entry.padding.xml │ ├── table.footnote.number.format.xml │ ├── table.footnote.number.symbols.xml │ ├── table.frame.border.color.xml │ ├── table.frame.border.style.xml │ ├── table.frame.border.thickness.xml │ ├── table.properties.xml │ ├── table.table.properties.xml │ ├── tablecolumns.extension.xml │ ├── target.database.document.xml │ ├── targets.filename.xml │ ├── template.xml │ ├── tex.math.delims.xml │ ├── tex.math.file.xml │ ├── tex.math.in.alt.xml │ ├── textdata.default.encoding.xml │ ├── textinsert.extension.xml │ ├── title.font.family.xml │ ├── title.margin.left.xml │ ├── toc.indent.width.xml │ ├── toc.list.type.xml │ ├── toc.margin.properties.xml │ ├── toc.max.depth.xml │ ├── toc.section.depth.xml │ ├── ulink.footnote.number.format.xml │ ├── ulink.footnotes.xml │ ├── ulink.hyphenate.xml │ ├── ulink.show.xml │ ├── ulink.target.xml │ ├── use.embed.for.svg.xml │ ├── use.extensions.xml │ ├── use.id.as.filename.xml │ ├── use.id.function.xml │ ├── use.local.olink.style.xml │ ├── use.role.as.xrefstyle.xml │ ├── use.role.for.mediaobject.xml │ ├── use.svg.xml │ ├── variablelist.as.blocks.xml │ ├── variablelist.as.table.xml │ ├── variablelist.max.termlength.xml │ ├── verbatim.properties.xml │ ├── wordml.template.xml │ ├── xep.extensions.xml │ ├── xep.index.item.properties.xml │ ├── xref.label-page.separator.xml │ ├── xref.label-title.separator.xml │ ├── xref.properties.xml │ ├── xref.title-page.separator.xml │ └── xref.with.number.and.title.xml │ ├── template │ ├── ChangeLog │ ├── README │ ├── biblioentry.xsl │ ├── testtemplate.xml │ └── titlepage.xsl │ └── xhtml │ ├── ChangeLog │ ├── admon.xsl │ ├── autoidx-ng.xsl │ ├── autoidx.xsl │ ├── autotoc.xsl │ ├── biblio.xsl │ ├── block.xsl │ ├── callout.xsl │ ├── changebars.xsl │ ├── chunk-code.xsl │ ├── chunk-common.xsl │ ├── chunk.xsl │ ├── chunker.xsl │ ├── chunkfast.xsl │ ├── chunktoc.xsl │ ├── component.xsl │ ├── division.xsl │ ├── docbook.xsl │ ├── docbookng.xsl │ ├── ebnf.xsl │ ├── footnote.xsl │ ├── formal.xsl │ ├── glossary.xsl │ ├── graphics.xsl │ ├── html-rtf.xsl │ ├── html.xsl │ ├── html2xhtml.xsl │ ├── htmltbl.xsl │ ├── index.xsl │ ├── info.xsl │ ├── inline.xsl │ ├── keywords.xsl │ ├── lists.xsl │ ├── maketoc.xsl │ ├── manifest.xsl │ ├── math.xsl │ ├── oldchunker.xsl │ ├── onechunk.xsl │ ├── param.xsl │ ├── pi.xsl │ ├── profile-chunk-code.xsl │ ├── profile-chunk.xsl │ ├── profile-docbook.xsl │ ├── profile-onechunk.xsl │ ├── qandaset.xsl │ ├── refentry.xsl │ ├── sections.xsl │ ├── synop.xsl │ ├── table.xsl │ ├── task.xsl │ ├── titlepage.templates.xsl │ ├── titlepage.xsl │ ├── toc.xsl │ ├── verbatim.xsl │ └── xref.xsl ├── docs ├── dist │ ├── LICENSE │ └── readme.txt ├── docbook │ └── easyb_guide │ │ └── docbook.xml ├── ivy │ └── ivy-doc.xsl ├── team │ └── Easyb Code Standard.xml └── website │ ├── articles.html │ ├── contact.html │ ├── dbunit.html │ ├── default.css │ ├── download.html │ ├── dsls.html │ ├── howtobb.html │ ├── howtos.html │ ├── images │ ├── img01.gif │ ├── img02.jpg │ ├── img03.jpg │ ├── img04.jpg │ ├── img05.jpg │ ├── img06.jpg │ ├── spacer.gif │ └── team │ │ ├── Chris2.jpg │ │ ├── Rod.png │ │ ├── ag.jpg │ │ ├── dw.jpg │ │ ├── je.jpg │ │ └── kb-headshot.jpg │ ├── index.html │ ├── lic.html │ ├── running.html │ ├── source.html │ ├── specexmpls.html │ ├── storyexmpls.html │ ├── team.html │ ├── tutorialstack.html │ └── xmlunit.html ├── pom.xml ├── repository ├── ant-googlecode-0.0.0test.jar └── docbook-dependencies │ ├── avalon-framework-cvs-20020806.jar │ ├── batik.jar │ ├── fop-0.20.5-RFC3066-patched.jar │ ├── jai_codec.jar │ ├── jai_core.jar │ ├── rowan-0.1.jar │ ├── saxon-dbxsl-extensions.jar │ └── saxon.jar └── src ├── main ├── groovy │ └── org │ │ └── easyb │ │ ├── BehaviorCategory.groovy │ │ ├── BehaviorKeywords.groovy │ │ ├── BehaviorStep.groovy │ │ ├── BehaviorStepStack.groovy │ │ ├── ExtensionPoint.groovy │ │ ├── FailureFileConsoleReporter.groovy │ │ ├── IncorrectGrammarException.groovy │ │ ├── SpecificationBinding.groovy │ │ ├── SpecificationKeywords.groovy │ │ ├── StoryBinding.groovy │ │ ├── StoryContext.groovy │ │ ├── StoryKeywords.groovy │ │ ├── StoryProcessing.groovy │ │ ├── ant │ │ ├── AbstractJavaTask.groovy │ │ ├── AbstractStoryTask.groovy │ │ ├── BehaviorRunnerTask.groovy │ │ ├── CommandRunner.groovy │ │ ├── CommandRunnerImpl.groovy │ │ └── Report.groovy │ │ ├── batches │ │ └── BatchManager.groovy │ │ ├── delegates │ │ ├── PlugableDelegate.groovy │ │ ├── RichEnsureDelegate.groovy │ │ └── RichEnsureProxyDelegate.groovy │ │ ├── plugin │ │ ├── BasePlugin.groovy │ │ ├── BehaviorCategorySyntaxExtension.groovy │ │ ├── ClosureAsMapDataParser.groovy │ │ ├── EasybPlugin.groovy │ │ ├── ExampleAsClosureDataParser.groovy │ │ ├── ExampleAsMapDataParser.groovy │ │ ├── ExampleDataParser.groovy │ │ ├── PluginFactory.groovy │ │ ├── PluginLocator.groovy │ │ └── SyntaxExtension.groovy │ │ ├── report │ │ ├── ConsoleWriter.groovy │ │ ├── HtmlReportHelper.groovy │ │ ├── HtmlReportWriter.groovy │ │ ├── JUnitReportWriter.groovy │ │ ├── PrettyPrintReportWriter.groovy │ │ ├── ReportWriter.groovy │ │ ├── TxtReportWriter.groovy │ │ ├── TxtSpecificationReportWriter.groovy │ │ ├── TxtStoryReportWriter.groovy │ │ └── XmlReportWriter.groovy │ │ └── util │ │ ├── BehaviorFileToPathsBuilder.groovy │ │ └── TagRegExHelper.groovy ├── java │ └── org │ │ └── easyb │ │ ├── BehaviorRunner.java │ │ ├── Configuration.java │ │ ├── ConsoleConfigurator.java │ │ ├── FilteredStackTraceConsoleReporter.java │ │ ├── RunnableBehavior.java │ │ ├── StackTraceConsoleReporter.java │ │ ├── delegates │ │ ├── EnsurableFactory.java │ │ ├── EnsuringDelegate.java │ │ ├── NarrativeDelegate.java │ │ └── RichlyEnsurable.java │ │ ├── domain │ │ ├── Behavior.java │ │ ├── BehaviorBase.java │ │ ├── BehaviorFactory.java │ │ ├── GroovyShellConfiguration.java │ │ ├── NarrativePreProcessor.java │ │ ├── SharedBehaviorPreProcessor.java │ │ ├── Specification.java │ │ ├── SpecificationPreProcessor.java │ │ └── Story.java │ │ ├── exception │ │ └── VerificationException.java │ │ ├── listener │ │ ├── BroadcastListener.java │ │ ├── ConsoleReporterListener.java │ │ ├── ExecutionListener.java │ │ ├── ExecutionListenerAdaptor.java │ │ ├── FailureDetector.java │ │ ├── ListenerBuilder.java │ │ ├── ListenerFactory.java │ │ ├── ResultsAmalgamator.java │ │ ├── ResultsCollector.java │ │ └── ResultsReporter.java │ │ ├── result │ │ ├── ReportingTag.java │ │ └── Result.java │ │ └── util │ │ ├── BehaviorStepType.java │ │ ├── CamelCaseConverter.java │ │ ├── PreProcessorable.java │ │ ├── TextDecoder.java │ │ └── Timer.java └── resources │ ├── LICENSE │ ├── META-INF │ └── services │ │ ├── org.codehaus.groovy.transform.ASTTransformation │ │ └── org.easyb.plugin.SyntaxExtension │ ├── readme.txt │ └── reports │ ├── easyb_img01.gif │ ├── easyb_img02.jpg │ ├── easyb_img03.jpg │ ├── easyb_img04.jpg │ ├── easyb_img05.jpg │ ├── easyb_img06.jpg │ ├── easyb_report.css │ ├── easyb_report_main.tmpl │ ├── easyb_report_specifications_list.tmpl │ ├── easyb_report_specifications_list_plain.tmpl │ ├── easyb_report_stories_list.tmpl │ ├── easyb_report_stories_list_plain.tmpl │ ├── easyb_spacer.gif │ └── prototype.js └── test ├── groovy └── org │ └── easyb │ ├── AnotherNoname.groovy │ ├── BeforeClosureSpecification.groovy │ ├── BehaviorCategory.specification │ ├── BehaviorNamingSpecification.groovy │ ├── CamelCase.specification │ ├── ConsoleCounterGetsItRight.story │ ├── EasierDoesItSpecification.groovy │ ├── EasyDoesItSpecification.groovy │ ├── EnsureThrowsSpecification.groovy │ ├── EnsuringHasStory.groovy │ ├── FakeListener.groovy │ ├── IJustNeedClosure.story │ ├── ItClosureSpecification.groovy │ ├── Noname.groovy │ ├── ParallelExecutionSpecs.story │ ├── Pending.story │ ├── SharedBehaviors.story │ ├── WhenEvaluatingEasybResultsKeyword.specification │ ├── WhenEvaluatingGivenClosure.specification │ ├── WhenEvaluatingWhenClosure.specification │ ├── WhenPreProcessingSpecs.specification │ ├── WhenRunningABehavior.story │ ├── WhenRunningNonExecutableType.story │ ├── WhenStartingBehaviorStep.specification │ ├── WhenStoppingBehaviorStep.specification │ ├── WithdrawingFunds.story │ ├── ant │ └── WhenRunningEasybWithAnt.specification │ ├── batches │ └── BatchExecution.specification │ ├── bdd │ ├── issues │ │ ├── ContentsInCollection.story │ │ ├── DoesNotContain.story │ │ ├── GroovyShellConfig.story │ │ ├── Issue102.story │ │ ├── Issue103.specification │ │ ├── Issue103.story │ │ ├── Issue109.story │ │ ├── Issue110and111Story.groovy │ │ ├── Issue129.specification │ │ ├── Issue14Story.groovy │ │ ├── Issue17.story │ │ ├── Issue177.story │ │ ├── Issue18Story.groovy │ │ ├── Issue21Story.groovy │ │ ├── Issue23.story │ │ ├── Issue240StoryRunner.story │ │ ├── Issue240StoryToRun.story │ │ ├── Issue32Story.groovy │ │ ├── Issue78.story │ │ ├── Issue87.story │ │ ├── Issue87Selective.story │ │ ├── Issue87SelectiveCollection.story │ │ ├── Issue87SelectiveLists.story │ │ ├── IssueNotAndNullStory.groovy │ │ ├── IssueWithPendingCounts.story │ │ ├── OrAndQuestions.story │ │ ├── RunningPendingCategories.story │ │ ├── issue117EnsureThrowsList.story │ │ └── space in path │ │ │ └── Issue86.story │ ├── money │ │ └── MoneyStory.groovy │ ├── nounderscores │ │ ├── NarrativeWithoutUnderscores.story │ │ └── SharedBehaviorWithoutUnderscores.story │ ├── prototype │ │ ├── AndChainedFeature.story │ │ ├── CategoriesInAction.story │ │ ├── ComparingQuantities.story │ │ ├── EnhancedEnsure.groovy │ │ ├── EnhancingEnsures.story │ │ ├── ErrorMessageAsParam.story │ │ ├── ExceptionalOccurrence.story │ │ ├── ExtendedCategories.groovy │ │ ├── FixtureFeature.story │ │ ├── IgnoredCounter.story │ │ ├── IgnoredViaRegEx.story │ │ ├── MixinExample.story │ │ ├── NarrativeUsage.story │ │ ├── OneTimeFixtureFeature.story │ │ ├── OneTimeFixtures.story │ │ └── UsingButInsteadOfAnd.story │ ├── reporting │ │ ├── FailureReport.story │ │ ├── TextStoryReportingValidation.story │ │ ├── html │ │ │ ├── HtmlReportingStory.groovy │ │ │ ├── PassingPendingFailing.specification │ │ │ ├── PassingPendingFailingStory.story │ │ │ ├── ScenarioWithExamples.story │ │ │ └── WhenWritingAReportForAScenarioWithExamples.story │ │ ├── junit │ │ │ ├── UnimplementedStoriesShouldBePending.story │ │ │ └── WhenGeneratingJUnitTestReports.story │ │ ├── txt │ │ │ ├── NestedScenarios.story │ │ │ ├── ScenarioWithFailingExamples.story │ │ │ └── TxtReporting.story │ │ └── xml │ │ │ ├── NarrativeMappingScenario.story │ │ │ └── XmlReporting.story │ ├── specification │ │ ├── PendingSpecification.groovy │ │ ├── queue │ │ │ └── QueueSpecification.groovy │ │ ├── stringutil │ │ │ └── StringUtilSpecification.groovy │ │ └── zip │ │ │ └── ZipCodeSpecification.groovy │ └── story │ │ ├── stack │ │ ├── EmptyStackStory.groovy │ │ ├── SingleValueStackStory.groovy │ │ └── TwoValueStackStory.groovy │ │ └── zip │ │ └── ZipCodeStory.groovy │ ├── client │ └── SerializabilityContract.groovy │ ├── delegates │ ├── EasyDelegateSpecification.groovy │ ├── EasybNarrative.story │ └── EnsureUntil.story │ ├── domain │ ├── CategoryNames.story │ ├── RegExCatHelper.story │ └── ReportingTheDirectoryOfAStory.story │ ├── listener │ ├── BehaviorStepAnalysis.story │ ├── StoryListener.story │ ├── WhenBroadcastingEventsSpecification.groovy │ ├── WhenCollectingResults.specification │ └── WhenListeningForFailuresSpecification.groovy │ ├── plugin │ ├── BetterBePlugin.groovy │ ├── ClosureSyntaxExtension.groovy │ ├── ExampleAsClosure.specification │ ├── ExampleAsMap.specification │ ├── ExampleWrapper.groovy │ ├── ExampleWrapperDataParser.groovy │ ├── ExampleWrapperTest.story │ ├── JiraSyntaxExtension.groovy │ ├── NoPlugin.story │ ├── Test2EasybPlugin.groovy │ ├── TestEasybPlugin.groovy │ ├── WhenDeterminingPluginForStory.story │ ├── WhenLocatingPlugin.specification │ └── WhenUsingPlugin.story │ ├── reporting_tags │ ├── BehaviorCategoryEverywhere.story │ ├── EnsureTagsInsertedIntoSpecXml.story │ ├── EnsureTagsInsertedIntoXmlReport.story │ ├── InsertReportingTagsInto.story │ └── InsertReportingTagsIntoSpec.specification │ ├── shared │ ├── MissingSharedScenario.story │ ├── sharedSpec.specification │ ├── sharedTest.story │ ├── specs.shared │ └── stories.shared │ └── where │ ├── ExampleAsClosure.story │ ├── ExampleAsCombined.story │ ├── ExampleAsIgnoredScenario.story │ ├── ExampleAsMap.story │ ├── ExampleAsMultilevelWhere.story │ ├── ExampleAsScenarioClosure.story │ ├── ExampleAsScenarioMap.story │ ├── Issue202.story │ ├── Issue202Example.story │ ├── MultiplePlugins.story │ ├── MultipleTieredPlugins.story │ ├── NoDataIgnored.story │ ├── TieredSharedScenarios.story │ └── WeirdGivenSyntaxInWhere.story ├── java └── org │ └── easyb │ └── bdd │ ├── Person.java │ ├── Queue.java │ ├── Stack.java │ ├── StringUtilPartial.java │ ├── issues │ └── Issue14Stack.java │ ├── money │ └── Money.java │ └── zip │ ├── Validateable.java │ └── ZipCodeValidator.java └── resources ├── 1Story1ScenarioControl.txt ├── 1Story1ScenarioFailureControl.txt └── META-INF └── services ├── org.easyb.plugin.EasybPlugin ├── org.easyb.plugin.ExampleDataParser └── org.easyb.plugin.SyntaxExtension /.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: java 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | easyb-core 2 | ========== 3 | This project contains the main code for easyb. 4 | 5 | Building 6 | -------- 7 | In case you are building a released version of easyb-core, it will be enough to check out this project 8 | only and build it. 9 | 10 | When building SNAPSHOT versions you'll have to checkout and build (mvn install) the following projects before: 11 | - easyb-parent 12 | - easyb-maven-parent 13 | - easyb-ast 14 | - easyb-composite-groovy 15 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/dtd/README: -------------------------------------------------------------------------------- 1 | README for the DocBook XML DTD 2 | 3 | For more information about DocBook, please see 4 | 5 | http://www.oasis-open.org/docbook/ 6 | 7 | Please send all questions, comments, concerns, and bug reports to the 8 | DocBook mailing list: docbook@lists.oasis-open.org 9 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/TODO: -------------------------------------------------------------------------------- 1 | For information about pending DocBook XSL stylesheets feature 2 | requests, see the following: 3 | 4 | http://sourceforge.net/tracker/?atid=373750&group_id=21935&func=browse 5 | http://sourceforge.net/tracker/?atid=516914&group_id=21935&func=browse 6 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/fo/docbookng.xsl: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/html/docbookng.xsl: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/ChangeLog: -------------------------------------------------------------------------------- 1 | 2002-02-11 Norman Walsh 2 | 3 | * draft.png: Updated draft image 4 | 5 | 2002-01-29 Norman Walsh 6 | 7 | * blank.png, draft.png: New file. 8 | 9 | 2001-11-06 Robert Stayton 10 | 11 | * home.gif, next.gif, prev.gif, up.gif: New file. 12 | 13 | 2001-04-02 Norman Walsh 14 | 15 | * caution.gif, caution.png, caution.tif, home.png, important.gif, important.png, important.tif, next.png, note.gif, note.png, note.tif, prev.png, tip.gif, tip.png, tip.tif, toc-blank.png, toc-minus.png, toc-plus.png, up.png, warning.gif, warning.png, warning.tif: 16 | New file. 17 | 18 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/blank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/blank.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/caution.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/caution.gif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/caution.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/caution.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/caution.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/caution.tif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/draft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/draft.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/home.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/home.gif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/home.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/important.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/important.gif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/important.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/important.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/important.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/important.tif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/logo_easyb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/logo_easyb.jpg -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/next.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/next.gif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/next.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/note.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/note.gif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/note.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/note.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/note.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/note.tif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/prev.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/prev.gif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/prev.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/prev.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/tip.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/tip.gif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/tip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/tip.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/tip.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/tip.tif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/toc-blank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/toc-blank.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/toc-minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/toc-minus.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/toc-plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/toc-plus.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/up.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/up.gif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/up.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/warning.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/warning.gif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/warning.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/warning.png -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/images/warning.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/cfg/resource/thirdparty/docbook/xsl/images/warning.tif -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/admon.graphics.extension.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | admon.graphics.extension 4 | string 5 | 6 | 7 | admon.graphics.extension 8 | Extension for admonition graphics 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | Sets the extension to use on admonition graphics. 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/admon.graphics.path.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | admon.graphics.path 4 | string 5 | 6 | 7 | admon.graphics.path 8 | Path to admonition graphics 9 | 10 | 11 | 12 | images/ 13 | 14 | 15 | Description 16 | 17 | Sets the path, probably relative to the directory where the HTML 18 | files are created, to the admonition graphics. 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/admon.graphics.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | admon.graphics 4 | boolean 5 | 6 | 7 | admon.graphics 8 | Use graphics in admonitions? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If true (non-zero), admonitions are presented in an alternate style that uses 20 | a graphic. Default graphics are provided in the distribution. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/admonition.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | admonition.properties 4 | To set the style for admonitions. 5 | 6 | 7 | 8 | 9 | 10 | 11 | Description 12 | How do you want admonitions styled? 13 | Set the font-size, weight, etc. to the style required 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/alignment.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | alignment 4 | 5 | 6 | 7 | alignment 8 | Specify the default text alignment 9 | 10 | 11 | 12 | justify 13 | 14 | 15 | Description 16 | 17 | The default text alignment is used for most body text. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/annotate.toc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | annotate.toc 4 | boolean 5 | 6 | 7 | annotate.toc 8 | Annotate the Table of Contents? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If true, TOCs will be annotated. At present, this just means 18 | that the RefPurpose of RefEntry 19 | TOC entries will be displayed. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/appendix.autolabel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | appendix.autolabel 4 | boolean 5 | 6 | 7 | appendix.autolabel 8 | Are Appendixes automatically enumerated? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If true (non-zero), unlabeled appendixes will be 18 | enumerated. 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/autotoc.label.separator.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | autotoc.label.separator 4 | string 5 | 6 | 7 | autotoc.label.separator 8 | Separator between labels and titles in the ToC 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | String to use to seperate labels and title in a table of contents. 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/base.dir.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | base.dir 4 | 5 | 6 | 7 | base.dir 8 | The base directory of chunks 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If specified, the base.dir identifies 18 | the output directory for chunks. (If not specified, the output directory 19 | is system dependent.) 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/biblioentry.item.separator.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | biblioentry.item.separator 4 | string 5 | 6 | 7 | biblioentry.item.separator 8 | Text to separate bibliography entries 9 | 10 | 11 | 12 | . 13 | 14 | 15 | Description 16 | 17 | Text to separate bibliography entries 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/bibliography.numbered.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | bibliography.numbered 4 | boolean 5 | 6 | 7 | bibliography.numbered 8 | Should bibliography entries be numbered? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero bibliography entries will be numbered 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/body.font.family.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | body.font.family 4 | 5 | 6 | 7 | body.font.family 8 | The default font family for body text 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The body font family is the default font used for text in the page body. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/body.margin.bottom.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | body.margin.bottom 4 | 5 | 6 | 7 | body.margin.bottom 8 | The bottom margin of the body text 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The body bottom margin is the distance from the last line of text 20 | in the page body to the bottom of the region-after. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/body.margin.top.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | body.margin.top 4 | 5 | 6 | 7 | body.margin.top 8 | To specify the size of the top margin of a page 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The body top margin is the distance from the top of the region-before 20 | to the first line of text in the page body. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/callout.graphics.extension.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | callout.graphics.extension 4 | string 5 | 6 | 7 | callout.graphics.extension 8 | Extension for callout graphics 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | Sets the extension to use on callout graphics. 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/callout.graphics.path.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | callout.graphics.path 4 | string 5 | 6 | 7 | callout.graphics.path 8 | Path to callout graphics 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Sets the path, probably relative to the directory where the HTML 20 | files are created, to the callout graphics. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/callout.unicode.font.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | callout.unicode.font 4 | 5 | 6 | 7 | callout.unicode.font 8 | Specify a font for Unicode glyphs 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | The name of the font to specify around Unicode callout glyphs. 18 | If set to the empty string, no font change will occur. 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/chapter.autolabel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | chapter.autolabel 4 | boolean 5 | 6 | 7 | chapter.autolabel 8 | Are chapters automatically enumerated? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If true (non-zero), unlabeled chapters will be enumerated. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/chunk.quietly.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | chunk.quietly 4 | 5 | 6 | 7 | chunk.quietly 8 | Omit the chunked filename messages. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If zero (the default), the XSL processor emits a message naming 20 | each separate chunk filename as it is being output. 21 | If nonzero, then the messages are suppressed. 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/chunk.section.depth.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | chunk.section.depth 4 | integer 5 | 6 | 7 | chunk.section.depth 8 | Depth to which sections should be chunked 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | This parameter sets the depth of section chunking. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/chunk.sections.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | chunk.sections 4 | 5 | 6 | 7 | chunk.sections 8 | Should top-level sections be chunks in their own right? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If non-zero, chunks will be created for top-level 18 | sect1 and section elements in 19 | each component. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.count.back.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.count.back 4 | integer 5 | 6 | 7 | column.count.back 8 | Number of columns on back matter pages 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Number of columns on back matter (appendix, glossary, etc.) pages. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.count.body.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.count.body 4 | integer 5 | 6 | 7 | column.count.body 8 | Number of columns on body pages 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Number of columns on body pages. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.count.front.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.count.front 4 | integer 5 | 6 | 7 | column.count.front 8 | Number of columns on front matter pages 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Number of columns on front matter (dedication, preface, etc.) pages. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.count.index.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.count.index 4 | integer 5 | 6 | 7 | column.count.index 8 | Number of columns on index pages 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Number of columns on index pages. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.count.lot.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.count.lot 4 | integer 5 | 6 | 7 | column.count.lot 8 | Number of columns on a 'List-of-Titles' page 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Number of columns on a page sequence containing the Table of Contents, 20 | List of Figures, etc. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.count.titlepage.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.count.titlepage 4 | integer 5 | 6 | 7 | column.count.titlepage 8 | Number of columns on a title page 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Number of columns on a title page 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.gap.back.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.gap.back 4 | length 5 | 6 | 7 | column.gap.back 8 | Gap between columns in back matter 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Specifies the gap between columns in back matter (if 20 | column.count.back is greater than one). 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.gap.body.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.gap.body 4 | length 5 | 6 | 7 | column.gap.body 8 | Gap between columns in the body 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Specifies the gap between columns in body matter (if 20 | column.count.body is greater than one). 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.gap.front.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.gap.front 4 | length 5 | 6 | 7 | column.gap.front 8 | Gap between columns in the front matter 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Specifies the gap between columns in front matter (if 20 | column.count.front is greater than one). 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.gap.index.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.gap.index 4 | length 5 | 6 | 7 | column.gap.index 8 | Gap between columns in the index 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Specifies the gap between columns in indexes (if 20 | column.count.index is greater than one). 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/column.gap.lot.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | column.gap.lot 4 | length 5 | 6 | 7 | column.gap.lot 8 | Gap between columns on a 'List-of-Titles' page 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Specifies the gap between columns on 'List-of-Titles' pages (if 20 | column.count.lot is greater than one). 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/default.float.class.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | default.float.class 4 | string 5 | 6 | 7 | default.float.class 8 | Specifies the default float class 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | FIXME: 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/dingbat.font.family.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | dingbat.font.family 4 | 5 | 6 | 7 | dingbat.font.family 8 | The font family for copyright, quotes, and other symbols 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The dingbat font family is used for dingbats. If it is defined 20 | as the empty string, no font change is effected around dingbats. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/double.sided.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | double.sided 4 | 5 | 6 | 7 | double.sided 8 | Is the document to be printed double sided? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Double-sided documents are printed with a slightly wider margin 20 | on the binding edge of the page. 21 | 22 | FIXME: The current set of parameters does not take writing direction 23 | into account. 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/draft.watermark.image.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | draft.watermark.image 4 | uri 5 | 6 | 7 | draft.watermark.image 8 | The URI of the image to be used for draft watermarks 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The image to be used for draft watermarks. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/ebnf.table.border.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ebnf.table.border 4 | 5 | 6 | 7 | ebnf.table.border 8 | Selects border on EBNF tables 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | Selects the border on EBNF tables. If non-zero, the tables have 18 | borders, otherwise they don't. 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/eclipse.autolabel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | eclipse.autolabel 4 | boolean 5 | 6 | 7 | eclipse.autolabel 8 | Should tree-like ToC use autonumbering feature? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want to include chapter and section numbers into ToC in 20 | the left panel, set this parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/eclipse.plugin.id.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | eclipse.plugin.id 4 | string 5 | 6 | 7 | eclipse.plugin.id 8 | Eclipse Help plugin id 9 | 10 | 11 | 12 | 13 | com.example.help 14 | 15 | 16 | 17 | Description 18 | 19 | Eclipse Help plugin id. You should change this id to something 20 | unique for each help. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/eclipse.plugin.name.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | eclipse.plugin.name 4 | string 5 | 6 | 7 | eclipse.plugin.name 8 | Eclipse Help plugin name 9 | 10 | 11 | 12 | 13 | DocBook Online Help Sample 14 | 15 | 16 | 17 | Description 18 | 19 | Eclipse Help plugin name. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/eclipse.plugin.provider.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | eclipse.plugin.provider 4 | string 5 | 6 | 7 | eclipse.plugin.provider 8 | Eclipse Help plugin provider name 9 | 10 | 11 | 12 | 13 | Example provider 14 | 15 | 16 | 17 | Description 18 | 19 | Eclipse Help plugin provider name. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/equation.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | equation.properties 4 | Properties associated with a equation 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | Description 14 | 15 | The styling for equations. 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/example.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | example.properties 4 | Properties associated with a example 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | Description 14 | 15 | The styling for examples. 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/figure.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | figure.properties 4 | Properties associated with a figure 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | Description 14 | 15 | The styling for figures. 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/footer.rule.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | footer.rule 4 | boolean 5 | 6 | 7 | footer.rule 8 | Rule over footers? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero, a rule will be drawn above the page footers. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/footers.on.blank.pages.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | footers.on.blank.pages 4 | boolean 5 | 6 | 7 | footers.on.blank.pages 8 | Put footers on blank pages? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero, footers will be placed on blank pages. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/footnote.font.size.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | footnote.font.size 4 | 5 | 6 | 7 | footnote.font.size 8 | The font size for footnotes 9 | 10 | 11 | 12 | 13 | pt 14 | 15 | 16 | 17 | Description 18 | 19 | The footnote font size is used for...footnotes! 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/formal.procedures.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | formal.procedures 4 | boolean 5 | 6 | 7 | formal.procedures 8 | Selects formal or informal procedures 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Formal procedures are numbered and always have a title. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/function.parens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | function.parens 4 | boolean 5 | 6 | 7 | function.parens 8 | Generate parens after a function? 9 | 10 | 11 | 12 | 0 13 | 14 | 15 | Description 16 | 17 | If not 0, the formatting of 18 | a function element will include 19 | generated parenthesis. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/generate.index.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | generate.index 4 | boolean 5 | 6 | 7 | generate.index 8 | Do you want an index? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | Specify if an index should be generated. 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/generate.legalnotice.link.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | generate.legalnotice.link 4 | boolean 5 | 6 | 7 | generate.legalnotice.link 8 | TBD 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | TBD 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/glosslist.as.blocks.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | glosslist.as.blocks 4 | boolean 5 | 6 | 7 | glosslist.as.blocks 8 | Use blocks for glosslists? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | See glossary.as.blocks. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/glossterm.width.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | glossterm.width 4 | length 5 | 6 | 7 | glossterm.width 8 | Width of glossterm in list presentation mode 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | This parameter specifies the width reserved for glossary terms when 20 | a list presentation is used. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/header.rule.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | header.rule 4 | boolean 5 | 6 | 7 | header.rule 8 | Rule under headers? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero, a rule will be drawn below the page headers. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/headers.on.blank.pages.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | headers.on.blank.pages 4 | boolean 5 | 6 | 7 | headers.on.blank.pages 8 | Put headers on blank pages? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero, headers will be placed on blank pages. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/html.base.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | html.base 4 | uri 5 | 6 | 7 | html.base 8 | An HTML base URI 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If html.base is set, it is used for the BASE 18 | element in the HEAD of the HTML documents. 19 | This is useful for dynamically served HTML where the base URI needs 20 | to be shifted. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/html.cellpadding.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | html.cellpadding 4 | integer 5 | 6 | 7 | html.cellpadding 8 | Default value for cellpadding in HTML tables 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If specified, this value will be used as the default cellpadding value 20 | in HTML tables. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/html.cellspacing.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | html.cellspacing 4 | integer 5 | 6 | 7 | html.cellspacing 8 | Default value for cellspacing in HTML tables 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If specified, this value will be used as the default cellspacing value 20 | in HTML tables. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/html.ext.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | html.ext 4 | 5 | 6 | 7 | html.ext 8 | Identifies the extension of generated HTML files 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The extension identified by html.ext will 20 | be used as the filename extension for chunks created by this stylesheet. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/html.stylesheet.type.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | html.stylesheet.type 4 | string 5 | 6 | 7 | html.stylesheet.type 8 | The type of the stylesheet used in the generated HTML 9 | 10 | 11 | 12 | text/css 13 | 14 | 15 | Description 16 | 17 | The type of the stylesheet to place in the HTML link tag. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.alias.file.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.alias.file 4 | string 5 | 6 | 7 | htmlhelp.alias.file 8 | Filename of map file. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Change this parameter if you want different name of map file 20 | than alias.h. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.autolabel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.autolabel 4 | boolean 5 | 6 | 7 | htmlhelp.autolabel 8 | Should tree-like ToC use autonumbering feature? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want to include chapter and section numbers into ToC in 20 | the left panel, set this parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.back.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.back 4 | boolean 5 | 6 | 7 | htmlhelp.button.back 8 | Should be Back button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Back button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.forward.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.forward 4 | boolean 5 | 6 | 7 | htmlhelp.button.forward 8 | Should be Forward button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Forward button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.hideshow.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.hideshow 4 | boolean 5 | 6 | 7 | htmlhelp.button.hideshow 8 | Should be Hide/Show button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Hide/Show button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.home.url.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.home.url 4 | string 5 | 6 | 7 | htmlhelp.button.home.url 8 | URL address of page accessible by Home button 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | URL address of page accessible by Home button. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.home.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.home 4 | boolean 5 | 6 | 7 | htmlhelp.button.home 8 | Should be Home button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Home button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.jump1.title.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.jump1.title 4 | string 5 | 6 | 7 | htmlhelp.button.jump1.title 8 | Title of Jump1 button 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Title of Jump1 button. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.jump1.url.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.jump1.url 4 | string 5 | 6 | 7 | htmlhelp.button.jump1.url 8 | URL address of page accessible by Jump1 button 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | URL address of page accessible by Jump1 button. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.jump1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.jump1 4 | boolean 5 | 6 | 7 | htmlhelp.button.jump1 8 | Should be Jump1 button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Jump1 button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.jump2.title.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.jump2.title 4 | string 5 | 6 | 7 | htmlhelp.button.jump2.title 8 | Title of Jump2 button 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Title of Jump2 button. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.jump2.url.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.jump2.url 4 | string 5 | 6 | 7 | htmlhelp.button.jump2.url 8 | URL address of page accessible by Jump2 button 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | URL address of page accessible by Jump2 button. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.jump2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.jump2 4 | boolean 5 | 6 | 7 | htmlhelp.button.jump2 8 | Should be Jump2 button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Jump2 button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.locate.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.locate 4 | boolean 5 | 6 | 7 | htmlhelp.button.locate 8 | Should be Locate button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Locate button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.next.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.next 4 | boolean 5 | 6 | 7 | htmlhelp.button.next 8 | Should be Next button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Next button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.options.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.options 4 | boolean 5 | 6 | 7 | htmlhelp.button.options 8 | Should be Options button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Options button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.prev.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.prev 4 | boolean 5 | 6 | 7 | htmlhelp.button.prev 8 | Should be Prev button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Prev button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.print.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.print 4 | boolean 5 | 6 | 7 | htmlhelp.button.print 8 | Should be Print button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Print button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.refresh.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.refresh 4 | boolean 5 | 6 | 7 | htmlhelp.button.refresh 8 | Should be Refresh button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Refresh button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.stop.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.stop 4 | boolean 5 | 6 | 7 | htmlhelp.button.stop 8 | Should be Stop button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Stop button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.button.zoom.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.button.zoom 4 | boolean 5 | 6 | 7 | htmlhelp.button.zoom 8 | Should be Zoom button shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want Zoom button shown on toolbar, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.chm.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.chm 4 | string 5 | 6 | 7 | htmlhelp.chm 8 | Filename of output HTML Help file. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Change this parameter if you want different name of result 20 | CHM file than htmlhelp.chm. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.display.progress.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.display.progress 4 | boolean 5 | 6 | 7 | htmlhelp.display.progress 8 | Display compile progress? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | You can swith off display of compile progress by setting this 20 | parameter to 0. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.encoding.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.encoding 4 | string 5 | 6 | 7 | htmlhelp.encoding 8 | Character encoding to use in files for HTML Help compiler. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | HTML Help Compiler is not UTF-8 aware, so you should always use 20 | apropriate single-byte encoding here. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.hhc.section.depth.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.hhc.section.depth 4 | integer 5 | 6 | 7 | htmlhelp.hhc.section.depth 8 | Depth of TOC for sections in a left pane. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Change this parameter if you want shallower ToC in a left pane 20 | of HTML Help viewer. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.hhc.width.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.hhc.width 4 | integer 5 | 6 | 7 | htmlhelp.hhc.width 8 | Width of navigation (ToC) pane 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | This parameter specifies width of ToC pane in pixels. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.hhc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.hhc 4 | string 5 | 6 | 7 | htmlhelp.hhc 8 | Filename of TOC file. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Change this parameter if you want different name of TOC file 20 | than toc.hhc. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.hhk.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.hhk 4 | string 5 | 6 | 7 | htmlhelp.hhk 8 | Filename of index file. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Change this parameter if you want different name of index file 20 | than index.hhk. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.hhp.tail.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.hhp.tail 4 | string 5 | 6 | 7 | htmlhelp.hhp.tail 8 | Additional content for project file. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want to include some additional parameters into project file, 20 | store appropriate part of project file into this parameter. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.hhp.window.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.hhp.window 4 | string 5 | 6 | 7 | htmlhelp.hhp.window 8 | Name of default window. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Name of default window. If empty no [WINDOWS] section will be 20 | added to project file. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.hhp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.hhp 4 | string 5 | 6 | 7 | htmlhelp.hhp 8 | Filename of project file. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Change this parameter if you want different name of project 20 | file than htmlhelp.hhp. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.map.file.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.map.file 4 | string 5 | 6 | 7 | htmlhelp.map.file 8 | Filename of map file. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Change this parameter if you want different name of map file 20 | than context.h. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.show.favorities.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.show.favorities 4 | boolean 5 | 6 | 7 | htmlhelp.show.favorities 8 | Should be favorities tab shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want favorities tab shown in your help, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.show.menu.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.show.menu 4 | boolean 5 | 6 | 7 | htmlhelp.show.menu 8 | Should be menu shown? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If you want application menu in your HTML Help file, turn this 20 | parameter to 1. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.title.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.title 4 | string 5 | 6 | 7 | htmlhelp.title 8 | Title of HTML Help 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Content of this parameter will be used as a title for generated 20 | HTML Help. If empty, title will be automatically taken from document. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/htmlhelp.use.hhk.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | htmlhelp.use.hhk 4 | boolean 5 | 6 | 7 | htmlhelp.use.hhk 8 | Should be index built using HHK file? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero, index is created using HHK file. This provides some 20 | new features. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/hyphenate.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | hyphenate 4 | 5 | 6 | 7 | hyphenate 8 | Specify hyphenation behavior 9 | 10 | 11 | 12 | true 13 | 14 | 15 | Description 16 | 17 | If true, words may be hyphenated. Otherwise, they may not. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/ignore.image.scaling.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ignore.image.scaling 4 | boolean 5 | 6 | 7 | ignore.image.scaling 8 | Tell the stylesheets to ignore the author's image scaling attributes 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero, the scaling attributes on graphics and media objects are 20 | ignored. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/index.prefer.titleabbrev.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | index.prefer.titleabbrev 4 | boolean 5 | 6 | 7 | index.prefer.titleabbrev 8 | Should be abbreviated titles used as back references 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | FIXME: 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/informalequation.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | informalequation.properties 4 | Properties associated with a informalequation 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | Description 14 | 15 | The styling for informalequations. 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/informalexample.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | informalexample.properties 4 | Properties associated with an informalexample 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | Description 14 | 15 | The styling for informalexamples. 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/informalfigure.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | informalfigure.properties 4 | Properties associated with an informalfigure 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | Description 14 | 15 | The styling for informalfigures. 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/line-height.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | line-height 4 | string 5 | 6 | 7 | line-height 8 | Specify the line-height property 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Sets the line-height property. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/linenumbering.everyNth.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | linenumbering.everyNth 4 | integer 5 | 6 | 7 | linenumbering.everyNth 8 | Indicate which lines should be numbered 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If line numbering is enabled, everyNth line will be numbered. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/linenumbering.separator.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | linenumbering.separator 4 | string 5 | 6 | 7 | linenumbering.separator 8 | Specify a separator between line numbers and lines 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | The separator is inserted between line numbers and lines in 18 | the verbatim environment. 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/linenumbering.width.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | linenumbering.width 4 | integer 5 | 6 | 7 | linenumbering.width 8 | Indicates the width of line numbers 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If line numbering is enabled, line numbers will appear right 18 | justified in a field "width" characters wide. 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/link.mailto.url.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | link.mailto.url 4 | string 5 | 6 | 7 | link.mailto.url 8 | Mailto URL for the LINK REL=made HTML HEAD element 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If not the empty string, this address will be used for the 18 | REL=made LINK element in the HTML HEAD. 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/list.item.spacing.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | list.item.spacing 4 | What space do you want between list items? 5 | 6 | 7 | 8 | 9 | 1em 10 | 0.8em 11 | 1.2em 12 | 13 | 14 | Description 15 | Specify what spacing you want between each list item. 16 | 17 | 18 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/make.year.ranges.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | make.year.ranges 4 | boolean 5 | 6 | 7 | make.year.ranges 8 | Collate copyright years into ranges? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If non-zero, copyright years will be collated into ranges. 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/manifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | manifest 4 | string 5 | 6 | 7 | manifest 8 | Name of manifest file 9 | 10 | 11 | 12 | 14 | 15 | 16 | Description 17 | 18 | The name of the file to which a manifest is written (if the 19 | value of the generate.manifest parameter 20 | is non-zero). 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/manual.toc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | manual.toc 4 | string 5 | 6 | 7 | manual.toc 8 | An explicit TOC to be used for the TOC 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The manual.toc identifies an explicit TOC that 20 | will be used for building the printed TOC. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/monospace.font.family.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | monospace.font.family 4 | 5 | 6 | 7 | monospace.font.family 8 | The default font family for monospace environments 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The monospace font family is used for verbatim environments 20 | (program listings, screens, etc.). 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/navig.graphics.extension.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | navig.graphics.extension 4 | string 5 | 6 | 7 | navig.graphics.extension 8 | Extension for navigational graphics 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | Sets the filename extension to use on navigational graphics used 18 | in the headers and footers of chunked HTML. 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/nominal.image.depth.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | nominal.image.depth 4 | length 5 | 6 | 7 | nominal.image.depth 8 | Nominal image depth 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | See nominal.image.width. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/normal.para.spacing.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | normal.para.spacing 4 | What space do you want between normal paragraphs 5 | 6 | 7 | 8 | 9 | 1em 10 | 0.8em 11 | 1.2em 12 | 13 | 14 | Description 15 | Specify the spacing required between normal paragraphs 16 | 17 | 18 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/olink.fragid.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | olink.fragid 4 | string 5 | 6 | 7 | olink.fragid 8 | Names the fragment identifier portion of an OLink resolver query 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | FIXME: 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/olink.outline.ext.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | olink.outline.ext 4 | string 5 | 6 | 7 | olink.outline.ext 8 | The extension of OLink outline files 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | FIXME: 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/olink.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | olink.properties 4 | Properties associated with the cross-reference 5 | text of an olink. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | This attribute set is used on cross reference text 18 | from an olink. It is not applied to the 19 | optional page number or 20 | optional title of the external document. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/olink.pubid.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | olink.pubid 4 | string 5 | 6 | 7 | olink.pubid 8 | Names the public identifier portion of an OLink resolver query 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | FIXME: 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/olink.resolver.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | olink.resolver 4 | 5 | 6 | 7 | olink.resolver 8 | The root name of the OLink resolver (usually a script) 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | FIXME: 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/olink.sysid.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | olink.sysid 4 | string 5 | 6 | 7 | olink.sysid 8 | Names the system identifier portion of an OLink resolver query 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | FIXME: 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/page.margin.bottom.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | page.margin.bottom 4 | 5 | 6 | 7 | page.margin.bottom 8 | The bottom margin of the page 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The bottom page margin is the distance from the bottom of the region-after 20 | to the physical bottom of the page. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/page.margin.top.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | page.margin.top 4 | 5 | 6 | 7 | page.margin.top 8 | The top margin of the page 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The top page margin is the distance from the physical top of the 20 | page to the top of the region-before. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/page.orientation.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | page.orientation 4 | 5 | 6 | 7 | page.orientation 8 | Select the page orientation 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | In portrait orientation, the short edge is horizontal; in 18 | landscape orientation, it is vertical. 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/paper.type.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | paper.type 4 | 5 | 6 | 7 | paper.type 8 | Select the paper type 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | The paper type is a convenient way to specify the paper size. 18 | The list of known paper sizes includes USletter and most of the A, 19 | B, and C sizes. See page.width.portrait, for example. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/part.autolabel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | part.autolabel 4 | boolean 5 | 6 | 7 | part.autolabel 8 | Are parts and references enumerated? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If true (non-zero), unlabeled parts and references will be enumerated. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/points.per.em.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | points.per.em 4 | number 5 | 6 | 7 | points.per.em 8 | Specify the nominal size of an em-space in points 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | FIXME: 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/preface.autolabel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | preface.autolabel 4 | boolean 5 | 6 | 7 | preface.autolabel 8 | Are prefaces enumerated? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If true (non-zero), unlabeled prefaces will be enumerated. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/procedure.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | procedure.properties 4 | Properties associated with a procedure 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | Description 14 | 15 | The styling for procedures. 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/profile.separator.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | profile.separator 4 | string 5 | 6 | 7 | profile.separator 8 | Separator character for compound profile values 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Separator character for compound profile values. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/punct.honorific.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | punct.honorific 4 | string 5 | 6 | 7 | punct.honorific 8 | Punctuation after an honorific in a personal name. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | This parameter specifies the punctuation that should be added after an 20 | honorific in a personal name. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/qandadiv.autolabel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | qandadiv.autolabel 4 | boolean 5 | 6 | 7 | qandadiv.autolabel 8 | Are divisions in QAndASets enumerated? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If true (non-zero), unlabeled qandadivs will be enumerated. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/refentry.separator.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | refentry.separator 4 | boolean 5 | 6 | 7 | refentry.separator 8 | Generate a separator between consecutive RefEntry elements? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If true, a separator will be generated between consecutive 18 | reference pages. 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/region.after.extent.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | region.after.extent 4 | 5 | 6 | 7 | region.after.extent 8 | Specifies the height of the footer. 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The region after extent is the height of the area where footers 20 | are printed. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/region.before.extent.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | region.before.extent 4 | 5 | 6 | 7 | region.before.extent 8 | Specifies the height of the header 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The region before extent is the height of the area where headers 20 | are printed. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/root.filename.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | root.filename 4 | 5 | 6 | 7 | root.filename 8 | Identifies the name of the root HTML file when chunking 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | The root.filename is the base filename for 18 | the chunk created for the root of each document processed. 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/runinhead.default.title.end.punct.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | runinhead.default.title.end.punct 4 | string 5 | 6 | 7 | runinhead.default.title.end.punct 8 | Default punctuation character on a run-in-head 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | FIXME: 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/runinhead.title.end.punct.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | runinhead.title.end.punct 4 | string 5 | 6 | 7 | runinhead.title.end.punct 8 | Characters that count as punctuation on a run-in-head 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | FIXME: 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/sans.font.family.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | sans.font.family 4 | 5 | 6 | 7 | sans.font.family 8 | The default sans-serif font family 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The default sans-serif font family. At the present, this isn't 20 | actually used by the stylesheets. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/saxon.callouts.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | saxon.callouts 4 | boolean 5 | 6 | 7 | saxon.callouts 8 | Enable the callout extension 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | The callouts extension processes areaset 18 | elements in ProgramListingCO and other text-based 19 | callout elements. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/section.autolabel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | section.autolabel 4 | boolean 5 | 6 | 7 | section.autolabel 8 | Are sections enumerated? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If true (non-zero), unlabeled sections will be enumerated. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/segmentedlist.as.table.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | segmentedlist.as.table 4 | boolean 5 | 6 | 7 | segmentedlist.as.table 8 | Format segmented lists as tables? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero, segmentedlists will be formatted as 20 | tables. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/simplesect.in.toc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | simplesect.in.toc 4 | boolean 5 | 6 | 7 | simplesect.in.toc 8 | Should simplesect elements appear in the TOC? 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | If non-zero, simplesects appear in the TOC. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/subscript.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | subscript.properties 4 | 5 | 6 | 7 | subscript.properties 8 | Properties associated with subscripts 9 | 10 | 11 | 12 | 13 | 14 | 75% 15 | 16 | 17 | 18 | 19 | Description 20 | 21 | Specifies styling properties for subscripts. 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/suppress.footer.navigation.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | suppress.footer.navigation 4 | boolean 5 | 6 | 7 | suppress.footer.navigation 8 | Disable footer navigation 9 | 10 | 11 | 12 | 0 13 | 14 | 15 | Description 16 | 17 | 18 | If suppress.footer.navigation is turned on, footer 19 | navigation will be suppressed. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/suppress.header.navigation.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | suppress.header.navigation 4 | boolean 5 | 6 | 7 | suppress.header.navigation 8 | Disable header navigation 9 | 10 | 11 | 12 | 0 13 | 14 | 15 | Description 16 | 17 | 18 | If suppress.header.navigation is turned on, header 19 | navigation will be suppressed. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/suppress.navigation.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | suppress.navigation 4 | boolean 5 | 6 | 7 | suppress.navigation 8 | Disable header and footer navigation 9 | 10 | 11 | 12 | 0 13 | 14 | 15 | Description 16 | 17 | 18 | If suppress.navigation is turned on, header and 19 | footer navigation will be suppressed. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/table.borders.with.css.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | table.borders.with.css 4 | boolean 5 | 6 | 7 | table.borders.with.css 8 | Use CSS to specify table, row, and cell borders? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If true (non-zero), CSS will be used to draw table borders. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/table.cell.border.color.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | table.cell.border.color 4 | 5 | 6 | 7 | table.cell.border.color 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | Description 19 | 20 | FIXME: 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/table.cell.border.style.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | table.cell.border.style 4 | 5 | 6 | 7 | table.cell.border.style 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | FIXME: 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/table.cell.border.thickness.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | table.cell.border.thickness 4 | 5 | 6 | 7 | table.cell.border.thickness 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | FIXME: 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/table.entry.padding.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | table.entry.padding 4 | 5 | 6 | 7 | table.entry.padding 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | FIXME: 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/table.frame.border.color.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | table.frame.border.color 4 | 5 | 6 | 7 | table.frame.border.color 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | Description 19 | 20 | FIXME: 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/table.frame.border.style.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | table.frame.border.style 4 | 5 | 6 | 7 | table.frame.border.style 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | FIXME: 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/table.frame.border.thickness.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | table.frame.border.thickness 4 | 5 | 6 | 7 | table.frame.border.thickness 8 | Specifies the thickness of the frame border 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | Specifies the thickness of the border on the table's frame. 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/template.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | [[NAME]] 4 | 5 | 6 | 7 | [[NAME]] 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | FIXME: 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/textinsert.extension.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | textinsert.extension 4 | boolean 5 | 6 | 7 | textinsert.extension 8 | Enable the textinsert extension element 9 | 10 | 11 | 12 | 13 | 14 | 15 | Description 16 | 17 | The textinsert extension element inserts the contents of a 18 | a file into the result tree (as text). 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/title.font.family.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | title.font.family 4 | 5 | 6 | 7 | title.font.family 8 | The default font family for titles 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | The title font family is used for titles (chapter, section, figure, 20 | etc.) 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/toc.max.depth.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | toc.max.depth 4 | integer 5 | 6 | 7 | toc.max.depth 8 | How maximaly deep should be each TOC? 9 | 10 | 11 | 12 | 8 13 | 14 | 15 | Description 16 | 17 | Specifies the maximal depth of TOC on all levels. 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/toc.section.depth.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | toc.section.depth 4 | integer 5 | 6 | 7 | toc.section.depth 8 | How deep should recursive sections appear 9 | in the TOC? 10 | 11 | 12 | 13 | 2 14 | 15 | 16 | Description 17 | 18 | Specifies the depth to which recursive sections should appear in the 19 | TOC. 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/ulink.footnotes.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ulink.footnotes 4 | boolean 5 | 6 | 7 | ulink.footnotes 8 | Generate footnotes for ULinks? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero, the URL of each ULink will 20 | appear as a footnote. 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/ulink.show.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ulink.show 4 | boolean 5 | 6 | 7 | ulink.show 8 | Display URLs after ulinks? 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | If non-zero, the URL of each ULink will 20 | appear after the text of the link. If the text of the link and the URL 21 | are identical, the URL is suppressed. 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/xref.properties.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | xref.properties 4 | Properties associated with cross-reference text 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Description 15 | 16 | This attribute set is used on cross reference text. 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/params/xref.with.number.and.title.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | xref.with.number.and.title 4 | boolean 5 | 6 | 7 | xref.with.number.and.title 8 | Use number and title in cross references 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Description 18 | 19 | FIXME: 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/template/README: -------------------------------------------------------------------------------- 1 | This directory contains rudimentary support for the notion of 2 | stylesheet templates. 3 | 4 | The idea is that if you want to change the behavior of the 5 | stylesheets, for example, processing different bibliography 6 | elements, you will construct a tempate document that describes 7 | what you want and then process that template with the "template" 8 | stylesheet. 9 | 10 | The result of this processing will be a customization layer for 11 | the DocBook XSL Stylesheets that does what you want. This 12 | removes the stylesheet customizer from the burdon of figuring 13 | out how the stylesheets work and modifying them. 14 | 15 | In theory, anyway... -------------------------------------------------------------------------------- /cfg/resource/thirdparty/docbook/xsl/xhtml/docbookng.xsl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/website/images/img01.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/img01.gif -------------------------------------------------------------------------------- /docs/website/images/img02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/img02.jpg -------------------------------------------------------------------------------- /docs/website/images/img03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/img03.jpg -------------------------------------------------------------------------------- /docs/website/images/img04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/img04.jpg -------------------------------------------------------------------------------- /docs/website/images/img05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/img05.jpg -------------------------------------------------------------------------------- /docs/website/images/img06.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/img06.jpg -------------------------------------------------------------------------------- /docs/website/images/spacer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/spacer.gif -------------------------------------------------------------------------------- /docs/website/images/team/Chris2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/team/Chris2.jpg -------------------------------------------------------------------------------- /docs/website/images/team/Rod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/team/Rod.png -------------------------------------------------------------------------------- /docs/website/images/team/ag.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/team/ag.jpg -------------------------------------------------------------------------------- /docs/website/images/team/dw.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/team/dw.jpg -------------------------------------------------------------------------------- /docs/website/images/team/je.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/team/je.jpg -------------------------------------------------------------------------------- /docs/website/images/team/kb-headshot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/docs/website/images/team/kb-headshot.jpg -------------------------------------------------------------------------------- /repository/ant-googlecode-0.0.0test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/repository/ant-googlecode-0.0.0test.jar -------------------------------------------------------------------------------- /repository/docbook-dependencies/avalon-framework-cvs-20020806.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/repository/docbook-dependencies/avalon-framework-cvs-20020806.jar -------------------------------------------------------------------------------- /repository/docbook-dependencies/batik.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/repository/docbook-dependencies/batik.jar -------------------------------------------------------------------------------- /repository/docbook-dependencies/fop-0.20.5-RFC3066-patched.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/repository/docbook-dependencies/fop-0.20.5-RFC3066-patched.jar -------------------------------------------------------------------------------- /repository/docbook-dependencies/jai_codec.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/repository/docbook-dependencies/jai_codec.jar -------------------------------------------------------------------------------- /repository/docbook-dependencies/jai_core.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/repository/docbook-dependencies/jai_core.jar -------------------------------------------------------------------------------- /repository/docbook-dependencies/rowan-0.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/repository/docbook-dependencies/rowan-0.1.jar -------------------------------------------------------------------------------- /repository/docbook-dependencies/saxon-dbxsl-extensions.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/repository/docbook-dependencies/saxon-dbxsl-extensions.jar -------------------------------------------------------------------------------- /repository/docbook-dependencies/saxon.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/repository/docbook-dependencies/saxon.jar -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/ExtensionPoint.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb 2 | 3 | import org.easyb.listener.ExecutionListener; 4 | 5 | 6 | public class ExtensionPoint { 7 | def closure 8 | def params 9 | 10 | 11 | def process(BehaviorStep behaviorStep, Binding binding, ExecutionListener listener) { 12 | closure(listener, binding, behaviorStep, params) 13 | } 14 | } -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/IncorrectGrammarException.groovy: -------------------------------------------------------------------------------- 1 | /* 2 | * thrown when the easyb parser encounters grammar in a location it should not be 3 | */ 4 | package org.easyb; 5 | 6 | 7 | public class IncorrectGrammarException extends RuntimeException { 8 | public IncorrectGrammarException(String msg) { 9 | super(msg) 10 | } 11 | } -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/ant/CommandRunner.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.ant 2 | 3 | import org.apache.tools.ant.Task 4 | 5 | public interface CommandRunner { 6 | int fork(Task task, String[] commandline) 7 | } 8 | -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/ant/Report.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.ant 2 | 3 | class Report { 4 | String format 5 | String location 6 | } -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/plugin/BehaviorCategorySyntaxExtension.groovy: -------------------------------------------------------------------------------- 1 | /* 2 | * Using this extension allows those who wish to, to add BehaviorCategory behavior to when and given 3 | */ 4 | package org.easyb.plugin 5 | 6 | import org.easyb.BehaviorCategory; 7 | public class BehaviorCategorySyntaxExtension implements SyntaxExtension { 8 | def boolean autoLoad() { 9 | return false 10 | } 11 | 12 | def String getName() { 13 | return "behaviorCategory" 14 | } 15 | 16 | def Map getSyntax() { 17 | return [:] 18 | } 19 | 20 | def Class[] getExtensionCategories() { 21 | return [BehaviorCategory.class] 22 | } 23 | } -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/plugin/ClosureAsMapDataParser.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.plugin; 2 | 3 | public class ClosureAsMapDataParser { 4 | } -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/plugin/EasybPlugin.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.plugin 2 | 3 | interface EasybPlugin { 4 | String getName() 5 | def beforeScenario(Binding binding) 6 | def afterScenario(Binding binding) 7 | 8 | def beforeGiven(Binding binding) 9 | def afterGiven(Binding binding) 10 | 11 | def beforeWhen(Binding binding) 12 | def afterWhen(Binding binding) 13 | 14 | def beforeThen(Binding binding) 15 | def afterThen(Binding binding) 16 | 17 | def beforeStory(Binding binding) 18 | def afterStory(Binding binding) 19 | 20 | void setClassLoader(ClassLoader classLoader) 21 | } 22 | -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/plugin/PluginFactory.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.plugin 2 | 3 | public class PluginFactory { 4 | private PluginLocator locator = new PluginLocator() 5 | 6 | EasybPlugin pluginForStory(String story) { 7 | EasybPlugin plugin = new NullPlugin() 8 | 9 | story.eachLine {String line -> 10 | if (line.startsWith('using')) { 11 | String[] components = line.split("['\"]") 12 | if (components.length > 1) { 13 | plugin = locator.findPluginWithName(components[1]) 14 | } 15 | } 16 | } 17 | 18 | return plugin 19 | } 20 | } -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/plugin/SyntaxExtension.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.plugin 2 | 3 | public interface SyntaxExtension { 4 | boolean autoLoad() 5 | String getName() 6 | Map getSyntax() 7 | Class[] getExtensionCategories() 8 | } -------------------------------------------------------------------------------- /src/main/groovy/org/easyb/report/ReportWriter.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.report 2 | 3 | import org.easyb.listener.ResultsAmalgamator 4 | 5 | /** 6 | * Common interface for easyb reports 7 | */ 8 | interface ReportWriter { 9 | void writeReport(ResultsAmalgamator results) 10 | } -------------------------------------------------------------------------------- /src/main/java/org/easyb/StackTraceConsoleReporter.java: -------------------------------------------------------------------------------- 1 | package org.easyb; 2 | 3 | 4 | import org.easyb.listener.ConsoleReporterListener; 5 | import org.easyb.result.Result; 6 | 7 | public class StackTraceConsoleReporter extends ConsoleReporterListener { 8 | 9 | public void gotResult(Result result) { 10 | super.gotResult(result); 11 | 12 | if (result != null && result.failed() 13 | && result.cause() != null) { 14 | StackTraceElement[] stacktrace = result.cause().getStackTrace(); 15 | System.out.println("\t An exception has occurred: "); 16 | for (int x = 0; x < stacktrace.length; x++) { 17 | System.out.println("\t\t" + stacktrace[x]); 18 | } 19 | } 20 | 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/delegates/RichlyEnsurable.java: -------------------------------------------------------------------------------- 1 | package org.easyb.delegates; 2 | 3 | /** 4 | * this is essentially a marker interface 5 | * 6 | * @author aglover 7 | */ 8 | public interface RichlyEnsurable { 9 | /** 10 | * ideally, flexible delegates can do interesting things to 11 | * the object passed in.... 12 | */ 13 | void setVerified(Object verified); 14 | } 15 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/domain/Behavior.java: -------------------------------------------------------------------------------- 1 | package org.easyb.domain; 2 | 3 | 4 | import groovy.lang.Binding; 5 | import org.easyb.BehaviorStep; 6 | import org.easyb.listener.BroadcastListener; 7 | 8 | import java.io.File; 9 | import java.io.IOException; 10 | 11 | public interface Behavior { 12 | String getPhrase(); 13 | 14 | File getFile(); 15 | 16 | String getTypeDescriptor(); 17 | 18 | Binding getBinding(); 19 | 20 | BroadcastListener getBroadcastListener(); 21 | 22 | BehaviorStep execute() throws IOException; 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/domain/NarrativePreProcessor.java: -------------------------------------------------------------------------------- 1 | package org.easyb.domain; 2 | 3 | import org.easyb.util.PreProcessorable; 4 | 5 | public class NarrativePreProcessor implements PreProcessorable { 6 | public String process(String specification) { 7 | return specification 8 | .replaceAll("(\\{*\\s)as a([^\\}]*\\})", "$1as_a$2") 9 | .replaceAll("(\\{*\\s)i want([^\\}]*\\})", "$1i_want$2") 10 | .replaceAll("(\\{*\\s)so that([^\\}]*\\})", "$1so_that$2"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/domain/SharedBehaviorPreProcessor.java: -------------------------------------------------------------------------------- 1 | package org.easyb.domain; 2 | 3 | import org.easyb.util.PreProcessorable; 4 | 5 | /** 6 | * 7 | */ 8 | public class SharedBehaviorPreProcessor implements PreProcessorable { 9 | 10 | private PreProcessorable preprocessor; 11 | 12 | public SharedBehaviorPreProcessor(PreProcessorable preproc) { 13 | this.preprocessor = preproc; 14 | } 15 | 16 | public String process(String behavior) { 17 | return this.preprocessor.process(behavior) 18 | .replaceAll("shared behavior\\b", "shared_behavior") 19 | .replaceAll("it behaves as\\b", "it_behaves_as"); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/domain/SpecificationPreProcessor.java: -------------------------------------------------------------------------------- 1 | package org.easyb.domain; 2 | 3 | import org.easyb.util.PreProcessorable; 4 | 5 | public class SpecificationPreProcessor implements PreProcessorable { 6 | public String process(String specification) { 7 | return specification 8 | .replaceAll("(\\{*\\s)as a([^\\}]*\\})", "$1as_a$2") 9 | .replaceAll("(\\{*\\s)i want([^\\}]*\\})", "$1i_want$2") 10 | .replaceAll("(\\{*\\s)so that([^\\}]*\\})", "$1so_that$2"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/listener/ExecutionListener.java: -------------------------------------------------------------------------------- 1 | package org.easyb.listener; 2 | 3 | import org.easyb.domain.Behavior; 4 | import org.easyb.BehaviorStep; 5 | import org.easyb.result.ReportingTag; 6 | import org.easyb.result.Result; 7 | 8 | public interface ExecutionListener { 9 | void startBehavior(Behavior behavior); 10 | 11 | void startStep(BehaviorStep step); 12 | 13 | void describeStep(String description); 14 | 15 | void gotResult(Result result); 16 | 17 | void stopStep(); 18 | 19 | void stopBehavior(BehaviorStep step, Behavior behavior); 20 | 21 | void tag(ReportingTag tag); 22 | 23 | void completeTesting(); 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/listener/FailureDetector.java: -------------------------------------------------------------------------------- 1 | package org.easyb.listener; 2 | 3 | import org.easyb.result.Result; 4 | 5 | public class FailureDetector extends ExecutionListenerAdaptor { 6 | private boolean failures = false; 7 | 8 | public boolean failuresDetected() { 9 | return failures; 10 | } 11 | 12 | public void gotResult(Result result) { 13 | if (result.failed()) { 14 | failures = true; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/listener/ListenerBuilder.java: -------------------------------------------------------------------------------- 1 | package org.easyb.listener; 2 | 3 | 4 | /** 5 | * a class that implements this knows how to create a new ExecutionListener. It is important because of 6 | * parallelization. 7 | */ 8 | public interface ListenerBuilder { 9 | ExecutionListener get(); 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/result/ReportingTag.java: -------------------------------------------------------------------------------- 1 | package org.easyb.result; 2 | 3 | import groovy.xml.MarkupBuilder; 4 | 5 | /** 6 | * a plugin can define syntax that it can add to the binding that inserts tags into the current behavior step. They only need to implement this 7 | * interface as we need to be able to convert it into XML. 8 | */ 9 | 10 | public interface ReportingTag { 11 | void toXml(MarkupBuilder xml); 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/util/PreProcessorable.java: -------------------------------------------------------------------------------- 1 | package org.easyb.util; 2 | 3 | /** 4 | * 5 | */ 6 | public interface PreProcessorable { 7 | String process(String input); 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/easyb/util/Timer.java: -------------------------------------------------------------------------------- 1 | package org.easyb.util; 2 | 3 | /** 4 | * @author sevensoft [Ken Brooks] 5 | */ 6 | public class Timer { 7 | long start = -1L; 8 | long elapsed = 0L; 9 | 10 | public void start() { 11 | start = System.currentTimeMillis(); 12 | } 13 | 14 | public void stop() { 15 | elapsed = System.currentTimeMillis() - start; 16 | } 17 | 18 | public long elapsedTimeMillis() { 19 | return elapsed; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/resources/META-INF/services/org.codehaus.groovy.transform.ASTTransformation: -------------------------------------------------------------------------------- 1 | org.easyb.ast.EasybTransformer -------------------------------------------------------------------------------- /src/main/resources/META-INF/services/org.easyb.plugin.SyntaxExtension: -------------------------------------------------------------------------------- 1 | org.easyb.plugin.BehaviorCategorySyntaxExtension 2 | -------------------------------------------------------------------------------- /src/main/resources/reports/easyb_img01.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/src/main/resources/reports/easyb_img01.gif -------------------------------------------------------------------------------- /src/main/resources/reports/easyb_img02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/src/main/resources/reports/easyb_img02.jpg -------------------------------------------------------------------------------- /src/main/resources/reports/easyb_img03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/src/main/resources/reports/easyb_img03.jpg -------------------------------------------------------------------------------- /src/main/resources/reports/easyb_img04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/src/main/resources/reports/easyb_img04.jpg -------------------------------------------------------------------------------- /src/main/resources/reports/easyb_img05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/src/main/resources/reports/easyb_img05.jpg -------------------------------------------------------------------------------- /src/main/resources/reports/easyb_img06.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/src/main/resources/reports/easyb_img06.jpg -------------------------------------------------------------------------------- /src/main/resources/reports/easyb_report_specifications_list_plain.tmpl: -------------------------------------------------------------------------------- 1 | <% 2 | import org.easyb.util.BehaviorStepType 3 | import org.easyb.report.HtmlReportHelper 4 | %> 5 | 6 | 12 | -------------------------------------------------------------------------------- /src/main/resources/reports/easyb_report_stories_list_plain.tmpl: -------------------------------------------------------------------------------- 1 | <% 2 | import org.easyb.util.BehaviorStepType 3 | import org.easyb.report.HtmlReportHelper 4 | %> 5 | 6 | 12 | -------------------------------------------------------------------------------- /src/main/resources/reports/easyb_spacer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyb/easyb-core/34033a2699ba7ce5cee1eb3303883a1f1fc7d2b1/src/main/resources/reports/easyb_spacer.gif -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/AnotherNoname.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb 2 | 3 | 4 | 5 | given "a valid string with 6 characters", { 6 | var = "string" 7 | } 8 | 9 | when "length is called", { 10 | len = var.length() 11 | } 12 | 13 | then "the value returned should be 6", { 14 | len.is(6) 15 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/BeforeClosureSpecification.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb; 2 | 3 | int value = 0 4 | 5 | before "increment the int value", { 6 | value++ 7 | } 8 | 9 | it "should be 1 now", { 10 | value.shouldBe(1) 11 | } 12 | 13 | it "should be 2 now", { 14 | ensure(value) {isEqualTo2} 15 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/CamelCase.specification: -------------------------------------------------------------------------------- 1 | import org.easyb.util.CamelCaseConverter 2 | 3 | 4 | 5 | it "should return the whole word instead of trying to parse it", { 6 | cCase = new CamelCaseConverter("IRR") 7 | cCase.toPhrase().shouldEqual "IRR" 8 | } 9 | 10 | it "should return a properly parsed word", { 11 | iCase = new CamelCaseConverter("IRRIssue") 12 | iCase.toPhrase().shouldEqual "IRR issue" 13 | } 14 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/EasierDoesItSpecification.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb; 2 | 3 | 4 | it "should support expressions in the ensure clause", { 5 | ensure(1 == 1) 6 | } 7 | 8 | it "should support other types of expressions in the ensure clause", { 9 | ensure("this".equals("this")) 10 | } 11 | 12 | it "should support more than one expression in the ensure clause", { 13 | ensure("this".equals("this") && "this" instanceof String) 14 | } 15 | 16 | it "should support negated expressions in the ensure clause", { 17 | ensure(!"this".equals("that")) 18 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/EnsureThrowsSpecification.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb 2 | 3 | import org.easyb.exception.VerificationException 4 | 5 | it "should fail if an exception is not thrown", { 6 | failed = false 7 | try { 8 | ensureThrows(RuntimeException.class) { 9 | // If we don't throw an exception the spec should fail 10 | } 11 | failed = true 12 | } catch (VerificationException expected) { 13 | // Success 14 | } 15 | if (failed) { 16 | fail("The absence of an exception didn't fail the ensureThrows check") 17 | } 18 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/EnsuringHasStory.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb 2 | 3 | import org.easyb.bdd.Person 4 | 5 | scenario "Person object with all properties defined", { 6 | 7 | given "Person object with all values set", { 8 | person = new Person("Jude", 41) 9 | } 10 | 11 | then "shouldHave should work with all properties", { 12 | person.shouldHave firstName: "Jude" 13 | and 14 | person.shouldHave age: 41 15 | } 16 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/FakeListener.groovy: -------------------------------------------------------------------------------- 1 | import org.easyb.BehaviorStep 2 | import org.easyb.listener.ExecutionListenerAdaptor 3 | import org.easyb.result.Result 4 | 5 | class FakeListener extends ExecutionListenerAdaptor { 6 | Result result 7 | 8 | void startStep(BehaviorStep step) { 9 | 10 | } 11 | 12 | void gotResult(Result result) { 13 | this.result = result 14 | } 15 | 16 | void stopStep() { 17 | 18 | } 19 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/IJustNeedClosure.story: -------------------------------------------------------------------------------- 1 | 2 | 3 | before "empty closure" 4 | 5 | after "empty closure" 6 | 7 | before_each "empty closure" 8 | 9 | after_each "empty closure" 10 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/Noname.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb 2 | 3 | var = "string" 4 | 5 | it "should have a length of 6", { 6 | var.length().shouldBe(6) 7 | var.length().shouldBe 6 8 | } 9 | 10 | it "should not be null", { 11 | var.shouldNotBe null 12 | } 13 | 14 | it "should handle null objects", { 15 | value = null 16 | 17 | value.shouldBe null 18 | } 19 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/SharedBehaviors.story: -------------------------------------------------------------------------------- 1 | shared_behavior "shared behaviors", { 2 | given "a string", { 3 | var = "" 4 | } 5 | 6 | when "the string is hello world", { 7 | var = "hello world" 8 | } 9 | } 10 | 11 | scenario "first scenario", { 12 | it_behaves_as "shared behaviors" 13 | 14 | then "the string should start with hello", { 15 | var.shouldStartWith "hello" 16 | } 17 | } 18 | 19 | scenario "second scenario", { 20 | it_behaves_as "shared behaviors" 21 | 22 | then "the string should end with world", { 23 | var.shouldEndWith "world" 24 | } 25 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/WhenEvaluatingGivenClosure.specification: -------------------------------------------------------------------------------- 1 | import org.easyb.StoryBinding 2 | 3 | it "should notify listener of exceptions", { 4 | def listener = new FakeListener() 5 | 6 | def story = StoryBinding.getBinding(listener, null) 7 | new GroovyShell(story).evaluate(''' 8 | given "", 0, "an exception is thrown", { 9 | throw new RuntimeException('test') 10 | } 11 | '''); 12 | 13 | story.replaySteps(true) 14 | 15 | listener.result.cause.message.shouldBe 'test' 16 | } 17 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/WhenEvaluatingWhenClosure.specification: -------------------------------------------------------------------------------- 1 | import org.easyb.StoryBinding 2 | 3 | it "should notify listener of exceptions", { 4 | def listener = new FakeListener() 5 | 6 | def story = StoryBinding.getBinding(listener, null) 7 | 8 | new GroovyShell(story).evaluate(''' 9 | when "", 0, "an exception is thrown", { 10 | throw new RuntimeException('test') 11 | } 12 | '''); 13 | 14 | story.replaySteps(true) 15 | 16 | listener.result.cause.message.shouldBe 'test' 17 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/WhenStartingBehaviorStep.specification: -------------------------------------------------------------------------------- 1 | import org.easyb.BehaviorStep 2 | import org.easyb.BehaviorStepStack 3 | import org.easyb.listener.ExecutionListenerAdaptor 4 | import org.easyb.util.BehaviorStepType 5 | 6 | def stack 7 | def listener 8 | 9 | before "create behavior step stack", { 10 | listener = new ExecutionListenerAdaptor() 11 | stack = new BehaviorStepStack(listener) 12 | } 13 | 14 | it "should create step and push step onto stack", { 15 | stack.startStep(BehaviorStepType.SCENARIO, 'description') 16 | BehaviorStep lastStep = stack.lastStep() 17 | lastStep.shouldNotBe null 18 | } 19 | 20 | it "should notify listener" -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/WhenStoppingBehaviorStep.specification: -------------------------------------------------------------------------------- 1 | import org.easyb.BehaviorStepStack 2 | import org.easyb.listener.ExecutionListenerAdaptor 3 | import org.easyb.util.BehaviorStepType 4 | 5 | def stack 6 | def listener 7 | 8 | before "create behavior step stack", { 9 | listener = new ExecutionListenerAdaptor() 10 | stack = new BehaviorStepStack(listener) 11 | 12 | } 13 | 14 | it "should pop step from stack", { 15 | stack.startStep(BehaviorStepType.SCENARIO, 'description') 16 | stack.stopStep() 17 | 18 | stack.lastStep().shouldNotBe null 19 | and 20 | stack.lastStep().stepType.shouldBe BehaviorStepType.SCENARIO 21 | } 22 | 23 | it "should notify listener" -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/WithdrawingFunds.story: -------------------------------------------------------------------------------- 1 | scenario "withdrawing funds", { 2 | given "an account with a \$100 balance" 3 | when "an account holder withdraws \$75" 4 | then "the account balance should be \$25" 5 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/ant/WhenRunningEasybWithAnt.specification: -------------------------------------------------------------------------------- 1 | it "should run without error", { 2 | // This is verified in the build for easyb itself 3 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/ContentsInCollection.story: -------------------------------------------------------------------------------- 1 | 2 | scenario "easyb should find contents in a collection", { 3 | 4 | given "a collection of strings", { 5 | uris = ["http://acme.com/w018/widget/4000000001/200901/AQSN_ESTB/PREM/ORIG/1000", 6 | "http://acme.com/w018/widget/4000000001/200901/PFP_CSLDN_XFER/PREM/ORIG/1000", 7 | "http://acme.com/w018/widget/4000000001/200901/PFP_CSLDN_RCPTR/PREM/ORIG/1000", 8 | "http://acme.com/w018/widget/4000000001/200901/AMRT_AMRT_AM_RR/PREM/ACCD_AMRT/10"] 9 | 10 | } 11 | 12 | then "easyb should find items in it" , { 13 | uris.shouldHave "http://acme.com/w018/widget/4000000001/200901/AQSN_ESTB/PREM/ORIG/1000" 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/DoesNotContain.story: -------------------------------------------------------------------------------- 1 | scenario "sub-strings should not match doesNotContain", { 2 | given "a list of strings, ['a','ab','abc']", { 3 | l = ['a', 'ab', 'abc'] 4 | } 5 | 6 | then "list should not contain a simple 'c'", { 7 | l.shouldNotHave('c') 8 | ensure(l) { 9 | doesNotContain('c') 10 | } 11 | } 12 | } 13 | 14 | 15 | scenario "sub-strings should match doesContain", { 16 | given "a list of strings, ['a','ab','abc']", { 17 | l = ['a', 'ab', 'abc'] 18 | } 19 | 20 | then "list should contain a simple 'a'", { 21 | l.shouldHave('a') 22 | ensure(l) { 23 | contains('a') 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue103.specification: -------------------------------------------------------------------------------- 1 | import org.easyb.exception.VerificationException 2 | 3 | before "setup string", { 4 | var = "hello world" 5 | } 6 | 7 | after "tear down", { 8 | var = 24 9 | } 10 | 11 | it "should be hello world", { 12 | var.shouldBe "hello world" 13 | } 14 | 15 | if(var != 24){ 16 | throw new VerificationException("after closure doesn't appear to be working!") 17 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue109.story: -------------------------------------------------------------------------------- 1 | scenario "Non-Gold level customer with \$100 or more" , { 2 | given "a non-Gold level customer" 3 | when "they have \$100 or more in their shopping cart" 4 | then "they should receive a \$10 discount" 5 | and "they should be emailed a coupon" 6 | } 7 | 8 | scenario "another Non-Gold level customer with \$100 or more" , { 9 | given "another non-Gold level customer" 10 | when "they have another \$100 or more in their shopping cart" 11 | then "they should receive another \$10 discount" 12 | then "they should be emailed another coupon" 13 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue110and111Story.groovy: -------------------------------------------------------------------------------- 1 | scenario "ensure shouldStartWith works like startsWith", { 2 | given "a string", { 3 | var = "hello world" 4 | } 5 | 6 | then "should start with hello", { 7 | var.shouldStartWith "hello" 8 | } 9 | } 10 | 11 | scenario "ensure shouldEndWith works like endsWith", { 12 | given "a string", { 13 | var = "hello world" 14 | } 15 | 16 | then "should end with word", { 17 | var.shouldEndWith "world" 18 | } 19 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue17.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.issues //package needed for eclipse? 2 | 3 | given "a file ending in .story", { 4 | value = 12 + 5 5 | } 6 | 7 | then "easyb should excute is as normal", { 8 | value.shouldBe 17 9 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue177.story: -------------------------------------------------------------------------------- 1 | 2 | ignore { 3 | scenario "this is purposely a broken scenario", { 4 | given "some variable with a value", { 5 | val = 12 6 | } 7 | then "to force an error, one should verify it is not 12", { 8 | val.shouldNotEqual 12 9 | } 10 | } 11 | 12 | scenario "another purposely a broken scenario", { 13 | given "some variable with a value", { 14 | val = 13 15 | } 16 | then "to force an error, one should verify it is not 12", { 17 | val.shouldNotEqual 13 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue18Story.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.issues 2 | 3 | scenario "all subparts have no closures defined", { 4 | 5 | given "no closure" 6 | when "easyb is invoked with this story" 7 | then "it should accept this as an unimplemented closure" 8 | and 9 | then "easyb should not count this as a successful scenario, but a pending one" 10 | 11 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue23.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.issues 2 | 3 | scenario "shouldBe should accept negative numbers", { 4 | 5 | given "a negative number", { 6 | negint = -3 7 | } 8 | 9 | then "the value should be an Integer", { 10 | negint.shouldBeAn(Integer) 11 | } 12 | 13 | and 14 | 15 | then "it should be -3", { 16 | negint.shouldBe(-3) 17 | //this doesn't work-- results in a property call 18 | //negint.shouldBe -3 19 | } 20 | 21 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue240StoryToRun.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.issues 2 | 3 | shared_behavior "Division wonderland", { 4 | then "we expect an error", { 5 | (10 / divisor).shouldBe expectedResult 6 | } 7 | and "we expect something nice", { 8 | true.shouldBe true 9 | } 10 | } 11 | 12 | scenario "Call a shared behaviour and die ...", { 13 | given "We set up our expectations", { 14 | divisor = System.getProperty("org.easyb.bdd.issues.Issue240", "10").toInteger() 15 | expectedResult = 1 16 | } 17 | it_behaves_as "Division wonderland" 18 | 19 | then "we expect nothing", { 20 | expectedResult.shouldBe 1 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue78.story: -------------------------------------------------------------------------------- 1 | import org.easyb.exception.VerificationException 2 | 3 | description "this issue relates to improper reporting of pending scenarios" 4 | 5 | int initcount = easybResults().getPendingScenarioCount() 6 | 7 | scenario "this is technically a pending scenario", { 8 | 9 | } 10 | 11 | scenario "this scenario is not pending", { 12 | given "that someone defined a scenario with an empty closure" 13 | then "easyb should consider that a pending one" 14 | } 15 | 16 | runScenarios() 17 | 18 | if (easybResults().getPendingScenarioCount() > (initcount + 2)) { 19 | throw new VerificationException('Pending scenarios count not correct') 20 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue87.story: -------------------------------------------------------------------------------- 1 | 2 | ignore all 3 | 4 | scenario "this is purposely a broken scenario", { 5 | given "some variable with a value", { 6 | val = 12 7 | } 8 | then "to force an error, one should verify it is not 12", { 9 | val.shouldNotEqual 12 10 | } 11 | } 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/Issue87Selective.story: -------------------------------------------------------------------------------- 1 | 2 | 3 | ignore "this is purposely a broken scenario" 4 | 5 | scenario "this is purposely a broken scenario", { 6 | given "some variable with a value", { 7 | val = 12 8 | } 9 | then "to force an error, one should verify it is not 12", { 10 | val.shouldNotEqual 12 11 | } 12 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/IssueNotAndNullStory.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.issues 2 | 3 | import org.easyb.exception.VerificationException 4 | 5 | scenario "should not should work with null values", { 6 | 7 | given "a null value", { 8 | val = null 9 | } 10 | 11 | then "verifying it isn't null should work", { 12 | try { 13 | val.shouldNotBe null 14 | } catch (VerificationException e) { 15 | e.message.shouldBe "expected values to differ but both were null" 16 | } 17 | } 18 | 19 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/OrAndQuestions.story: -------------------------------------------------------------------------------- 1 | scenario "easyb can and should support expressions", { 2 | 3 | given "a value of 3", { 4 | value = 3 5 | } 6 | then "an expression should evaluate to true", { 7 | (value >=0 && value <=6).shouldBe true 8 | } 9 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/RunningPendingCategories.story: -------------------------------------------------------------------------------- 1 | 2 | tags "sanity" 3 | 4 | scenario "User A wants to work with a lab mdta, user b wants to use an prod mdta",{ 5 | given "blah",{ 6 | 7 | } 8 | 9 | when "blah", { 10 | 11 | } 12 | 13 | then "blah", { 14 | 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/issues/space in path/Issue86.story: -------------------------------------------------------------------------------- 1 | scenario "files with spaces in path should still pass", { 2 | given "this file is in a path with spaces", { 3 | inconsequentialValue = 12 + 5 4 | } 5 | 6 | then "easyb should excute is as normal", { 7 | inconsequentialValue.shouldBe 17 8 | } 9 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/money/MoneyStory.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.money 2 | 3 | description "This story is about currency management" 4 | 5 | narrative "this string is required for now", { 6 | as_a "person who uses money" 7 | i_want "to be able to add them together" 8 | so_that "that I can become rich (and wierd)" 9 | } 10 | 11 | scenario "two moneys of the same currency are added", { 12 | 13 | given "one money object is added to another", { 14 | total = new Money(12, "CHF").add(new Money(14, "CHF")) 15 | } 16 | 17 | then "the total amount should be the sum of the two", { 18 | total.amount().shouldBe 26 19 | } 20 | 21 | } 22 | 23 | scenario "two moneys of different currencies are added", { 24 | 25 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/nounderscores/NarrativeWithoutUnderscores.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.nounderscores 2 | description "this is a prototype story for using narratives" 3 | 4 | narrative "this feature is for easyb users", { 5 | as a "analyst or domain expert or developer" 6 | i want "to document the persona, etc of a user acting in the story" 7 | so that "the story/scenario is documented more fully" 8 | } 9 | 10 | scenario "this is a simple scenario" , { 11 | given "something", { 12 | foo = "bar" 13 | } 14 | when "something else happends", { 15 | val = foo[0] 16 | } 17 | then "something should be validated" , { 18 | val.shouldBe "b" 19 | } 20 | } 21 | 22 | scenario "one pending scenario for no reason at all" -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/nounderscores/SharedBehaviorWithoutUnderscores.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.nounderscores 2 | shared behavior "shared behaviors", { 3 | given "a string", { 4 | var = "" 5 | } 6 | 7 | when "the string is hello world", { 8 | var = "hello world" 9 | } 10 | } 11 | 12 | scenario "first scenario", { 13 | it behaves as "shared behaviors" 14 | 15 | then "the string should start with hello", { 16 | var.shouldStartWith "hello" 17 | } 18 | } 19 | 20 | scenario "second scenario", { 21 | it behaves as "shared behaviors" 22 | 23 | then "the string should end with world", { 24 | var.shouldEndWith "world" 25 | } 26 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/prototype/AndChainedFeature.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.prototype 2 | 3 | scenario "easyb should support and chaining", { 4 | 5 | given "an integer value of 10", { 6 | value1 = 10 7 | } 8 | 9 | and "given another integer value of 5", { 10 | value2 = 5 11 | } 12 | 13 | when "the first integer value has 10 added to it", { 14 | value1 += 10 15 | } 16 | 17 | and "when the second integer value has 12 added to it", { 18 | value2 += 12 19 | } 20 | 21 | then "the first variable should be equal to 20", { 22 | value1.shouldBe 20 23 | } 24 | 25 | and "then the second value should be equal to 17", { 26 | value2.shouldBe 17 27 | } 28 | } 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/prototype/EnhancedEnsure.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.prototype 2 | 3 | import org.easyb.exception.VerificationException 4 | 5 | class EnhancedEnsure { 6 | 7 | def verify 8 | 9 | void isPositive() { 10 | if(verify < 0){ 11 | throw new VerificationException("value of ${verify} wasn't postitive") 12 | } 13 | } 14 | 15 | def getProperty(String property) { 16 | if(property == "isPositive"){ 17 | isPositive() 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/prototype/ExceptionalOccurrence.story: -------------------------------------------------------------------------------- 1 | 2 | 3 | //ignore all 4 | 5 | scenario "this generates an exception", { 6 | given "a null object", { 7 | foo = null 8 | } 9 | then "doing something with it should blow things up", { 10 | foo.blowmeup() 11 | } 12 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/prototype/ExtendedCategories.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.prototype 2 | 3 | import org.easyb.BehaviorCategory 4 | 5 | public class ExtendedCategories { 6 | static void betterBe(Object self, value) { 7 | BehaviorCategory.shouldBe(self, value) 8 | } 9 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/prototype/MixinExample.story: -------------------------------------------------------------------------------- 1 | 2 | //import org.easyb.BehaviorCategory 3 | //import org.easyb.bdd.prototype.ExtendedCategories 4 | // 5 | //BehaviorCategory.mixin ExtendedCategories 6 | 7 | using "BetterBe" 8 | 9 | scenario "mixins should work normally", { 10 | given "a definition of a new method" , { 11 | var = "blah" 12 | } 13 | then "mixing it into easyb should work", { 14 | var.betterBe "blah" 15 | var.shouldBe "blah" //original stuff works the same still... 16 | } 17 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/prototype/NarrativeUsage.story: -------------------------------------------------------------------------------- 1 | 2 | description "this is a prototype story for using narratives" 3 | 4 | narrative "this feature is for easyb users", { 5 | as_a "analyst or domain expert or developer" 6 | i_want "to document the persona, etc of a user acting in the story" 7 | so_that "the story/scenario is documented more fully" 8 | } 9 | 10 | scenario "this is a simple scenario" , { 11 | given "something", { 12 | foo = "bar" 13 | } 14 | when "something else happends", { 15 | val = foo[0] 16 | } 17 | then "something should be validated" , { 18 | val.shouldBe "b" 19 | } 20 | } 21 | 22 | scenario "one pending scenario for no reason at all" -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/prototype/UsingButInsteadOfAnd.story: -------------------------------------------------------------------------------- 1 | scenario "but should act just like and", { 2 | given "I have two sons" 3 | then "they are both boys" 4 | but "they have different ages" 5 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/reporting/FailureReport.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.reporting 2 | 3 | scenario "this scenario will fail!", { 4 | 5 | given "a false variable", { 6 | val = false 7 | } 8 | 9 | then "easyb will report a failure if should is true", { 10 | val.shouldBe true 11 | } 12 | 13 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/reporting/html/PassingPendingFailing.specification: -------------------------------------------------------------------------------- 1 | before "set up", { 2 | var = true 3 | } 4 | 5 | after "tear down", { 6 | var = false 7 | } 8 | 9 | it "should be passing", { 10 | var.shouldBe true 11 | } 12 | 13 | it "should be pending" 14 | 15 | it "should be failing", { 16 | var.shouldBe false 17 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/reporting/html/PassingPendingFailingStory.story: -------------------------------------------------------------------------------- 1 | scenario "pending scenario" 2 | 3 | scenario "failing scenario", { 4 | then "1 does not equal 0 should fail", { 5 | 1.shouldEqual 0 6 | } 7 | } 8 | 9 | scenario "passing scenario", { 10 | then "1 should equal 1", { 11 | 1.shouldEqual 1 12 | } 13 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/reporting/html/ScenarioWithExamples.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.reporting.html 2 | 3 | 4 | examples "names and favorite colors", { 5 | name = ["jack", "jill", "jane"] 6 | favoriteColor = ["red", null, "blue"] 7 | } 8 | 9 | scenario "Favorite colors", { 10 | given "a person called #name and an unknown field called #unknownField", { 11 | } 12 | when "the application looks up the favorite color of #name", { 13 | } 14 | then "the favorite color of #name should be #favoriteColor", { 15 | } 16 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/reporting/txt/NestedScenarios.story: -------------------------------------------------------------------------------- 1 | scenario "parent scenario", { 2 | 3 | scenario "child scenario", { 4 | 5 | then "1 should equal 1", { 6 | 1.shouldEqual 1 7 | } 8 | 9 | } 10 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/reporting/txt/ScenarioWithFailingExamples.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.reporting.txt 2 | 3 | 4 | 5 | examples "names and favorite colors", { 6 | name = ["jack", "jill", "jane"] 7 | favoriteColor = ["red", null, "blue"] 8 | } 9 | 10 | scenario "Favorite colors", { 11 | given "a person called #name", { 12 | } 13 | when "the application looks up the favorite color of #name", { 14 | } 15 | then "the favorite color of #name should be #favoriteColor", { 16 | } 17 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/reporting/xml/NarrativeMappingScenario.story: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.reporting.xml 2 | 3 | narrative "Should be in narrative description", { 4 | as_a "Should be in narrative role description" 5 | i_want "Should be in narrative feature description" 6 | so_that "Should be in narrative benefit description" 7 | } 8 | 9 | scenario "This scenario is in a story that contains a narrative for testing XML report mapping", { 10 | def dada 11 | 12 | given "We initialize a variable", { 13 | dada = true 14 | } 15 | then "its value has the expected value", { 16 | dada.shouldBe true 17 | } 18 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/specification/PendingSpecification.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.specification 2 | 3 | it "should show up as a pending specification" -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/specification/queue/QueueSpecification.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.specification.queue 2 | 3 | import org.easyb.bdd.Queue 4 | 5 | description "This is how a Queue must work" 6 | 7 | before "initialize the queue for each spec", { 8 | queue = new Queue() 9 | } 10 | 11 | it "should dequeue item just enqueued", { 12 | queue.enqueue(2) 13 | queue.dequeue().shouldBe(2) 14 | } 15 | 16 | it "should throw an exception when null is enqueued", { 17 | ensureThrows(RuntimeException.class) { 18 | queue.enqueue(null) 19 | } 20 | } 21 | 22 | it "should dequeue items in same order enqueued", { 23 | [1..5].each {val -> 24 | queue.enqueue(val) 25 | } 26 | [1..5].each {val -> 27 | queue.dequeue().shouldBe(val) 28 | } 29 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/specification/stringutil/StringUtilSpecification.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.specification.stringutil 2 | 3 | import org.easyb.bdd.StringUtilPartial 4 | 5 | it "should return null for null input to trim", { 6 | StringUtilPartial.trim(null).shouldBe null 7 | } 8 | 9 | it "should return the string without whitespace at either the end", { 10 | StringUtilPartial.trim(" somestring ").shouldNotBe null 11 | StringUtilPartial.trim(" somestring ").shouldBe "somestring" 12 | } 13 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/specification/zip/ZipCodeSpecification.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.specification.zip 2 | 3 | import org.easyb.bdd.zip.ZipCodeValidator 4 | 5 | before "initialize zipcodevalidator instance", { 6 | zipvalidate = new ZipCodeValidator(); 7 | } 8 | 9 | it "should deny invalid zip codes", { 10 | ["221o1", "2210", "22010-121o"].each {zip -> 11 | zipvalidate.validate(zip).is false 12 | } 13 | } 14 | 15 | it "should accept valid zip codes", { 16 | ["22101", "22100", "22010-1210"].each {zip -> 17 | zipvalidate.validate(zip).shouldBe true 18 | } 19 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/story/stack/TwoValueStackStory.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.story.stack 2 | 3 | import org.easyb.bdd.Stack 4 | 5 | scenario "pop returns last item", { 6 | given "a stack with two values", { 7 | stack = new Stack() 8 | push1 = "foo" 9 | push2 = "bar" 10 | stack.push(push1) 11 | stack.push(push2) 12 | } 13 | 14 | when "pop is called", { 15 | popVal = stack.pop() 16 | } 17 | 18 | then "the last item pushed should be returned", { 19 | popVal.shouldBe push2 20 | } 21 | 22 | and 23 | 24 | then "the stack should not be empty", { 25 | stack.empty.shouldBe false 26 | } 27 | } 28 | 29 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/bdd/story/zip/ZipCodeStory.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.story.zip 2 | 3 | import org.easyb.bdd.zip.ZipCodeValidator 4 | 5 | given "an invalid zip code", { 6 | invalidzipcode = "221o1" 7 | } 8 | 9 | and 10 | 11 | given "the zipcodevalidator is initialized", { 12 | zipvalidate = new ZipCodeValidator(); 13 | } 14 | 15 | when "validate is invoked with the invalid zip code", { 16 | value = zipvalidate.validate(invalidzipcode) 17 | } 18 | 19 | then "the validator instance should return false", { 20 | value.shouldBe(false) 21 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/delegates/EasybNarrative.story: -------------------------------------------------------------------------------- 1 | package org.easyb.delegates 2 | 3 | description "an easyb description would be nice" 4 | 5 | narrative "Easyb Narrative Story", { 6 | as_a "strange person" 7 | i_want "to weird people out" 8 | so_that "i can be funny" 9 | } 10 | 11 | scenario "blah blah", { 12 | 13 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/domain/RegExCatHelper.story: -------------------------------------------------------------------------------- 1 | import org.easyb.util.TagRegExHelper 2 | 3 | scenario "using tag helper", { 4 | given "a more complex string with a group", { 5 | lots = """tag ["bazzy","bar"]""" 6 | } 7 | then "using tag helper should return true or false", { 8 | helper = new TagRegExHelper() 9 | list1 = helper.getTags(lots) 10 | list1[0].shouldBe "bazzy" 11 | list1[1].shouldBe "bar" 12 | } 13 | } 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/listener/WhenCollectingResults.specification: -------------------------------------------------------------------------------- 1 | import org.easyb.BehaviorStep 2 | import org.easyb.listener.ResultsCollector 3 | import org.easyb.util.BehaviorStepType 4 | 5 | it "should not modify the supplied behavior step", { 6 | try { 7 | def step = new BehaviorStep(BehaviorStepType.SCENARIO, "Test step") 8 | def collector = new ResultsCollector() 9 | collector.startStep step 10 | step.getParentStep().shouldBe null 11 | } catch (Exception e) { 12 | e.printStackTrace() 13 | } 14 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/plugin/BetterBePlugin.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.plugin 2 | 3 | import org.easyb.bdd.prototype.ExtendedCategories 4 | import org.easyb.plugin.BasePlugin 5 | 6 | class BetterBePlugin extends BasePlugin { 7 | 8 | public String getName() { 9 | return "BetterBe"; 10 | } 11 | 12 | public Object beforeStory(Binding binding) { 13 | Object.mixin ExtendedCategories 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/plugin/ExampleWrapper.groovy: -------------------------------------------------------------------------------- 1 | /* 2 | * Created by IntelliJ IDEA. 3 | * User: richard 4 | * Date: Jun 12, 2010 5 | * Time: 10:46:16 AM 6 | */ 7 | package org.easyb.plugin; 8 | 9 | /** 10 | * doesn't hold anything, just a dummy so it doesn't match a Map or Closure 11 | */ 12 | public class ExampleWrapper { 13 | 14 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/plugin/ExampleWrapperDataParser.groovy: -------------------------------------------------------------------------------- 1 | package org.easyb.plugin; 2 | 3 | public class ExampleWrapperDataParser implements ExampleDataParser { 4 | 5 | def boolean processData(Object data, Object closure, Object binding) { 6 | 7 | if ( data instanceof ExampleWrapper ) { 8 | def map = [a:1, b:2, c:3] 9 | closure(map) 10 | map = [a:2, b:4, c:6] 11 | closure(map) 12 | 13 | return true 14 | } 15 | 16 | return false 17 | } 18 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/plugin/ExampleWrapperTest.story: -------------------------------------------------------------------------------- 1 | package org.easyb.plugin 2 | 3 | where "we are using example wrapper", new ExampleWrapper() 4 | 5 | before "how many times", { 6 | times = 0 7 | total = 0 8 | } 9 | 10 | scenario "example wrapper test #a #b #c", { 11 | when "totals", { 12 | total += (a+b+c) 13 | } 14 | then "a + b should be c", { 15 | (a+b).shouldBe c 16 | } 17 | } 18 | 19 | after "checking results", { 20 | then "totals", { 21 | total.shouldBe 18 22 | } 23 | } 24 | 25 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/plugin/NoPlugin.story: -------------------------------------------------------------------------------- 1 | 2 | 3 | scenario "a plugin missing should throw a RuntimeException", { 4 | then "throws", { 5 | ensureThrows(RuntimeException) { 6 | using 'wibble' 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/plugin/WhenLocatingPlugin.specification: -------------------------------------------------------------------------------- 1 | import org.easyb.plugin.PluginLocator 2 | 3 | PluginLocator locator = new PluginLocator() 4 | 5 | it 'should find service by name', { 6 | // remember these are tests for testing that the locator works.. (eat the dog food) 7 | // this approach shouldn't be used when you want to load a given plugin to use in a story 8 | // 9 | // for that use the 'using' keyword @See -> StoryLifeCycle.story 10 | locator.findPluginWithName('test').name.shouldBe 'test' 11 | } 12 | 13 | it 'should throw exception if service not found', { 14 | ensureThrows(RuntimeException) { 15 | locator.findPluginWithName('unknown') 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/reporting_tags/InsertReportingTagsInto.story: -------------------------------------------------------------------------------- 1 | 2 | extension "jiraReportingPlugin" 3 | // inserts extra syntax into story 4 | 5 | scenario "paying a customer in arrears takes them out of arrears", { 6 | jira(['id':"CSS-1574", 'description':"This should be in the report"]) // needs the brackets 7 | given "A Customer", { 8 | customerId = 5 9 | jira([id:"some text", description:"some other text"]) 10 | } 11 | when "We pay an amount", { 12 | // this should come from an autoloaded syntax extension 13 | exec {"1"+"1"} 14 | } 15 | then "They aren't in arrears any longer" 16 | } 17 | 18 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/reporting_tags/InsertReportingTagsIntoSpec.specification: -------------------------------------------------------------------------------- 1 | 2 | extension "jiraReportingPlugin" 3 | // inserts extra syntax into spec 4 | 5 | jira(['id':"CSS-1574", 'description':"This should be in the report"]) // needs the brackets 6 | 7 | it "should have a jire tag inside", { 8 | jira([id:"some text", description:"some other text"]) 9 | } 10 | 11 | exec { "1" + "1" } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/shared/sharedSpec.specification: -------------------------------------------------------------------------------- 1 | 2 | 3 | // does this even make sense??? 4 | shared_specs "specs.shared" 5 | 6 | it "should still be 20", { 7 | beforeVal.shouldBe 20 8 | } 9 | 10 | before "re-set the before", { 11 | beforeVal = 10 12 | } 13 | 14 | it "should now be 10", { 15 | beforeVal.shouldBe 10 16 | } 17 | 18 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/shared/sharedTest.story: -------------------------------------------------------------------------------- 1 | 2 | 3 | shared_stories "stories" 4 | 5 | scenario "We should be able to use a shared story", { 6 | it_behaves_as "my shared story" 7 | 8 | when "we add a number to beforeVal", { 9 | beforeVal += 50 10 | } 11 | 12 | // this doesn't follow on, but hey 13 | then "state should be set", { 14 | number.shouldBe 60 15 | } 16 | } 17 | 18 | runScenarios() 19 | 20 | assert number == 60 21 | assert beforeVal == 70 22 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/shared/specs.shared: -------------------------------------------------------------------------------- 1 | 2 | 3 | before "this is a shared before", { 4 | beforeVal = 20 5 | } 6 | 7 | it "this is a shared spec", { 8 | beforeVal.shouldBe 20 9 | beforeVal += 20 10 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/shared/stories.shared: -------------------------------------------------------------------------------- 1 | 2 | 3 | shared_behavior "my shared story", { 4 | given "a number", { 5 | number = 60 6 | } 7 | } 8 | 9 | before "this should operate before anything happens", { 10 | given "an initial setting", { 11 | beforeVal = 20 12 | } 13 | } 14 | 15 | after "and this should happen afterwards", { 16 | then "beforeVal should be more", { 17 | beforeVal.shouldBeGreaterThan 20 18 | } 19 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/where/ExampleAsIgnoredScenario.story: -------------------------------------------------------------------------------- 1 | package org.easyb.where 2 | /* 3 | Example tests a map at the story level 4 | */ 5 | 6 | ignore all 7 | 8 | scenario "This scenario should not be run", { 9 | then "It should blow up if it is run", { 10 | } 11 | where "Number examples with '#text' and #number", { throw new org.easyb.exception.VerificationException("shouldn't eval closure")} 12 | } 13 | 14 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/where/Issue202Example.story: -------------------------------------------------------------------------------- 1 | scenario "strange txt report with a clause where having 2 variables (defect or misuse ?)",{ 2 | where "2 variables having 2 values", [x:[1,2], y:[1,2]] 3 | 4 | when "i do anything, variables being x=#x and y=#y", { 5 | println "${x} ${y}" 6 | } 7 | then "shouldn't easyb report 2 scenarios ? instead of reporting 4 scenarios including 2 ignored ones ?", { 8 | x.shouldEqual y 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/where/NoDataIgnored.story: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * this scenario might happen if a method call returns null for data and is more likely 4 | * where a block of scenarios get executed if there is data, otherwise they get ignored. 5 | */ 6 | 7 | 8 | where "we only have a where description", null, { 9 | 10 | } 11 | 12 | examples "we only have a example desc", null, { 13 | 14 | } 15 | 16 | 17 | where "we only have a where description", null 18 | 19 | examples "we only have a example desc", null -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/where/TieredSharedScenarios.story: -------------------------------------------------------------------------------- 1 | 2 | 3 | before "it all!", { 4 | total = 0 5 | } 6 | 7 | // this is in top level context 8 | shared_behavior "shared", { 9 | then "add it up", { 10 | total += amount 11 | } 12 | } 13 | 14 | // this will be in its own context because of the where clause 15 | scenario "wibble #amount", { 16 | it_behaves_as "shared" 17 | 18 | where "give some amounts", [amount:[1,2,3]] 19 | } 20 | 21 | 22 | after "should be 6", { 23 | then "should be 6", { 24 | total.shouldBe 6 25 | } 26 | } -------------------------------------------------------------------------------- /src/test/groovy/org/easyb/where/WeirdGivenSyntaxInWhere.story: -------------------------------------------------------------------------------- 1 | 2 | before "make total", { 3 | total = 0 4 | } 5 | 6 | where "weird syntax data", [amount:[1,2,3]], { 7 | then "amount #amount", { 8 | total += amount 9 | } 10 | } 11 | 12 | after "should be 6", { 13 | then "should be 6", { 14 | total.shouldBe 6 15 | } 16 | } -------------------------------------------------------------------------------- /src/test/java/org/easyb/bdd/Person.java: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd; 2 | 3 | public class Person { 4 | 5 | private String firstName; 6 | private int age; 7 | 8 | public Person(String firstName, int age) { 9 | this.firstName = firstName; 10 | this.age = age; 11 | } 12 | 13 | public int getAge() { 14 | return age; 15 | } 16 | 17 | public void setAge(int age) { 18 | this.age = age; 19 | } 20 | 21 | public String getFirstName() { 22 | return firstName; 23 | } 24 | 25 | public void setFirstName(String firstName) { 26 | this.firstName = firstName; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/test/java/org/easyb/bdd/Queue.java: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd; 2 | 3 | import java.util.ArrayList; 4 | 5 | public class Queue { 6 | 7 | private ArrayList list; 8 | 9 | public Queue() { 10 | this.list = new ArrayList(); 11 | } 12 | 13 | public void enqueue(E value) { 14 | if (value == null) { 15 | throw new RuntimeException("Can't enqueue a null value"); 16 | } 17 | this.list.add(value); 18 | } 19 | 20 | public E dequeue() { 21 | if (this.list.isEmpty()) { 22 | throw new RuntimeException("Nothing to dequeue"); 23 | } else { 24 | return this.list.remove(0); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/test/java/org/easyb/bdd/money/Money.java: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.money; 2 | 3 | public class Money { 4 | 5 | private int fAmount; 6 | private String fCurrency; 7 | 8 | public Money(int amount, String currency) { 9 | fAmount = amount; 10 | fCurrency = currency; 11 | } 12 | 13 | public int amount() { 14 | return fAmount; 15 | } 16 | 17 | public String currency() { 18 | return fCurrency; 19 | } 20 | 21 | public Money add(Money m) { 22 | return new Money(amount() + m.amount(), currency()); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/test/java/org/easyb/bdd/zip/Validateable.java: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.zip; 2 | 3 | public interface Validateable { 4 | 5 | boolean validate(String value); 6 | } 7 | -------------------------------------------------------------------------------- /src/test/java/org/easyb/bdd/zip/ZipCodeValidator.java: -------------------------------------------------------------------------------- 1 | package org.easyb.bdd.zip; 2 | 3 | import java.util.regex.Pattern; 4 | import java.util.regex.PatternSyntaxException; 5 | 6 | public class ZipCodeValidator implements Validateable { 7 | 8 | private String zipRegEx = "^\\d{5}([\\-]\\d{4})?$"; 9 | private Pattern pattern; 10 | 11 | public ZipCodeValidator() { 12 | try { 13 | this.pattern = Pattern.compile(this.zipRegEx); 14 | } catch (PatternSyntaxException e) { 15 | throw new RuntimeException("pattern: " + this.pattern + " was invalid!"); 16 | } 17 | } 18 | 19 | public boolean validate(String value) { 20 | return this.pattern.matcher(value).matches(); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/test/resources/1Story1ScenarioControl.txt: -------------------------------------------------------------------------------- 1 | 1 scenario executed successfully. (0 behaviors were ignored) 2 | 3 | Story: and chained feature 4 | 5 | 6 | scenario easyb should support and chaining 7 | given an integer value of 10 8 | given given another integer value of 5 9 | when the first integer value has 10 added to it 10 | when when the second integer value has 12 added to it 11 | then the first variable should be equal to 20 12 | then then the second value should be equal to 17 -------------------------------------------------------------------------------- /src/test/resources/1Story1ScenarioFailureControl.txt: -------------------------------------------------------------------------------- 1 | 1 scenario executed, but status is failure! Total failures: 1 (0 behaviors were ignored) 2 | 3 | Story: failure report 4 | 5 | 6 | scenario this scenario will fail! 7 | given a false variable 8 | then easyb will report a failure if should is true [FAILURE: expected true but was false] on line 9 -------------------------------------------------------------------------------- /src/test/resources/META-INF/services/org.easyb.plugin.EasybPlugin: -------------------------------------------------------------------------------- 1 | org.easyb.plugin.TestEasybPlugin 2 | org.easyb.plugin.Test2EasybPlugin 3 | org.easyb.plugin.BetterBePlugin 4 | 5 | -------------------------------------------------------------------------------- /src/test/resources/META-INF/services/org.easyb.plugin.ExampleDataParser: -------------------------------------------------------------------------------- 1 | org.easyb.plugin.ExampleWrapperDataParser 2 | -------------------------------------------------------------------------------- /src/test/resources/META-INF/services/org.easyb.plugin.SyntaxExtension: -------------------------------------------------------------------------------- 1 | org.easyb.plugin.JiraSyntaxExtension 2 | org.easyb.plugin.ClosureSyntaxExtension --------------------------------------------------------------------------------