Skip to content

praegus/fitnesse-bootstrap-plus-theme

Repository files navigation

Maven Central

You can go to the DEVELOPMENT_GUIDE.MD, for information about how to get started with the Bootstrap-plus FitNesse Theme.

Bootstrap-plus FitNesse Theme

This is a FitNesse Theme that extends the default bootstrap theme for better usability. Uses Bootstrap 4.4, JQuery 3.4 and CodeMirror 5.52

Features:

  • Improved styling for better readability and information density
  • Light and dark version of the theme for the wiki and CodeMirror editor
  • Different favicons for Tests, Suites, Static pages and Edit mode
  • Show the page name first in the page title (So different tabs have recognizable titles)
  • Optional sidebar to ease navigation
  • Visual identification of slim tables using icons
  • Failure navigator highlights current failure, eliminates scrolling - jumps to next
  • Adds a 'Recent pages' overview to the end of the frontpage
  • Optional maven version checker that shows current dependency versions and compares them to the latest version in maven central
  • Icons in Table of contents to distinguish between Tests, Suites and Static pages
  • Suites now have a 'run tags' input field in the navigation bar, so all tests containing any of the specified tags in this input field can be run immediately
  • If Autocomplete responder is also installed, ctrl-space suggestions are context-aware:
    • All fixture methods available in the current test
    • All scenario's from include ScenarioLibraries
    • All slim symbols set by $varName= that are available
    • NOTE: If you want context-aware autosuggest in ScenarioLibraries, make sure to edit them from an edit link on a test-page. The hint-script will then use the referring page as context
  • Context-help pane containing all fixtures, methods, scenario's, slim symbols in current test scope
  • Jump to definition for fixture methods and scenario's by pressing ctrl-comma in the editor, revealing candidates in the context-help pane
  • validation of wiki tables against current context and basic syntax (aimed at slim usage). Use validate button,auto validate on save option or ctrl-dot.
  • Insert scenario's and fixture methods in the editor by clicking the plus-icon in the context pane
  • Experimental: Autosave and validate test pages on enter

Usage:

Use Praegus' toolchain-plugin to use bootstrap-plus and enable all of it's features. See: https://github.com/praegus/toolchain-fitnesse-plugin

Screenshots:

Fonts, margins and colors

alt text

Browser Tabs

alt text

Table of contents with tag management

image

Sidebar Navigation

alt text

Sidebar Context Menu

image

Editor Linting

alt text

Navigation Bar

alt text

Scenario's, Slim Symbols and available Fixture methods in auto-suggest

alt text

Context help

alt text

Visual Slim table types

alt text

Style switch to toggle light/dark modes

alt text

Dark mode

alt text alt text alt text

Recent Tests

alt text

Maven version checker

Use "!VersionChecker" in the editor to enable the Maven version checker.

alt text

ToolTips

Tooltips are now displayed on every page.

You can add your own tooltips with the following steps:

  1. You go to fitnesse/resources/bootstrap-plus/txt/toolTipData.txt for editing.
  2. Put the text at the end of the file and separate the tooltips by enters
  3. The format of a tooltip is[this is a tooltip] (without the brackets).

Tooltips can now contain links

  • You can add a link to your tooltip by adding a simple html link tag to your tooltip.

Tooltips will now also load in from fixtures:

  • You can add tooltips to your fixture by adding a Tooltips.txt on [FixtureRoot]/[FixtureName]_tooltips/Tooltips.txt

  • You also need to add two executions to your maven dependency plugin to be able to load fixture tooltips:

      <execution>
          <id>unpack-dependencies</id>
          <phase>compile</phase>
          <goals>
              <goal>unpack-dependencies</goal>
          </goals>
          <configuration>
              <includes>**/Tooltips.txt</includes>
              <outputDirectory>${project.basedir}/wiki/TooltipData</outputDirectory>
          </configuration>
      </execution>