diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/CustomParsing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/CustomParsing/content.txt new file mode 100644 index 0000000000..a1cede903a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/CustomParsing/content.txt @@ -0,0 +1,68 @@ +!1 Parsing +# +''!-FitLibrary-!'' turns the text in a table cell into a value, such as an ''int'', ''String'' or ''Date''. + +However, sometimes: + + * You want to handle text in a special way. Eg, you want to treat "" or "null" as a null value rather than as a normal ''String''. + * You want to use simple text to represent objects of your own types + +''!-FitLibrary-!'' provides several mechanisms to cover these. + +!3 Handling Special values with a ''Finder Method'' + +For example, if we want to treat the text "null" in a table cell as representing '''null''', rather than the String "null", we can use a finder method. + +In your fixturing code, include the following method: +{{{ public String findString(String s) { + if ("null".equals(s)) + return null; + return s; + } +}}} * ''!-FitLibrary-!'' finds a method corresponding to an action. + * It automatically parses the arguments, based on their types, and calls the method. + * It also uses this approach for the returned value, based on the return type. + +By default, it uses built-in Parsers for the standard types. However: + + * It first checks if there is a ''finder method'' for each type in the fixturing code (actually, generally in scope, as discussed below). + * For type ''T'', the ''finder method'' is ''findT(String s)'' with a return type. + * If a ''finder method'' exists, ''!-FitLibrary-!'' instead uses that to turn the text from the table cell into an object. + * This works for any table in ''!-FitLibrary-!'' + +Consider another example, where we want to handle ''!-TimeStamp-!'' values in a special way. We would include a ''finder method'' for it: +{{{ public TimeStamp findTimeStamp(String s) { + ... + } +}}}This can then incorporate specialised code for handling odd ''!-TimeStamp-!''s, such as unknown ones. + +There is a corresponding method for displaying an object, a ''show method''. + +For example, if we wanted to show a '''null''' String as a empty String in any displays in a report, we could include the following method: +{{{ public String showString(String s) { + if (s == null) + return ""; + return s; + } +}}} +# +Why is it called a ''finder method''. + +I originally added this capability to allow for a domain-driven-design approach to storytests. + +Sometimes you need to refer to an existing entity in a storytest. But it may not be possible to refer to it by a visible key, or the key may be too long. + +So the idea is that you can invent names to refer to entities, such as "the customer", or "the third transaction". The ''finder method'' interprets these names for you, returning a reference to the appropriate object. + +After I added this, I realised that it could also be used for parsing arbitrary text for types with concrete values, such as dates and user-defined types. So I now use finders for those cases as well. + +What if a ''finder method'' needs to apply across lots of fixtures? Rather than repeating the finder code, you can include it in a custom global actions object. See .FitLibrary.SpecifiCations.AddingGlobalActionsObject for further details. + +!3 Parsing with user-defined classes +# +Instead of using ''finder methods'', it's possible to define a static method in your class C of the form: + +{{{ public static C parser(String s) { + ... + } +}}}This is called by ''!-FitLibrary-!'' to turn text into an object of type C. diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/CustomParsing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/CustomParsing/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/CustomParsing/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/DynamicVariables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/DynamicVariables/content.txt new file mode 100644 index 0000000000..1f4da618be --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/DynamicVariables/content.txt @@ -0,0 +1,49 @@ +Dynamic variables allow for storytests to take different values, depending on the values that have been defined. + +As a general rule, it's better to set a single value to a ''dynamic variable''. + + * Rather than using an !-!include-! and revising the value of variables and dynamic variables to alter the contents of the !-!include-!, make use of ''defined actions'' with appropriate parameters. + +Dynamic variables can be loaded from a properties file, as well as being set within storytests. +!2 Using Dynamic variables + * The value of a dynamic variable is accessed using the @{} form. Eg: + +|''with''|//input|''set text''|@{simone.name}| + + * They may be nested, such as within ''defined actions''. Eg, where ''person'' is a parameter, the value of the variable is resolved before resolving the dynamic variable value: + +|''with''|//input|''set text''|@{@{person}.name}| + + * To show the value of one or more dynamic variables: + +|'''show'''|''get''|@{simone.name} with card @{simone.credit card.number}| + + * If a dynamic variable doesn't have a value, the @{} form remains +!2 Changing Dynamic variables + * Load dynamic variables from a property file: + +|''add dynamic variables from file''|c:/props.txt| + + * Load dynamic variables from a unicode-based property file: + +|''add dynamic variables from unicode file''|c:/props.uni| + + * Set a dynamic variable to a string in a storytest: + +|'''set'''|simone.name|''to''|Simone| + + * Set a dynamic variable to the result of an action: + +|'''set'''|simone.id|''add''|Simone|''to''|Persons| + + * Set several dynamic variables at once in a storytest: + +|''set variables''| +|simone.name|Simone| +|simone.credit card.number|41111111| + + * Clear all dynamic properties: + +|''clear dynamic variables''| +!2 Specification +|.FitLibrary.SpecifiCations.DynamicVariables| diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/DynamicVariables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/DynamicVariables/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/DynamicVariables/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/FixtureLogging/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/FixtureLogging/content.txt new file mode 100644 index 0000000000..f6f348de6c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/FixtureLogging/content.txt @@ -0,0 +1,86 @@ +!1 2. In Fixturing/Code +# +Several techniques can be used at the fixturing/code level. The first, ''Print'', is quick, but can often be unsatisfactory. +# +----!2 2.1 Print +# + Use {{{ System.out.println();}}} to print information. For example, consider the following tables: + +!|fitlibrary.specify.log.LogExampleFromFixture| + +|''action that prints''|log4j| + +|''action that prints''|text| + +The underlying method as as follows:{{{ public boolean actionThatPrints(String s) { + System.out.println("Output "+s); + return true; + } +}}}The output from this is available after running a '''Test''' or '''Suite'''. + + * The output is accessed from the ''Output Captured'' button in the top-right-hand corner of the report. + * You can see that if you run this as a '''Test'''. + * The ''Output Captured'' button is only shown in a report if there is some output. + +The output is "escaped" so that any HTML is shown as the literal text rather than being displayed by the browser (eg, you see "text" rather than "''text''"). + + * But sometimes it can be more convenient to be able to structure displayed information, such as in a list or table. + +The major disadvantage of the ''Print'' approach is that you need to flip back and forth between the storytest and the output in order to understand what's going on. + + * This can be avoided by printing extra information so that you can see what-happens-when in relation to the tables. + * But that's extra work, repeating information and losing the advantage of the report information being displayed directly in the tables. +# +----!2 2.2 show() +# +Fixturing code can call the ''show()'' method to have information shown in the current row: + +|''action that shows''|AFTER all| + +The underlying method is in a subclass of ''!-DoFixture-!'':{{{ public void actionThatShows(String s) { + show(s); + } +}}}If your class is not a subclass of ''!-DoFixture-!'' (or equivalent) but is being used as a fixturing class (ie, so that ''!-FitLibrary-!'' auto-wraps it in a ''!-DoFixture-!''), you need to do a little more. + + * You can access the ''show()'' method by having your class ''implement !-RuntimeContextual-!'' so that it has a runtime injected into it. + * The runtime has a ''show()'' method. + +If your class is neither of those, then it's not possible to use this method. However, the some of the later techniques do apply. +# +----!2 2.3 showAfterTable() +# +Fixturing code can call the ''showAsAfterTable()'' method to have information shown after the table: + +|''action that shows after table''|AFTER all| + +The underlying method is in a subclass of ''!-DoFixture-!'':{{{ public void actionThatShowsAfterTable(String s) { + showAsAfterTable("My Log", s); + } +}}}If your class is not a subclass of ''!-DoFixture-!'' (or equivalent) but is being used as a fixturing class (ie, so that ''!-FitLibrary-!'' auto-wraps it in a ''!-DoFixture-!''), you need to do a little more. + + * You can access the ''showAsAfterTable()'' method by having your class ''implement !-RuntimeContextual-!'' so that it has a runtime injected into it. + * The runtime has a ''showAsAfterTable()'' method. + +If your class is neither of those, then it's not possible to use this method. However, the next two techniques do apply. +# +----!2 2.4 Request '''show''' when things go wrong +# +If an error is discovered by your fixture code, it can throw a ''!-FitLibraryShowException-!''. This will be caught by ''!-FitLibrary-!'' and the information will be shown after the current table. + +This is useful when the information displayed is best structured with HTML. + +For example, consider the following action: + +|''action that shows on error''|bad data| + +|''action that shows on error''|| + +The underlying method is:{{{ public void actionThatShows(String s) { + throw new FitLibraryShowException(new Show(s)); + } +}}}The class concerned can be any class at all. It does not need to be a subclass of ''!-DoFixture-!'', for example. +# +----!2 Next +# +On the [[next page of this tutorial][Log4jLogging]] we show how to handle logging with ''log4j'' from within code, and how to configure logging through storytest actions. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/FixtureLogging/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/FixtureLogging/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/FixtureLogging/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/ExampleFixturingLogger/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/ExampleFixturingLogger/content.txt new file mode 100644 index 0000000000..2801496661 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/ExampleFixturingLogger/content.txt @@ -0,0 +1,41 @@ +This is very similar to the last example, but a different logger is used: ''!-FixturingLogger-!''. + +!|fitlibrary.specify.log.AppWithFixturingLogger| + +The above fixturing code is as follows: +{{{ public class AppWithFixturingLogger { + private static Logger logger = FixturingLogger.getLogger(AppWithLog4j.class); + + public boolean call() { + logger.trace("App called"); + return true; + } + } +}}} +|''with fixturing logger''| +|''level''|TRACE| +|''show after''|true| + + * On ''Test'', the following has text added after the table, because we've enabled ''show after'' and the level is TRACE: + +|''call''| + +|''with fixturing logger''| +|''level''|DEBUG| + + * The following does not add text because the level is DEBUG, so trace() calls are not shown: + +|''call''| + +|''with fixturing logger''| +|''level''|TRACE| +|''show after''|false| + + * The following does not add text because we've disabled ''show after'': + +|''call''| + +# +----!1 Next +# +Continue with the [[rest of the tutorial here][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/ExampleLog4j/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/ExampleLog4j/content.txt new file mode 100644 index 0000000000..b5cdbb5596 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/ExampleLog4j/content.txt @@ -0,0 +1,56 @@ +!|fitlibrary.specify.log.AppWithLog4j| + +The above fixture refers to an object of class ''!-AppWithLog4j-!'', as follows: +{{{ public class AppWithLog4j { + private static Logger logger = Logger.getLogger(AppWithLog4j.class); + + public boolean call() { + logger.trace("App called"); + return true; + } + public void alsoShowFixturingInNormalLog(boolean delegate) { + FixturingLogger.setDelegatingToNormalLogger(delegate); + } + public void alsoShowFitLibraryInNormalLog(boolean delegate) { + FitLibraryLogger.setDelegatingToNormalLogger(delegate); + } + } +}}}The action ''call into application'' calls the method ''call()'' above. + +The last 2 methods above illustrate how to redirect these other loggers to the normal log4j logger. This may be useful if you want to interweave normal logging with the other specialised loggers. + +|''with log4j''| +|''show after''|true| +|''level''|TRACE| + + * On ''Test'', the following has text added after the table, because we've enabled ''show after'' and the level is TRACE: + +|''call''| + +|''!-with FitLibrary logger-!''| +|''level''|TRACE| + +|''call''| + +|''!-with FitLibrary logger-!''| +|''level''|OFF| + +|''with log4j''| +|''level''|DEBUG| + + * The following does not add text because the level is DEBUG, so trace() calls are not shown: + +|''call''| + +|''with log4j''| +|''level''|TRACE| +|''show after''|false| + + * The following does not add text because we've disabled ''show after'': + +|''call''| + +# +----!1 Next +# +Continue with the [[rest of the tutorial here][ + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/FitLibraryLog4j/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/FitLibraryLog4j/content.txt new file mode 100644 index 0000000000..4eaadacfda --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/FitLibraryLog4j/content.txt @@ -0,0 +1,54 @@ +!|fitlibrary.specify.log.AppWithLog4j| + +We need to add the following table afer our main fixture, otherwise the ''!-configure FitLibrary logger-!'' will take control of the storytest. + +|''!-with FitLibrary logger-!''| +|''show after''|true| +|''level''|TRACE| + +The above fixture is as follows: +{{{ public class AppWithLog4j { + private static Logger logger = Logger.getLogger(AppWithLog4j.class); + + public boolean call() { + logger.trace("App called"); + return true; + } + } +}}}The action ''call into application'' calls the method ''call()'' above. + +|''with log4j''| +|''show after''|true| +|''level''|TRACE| + + * On ''Test'', the following has text added after the table, because we've enabled ''show after'' and the level is TRACE: + +|''call''| + +|''with log4j''| +|''level''|DEBUG| + + * The following only adds logging from ''!-FitLibrary-!'' because the level of log4j is DEBUG, so trace() calls are not shown: + +|''call''| + + * Note that the following only turns off the logging into ''show after'' (by removing the appender); it does not have any other impact on logging with log4j. + +|''with log4j''| +|''show after''|false| + +|''!-with FitLibrary logger-!''| +|''show after''|false| + + * The following does not add text because we've disabled ''show after'' for both loggers: + +|''call''| + +!2 Notice: +# +It pays to turn off all logging into ''show after'' at the end of the storytest, so that it doesn't affect other storytests. + +# +----!1 Next +# +Return to the [[last page of the tutorial here][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/RoutingLogger/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/RoutingLogger/content.txt new file mode 100644 index 0000000000..620809137d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/RoutingLogger/content.txt @@ -0,0 +1,54 @@ +This is very similar to the last example, but we ensure that all logs are '''also''' routed to the normal log4j. + +!|fitlibrary.specify.log.AppWithFixturingLogger| + +We use this action to do it: + +|''route logging''| + +The above fixturing code is as follows: +{{{ public class AppWithFixturingLogger { + private static Logger logger = FixturingLogger.getLogger(AppWithLog4j.class); + + public boolean call() { + logger.trace("App called"); + return true; + } + public void routeLogging() { + Logger.getRootLogger().setLevel(Level.ALL); + Logger.getRootLogger().addAppender(new ConsoleAppender(new SimpleLayout())); + FixturingLogger.setDelegatingToNormalLogger(true); + } + } +}}} +|''with fixturing logger''| +|''level''|TRACE| + + * On ''Test'', the following has text added after the table, because we've enabled ''show after'' and the level is TRACE: + +|''call''| + +|''with fixturing logger''| +|''level''|DEBUG| + + * The following does not add text after the table because the level is DEBUG, so trace() calls are not shown there: + +|''call''| + +|''with fixturing logger''| +|''level''|TRACE| +|''show after''|false| + + * The following does not add text after the table because we've disabled ''show after'': + +|''call''| +# +!2 Routed logs +# +Notice that while we have reconfigured the ''fixturing logger'' at several points above, the normal ''log4j logger'' is unaltered and so it continues to log to the console. + +See ''Output Captured'' after running this storytest to see the logs that were directed to the console. +# +----!1 Next +# +Continue with the [[rest of the tutorial here][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/content.txt new file mode 100644 index 0000000000..04f80418c2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/content.txt @@ -0,0 +1,127 @@ +!1 3. log4j logging +# +There are three aspects to logging with log4j when using ''!-FitLibrary-!''. + + * Sections 3.3, 3.4 and 3.5 apply whether you're currently using log4j or not. + * Sections 3.1, 3.2 and 3.6 are only relevant to you if you're currently using log4j for logging in your application. + +We assume familiarity with log4j. See the manual that's part of the log4j download for a good introduction. + +If you use another logging system, and would like to be able to hook it into ''show after'' as in 3.1 below: + + * Contact me and I can add a plugin mechanism to allow it. Rick Mugridge (rick at rimuresearch.com). +# +----!2 3.1 Appending log4j output after tables +# +If you're having trouble working out what's going on (or wrong) in a storytest and/or your code, you may find it convenient to have your log4j logs appended after !-FitLibrary-! tables. + +To start this, add the following action to the top of your storytest, just after the table that specifies the main fixture (''false'' stops it): + +|''with log4j''| +|''show after''|true| + +This adds a special log4j ''Appender'' that will display log information in the report. (See the log4j docs for details of ''Appender''s if you're interested.) + + * This will not affect other appenders that you use in your application, such as writing to a log file. + * You configure logging to be enabled in log4j in the usual manner in order for logs to appear. + +When ''!-FitLibrary-!'' runs a storytest with ''show after'' turned on for log4j. + + * All the logging information that arrives while a table is executing will be appended to that table. + * The logging is thread-safe, so it will handle logging from several threads at once. + * Any logging that occurs after the storytest finished will not be shown in the report. + +Log4j levels can also be controller with the following actions, for example: + +|''with log4j''| +|''level''|DEBUG|''for''|''com.corp.us.app.pck''| + +or, for all: + +|''with log4j''| +|''level''|TRACE| + +Note that this is a global setting; it's not specific to a storytest and so will affect subsequent storytests in a suite. It's assumed that it will normally be used with a single storytest while investigating its behaviour. + +With careful use of packages (or other log4j ''names''), you can easily tailor the logs that are collected and thus shown after tables. + +See [[this page for an example][^ExampleLog4j]] +# +----!2 3.2 Logging to log4j from fixture code +# +Fixturing code can call the ''logText()'' method to have information logged with log4j (it will only show up if logging in normal log4j is enabled): + +|''action that logs''|logging to go to log4j| + +The underlying method is in a subclass of ''!-DoFixture-!'':{{{ public void actionThatLogs(String s) { + logText(s); + } +}}}# +----!2 3.3 Using !-FixturingLogger-! in your fixture +# +Here's how to use it in your fixture code if: + + * You don't use log4j in your application code, or + * You prefer to keep your fixture and application logging completely separate + +Similar actions to those above apply. However, it uses a separate "name space" so that its logging does not affect normal uses of log4j. + +See [[this page for an example][>ExampleFixturingLogger]] + +!-FixturingLogger-! is used by some of the fixtures in ''!-FitLibraryWeb-!'', such as for ''web services''. +# +----!2 3.4 Logging of ''!-FitLibrary-!'' itself +# +''!-FitLibrary-!'' uses log4j for logging as well. However, it uses another, separate "name space" so that its logging does not affect normal uses of log4j. + +You may like to turn on the logging in ''!-FitLibrary-!'' so you can see what it's doing. For example: + +|''!-with FitLibrary logger-!''| +|''level''|TRACE| +|''show after''|true| + +See [[this page for an example][^FitLibraryLog4j]] +# +----!2 3.5 Configuring ''!-FitLibraryLogger-!'' and ''!-FixturingLogger-!'' from property files +# +Two property files in the ''fitnesse'' directory (at the same level as ''!-FitNesseRoot-!'') are used to configure ''!-FitLibraryLogger-!'' and ''!-FixturingLogger-!'': + + * !-FitLibraryLogger.properties-! + * !-FixturingLogger.properties-! + +These use the standard log4j property configuration format, but are instead applied to the specialised loggers ''!-FitLibraryLogger-!'' and ''!-FixturingLogger-!''. + +These two files are both the same (as provided), as follows: +{{{ log4j.rootLogger=OFF,consoleAppender + log4j.appender.consoleAppender=org.apache.log4j.ConsoleAppender + log4j.appender.consoleAppender.layout=org.apache.log4j.PatternLayout + log4j.appender.consoleAppender.layout.ConversionPattern=%r [%t] %-5p %c %x - %m%n + log4j.appender.fileAppender=org.apache.log4j.RollingFileAppender + log4j.appender.fileAppender.File=logForFitLibrary.txt + log4j.appender.fileAppender.MaxFileSize=10MB + log4j.appender.fileAppender.MaxBackupIndex=1 + log4j.appender.fileAppender.layout=org.apache.log4j.PatternLayout + log4j.appender.fileAppender.layout.ConversionPattern=%r [%t] %-5p %c %x - %m%n +}}}To turn on logging to the console, change the first line to: +{{{ log4j.rootLogger=ALL,consoleAppender +}}}To just turn on logging after tables, change the first line to: +{{{ log4j.rootLogger=ALL +}}}To just turn on file logging, change the first line to: +{{{ log4j.rootLogger=ALL,fileAppender +}}}This may be helpful if a '''Test''' or '''Suite''' doesn't complete, as it will log all the communications that ''!-FitLibraryServer-!'' has with ''!-FitNesse-!''. + +You may want to also change the name of the logging file, and various other attributes. See the log4j documentation for details. + +To turn on after-table, console and file logging, change the first line to: +{{{ log4j.rootLogger=ALL,consoleAppender,fileAppender +}}}# +----!2 3.6 Routing to Standard log4j +# +The logging from ''!-FitLibraryLogger-!'' and/or ''!-FixturingLogger-!'' can be routed to the standard log4j: + + * So that you can include it in your usual log files, etc. + * This is done at the code level. See [[this page for an example][>RoutingLogger]]. +# +!1 The End +# +That's the end of this tutorial on logging. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/properties.xml new file mode 100644 index 0000000000..56af35643c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/Log4jLogging/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/content.txt new file mode 100644 index 0000000000..78073d2fab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/content.txt @@ -0,0 +1,90 @@ +It can be helpful to add logging to understand what's going on with storytests, and especially when something does not seem right. + +In this tutorial we show how to add logging at the storytest and at the fixturing/code level. We start with the storytest level. +# +!1 1. In Storytests +# +Several techniques can be used at the storytest level without further support at the fixturing/code level. +# +----!2 1.1 Show with actions +# +Use the '''show''' special action to display the value of an action directly in the report. + +For example, the action in the second table below results in "My result". This is displayed at the end of the row: + +!|fitlibrary.specify.log.LogExample| + +|'''show'''|''some action''| + +Here the output of the action contains HTML ("text"), so it is rendered by the browser: + +|'''show'''|''some action with html''| + +This can be convenient if you want to organise the data or highlight it in some way. For example, tabular data may be displayed in an HTML table. + +However, if you want to see the literal form, use '''show escaped''': + +|'''show escaped'''|''some action with html''| +# +----!2 1.2 Show with dynamic variables +# +We can show the value of a dynamic variable as well. Eg: + +|'''set'''|colour|''to''|red| + +|'''show'''|''get''|roses are @{colour}| + +|''get''|roses are @{colour}|'''is'''|roses are red| +# +----!2 1.3 Show After +# +This approach is convenient when you don't expect to look at the logged result very often, or it's long, so you don't want it visually cluttering up the report. + +'''show after''' includes the result of the action in a folding area after the table. + +|'''show after'''|some action| +|'''show after'''|''some action with html''| + +To simply include some text, use the ''get'' action, which just returns that text supplied to it: + +|'''show after'''|''get''|Some text| +# +----!2 1.4 Show After As +# +If there's lot of information, or different categories of information, it may be worth segmenting the '''show after''' logs into different folding areas. + +'''show after as''' includes name of the folding area as the first argument and provided the result of the action (such as ''some action'' below) in a named folding area after the table. + +|'''show after as'''|Other Log|some action| +|'''show after as'''|Further Log|''some action with html''| +|'''show after as'''|Other Log|''some action with html''| + +To simply include some text, use: + +|'''show after as'''|Other Log|''get''|Some text| +# +----!2 1.5 Log Text +# +If you want timing information included, or want to also log to a file (or elsewhere), this is a useful approach. + +'''logged''' logs the result of the action (such as ''some action'' below) in a folding area after the table. See later in this tutorial (2 pages on) for how to have this also logged to a file (or elsewhere). + +|'''logged'''|some action| +|'''logged'''|''some action with html''| +|'''logged'''|''some action with html''| + +You can also put '''logged''' at the end of the row: + +|some action|'''logged'''| + +To simply include some text, use: + +|'''logged'''|''get''|Some text| + +or + +|''log text''|Some text| +# +----!2 Next +# +On the [[next page of this tutorial][^FixtureLogging]] we show how to handle logging from the fixture/code level. diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/LoggingTechniques/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MigratingSlimDecisionTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MigratingSlimDecisionTables/content.txt new file mode 100644 index 0000000000..e71f1042f1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MigratingSlimDecisionTables/content.txt @@ -0,0 +1,49 @@ +!2 When is it easy to migrate decision tables? +# +Slim storytests that only use decision tables can be easily migrated to ''!-FitLibrary-!'' when: + + * The fixtures are written in Java + * Use is '''not''' made of the following in cells in the tables + * 3 < _ < 6 + * ~=3.14 + * < 5 + * != 4 + * $p= + * $p + + * No use is made of the ''table()'' method in the fixture code +# +!2 Why bother? +# +Scenarios in Slim are limited to containing ''Script Tables'', so it doesn't help with repetition in decision tables. + +''!-FitLibrary-!'' has something similar to scenarios, called [[''defined actions''][.FitLibrary.UserGuide.FitLibraryByExample.DefinedActions]], but they're superior as they can contain any tables. + +''!-FitLibrary-!'' has other capability that you may like to use, such as ''!-FitLibraryWeb-!'' fixtures for testing web systems (''!-SpiderFixture-!''), email, PDFs, databases, etc. +# +!2 How to change +# +There are four simple step: + +1. In the top-level page of your projects, add the following: +# +{{{!define TEST_RUNNER {fitlibrary.suite.FitLibraryServer} +}}}2. Remove the following: +# +{{{!define TEST_SYSTEM(slim} +}}}# +# +3. Add the classpath for fitlibrary.jar: +# +{{{!path fitlibrary.jar +}}}4. Finally, with your fixture classes, have them implement the Java interface ''!-RuleTable-!''. + + * This is an empty ''interface'' that's used a marker so that ''!-FitLibrary-!'' can tell that the table should be treated as a decision table. +# +!2 For example +# +!|fitlibrary.specify.calculate.RuleTableExample| +|in|in2|out?| +|1|1|2| +|2|2|4| +|3|4|7| diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MigratingSlimDecisionTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MigratingSlimDecisionTables/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MigratingSlimDecisionTables/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MultipleFlowObjects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MultipleFlowObjects/content.txt new file mode 100644 index 0000000000..2b76047135 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MultipleFlowObjects/content.txt @@ -0,0 +1,35 @@ +A storytest may need to check/update different sub-systems or systems in order to carry out a test. + +For example: + + * It may be interacting through a web browser but also also checking a database. + * It may be calling a web service, checking email has been sent, and verifying that the PDF attached to the email is correct. + * It may be calling several different web services + * It may be interacting with several distinct subsystems, through their APIs + +Let's continue with the browser/database example, for now: + +... TO BE COMPLETED + +But what happens if the actions of two flow objects are the same? This would happen if we were using two web services, for example. + +As we see in the next example, it's necessary to explicitly select between them: + +|''add''|!-fitlibrary.specify.select.FirstSelect-!|''as''|first| +|''add''|!-fitlibrary.specify.select.SecondSelect-!|''as''|second| + +|''select''|first| + +|''count''|'''is'''|1| + +|''select''|second| + +|''count''|'''is'''|2| + +|''select''|first| + +|''count''|'''is'''|1| + +|''select''|second| + +|''count''|'''is'''|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MultipleFlowObjects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MultipleFlowObjects/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/MultipleFlowObjects/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/RuntimeInjection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/RuntimeInjection/content.txt new file mode 100644 index 0000000000..d703e8ffde --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/RuntimeInjection/content.txt @@ -0,0 +1,20 @@ +It's possible, of course, to use a fixture directly, by calling its methods in code. + +However, it's assumed in ''!-FitLibrary-!'' that the underlying framework will inject a runtime into all fixture objects. The runtime contains such information as: + + * Values of dynamic variables + * Values of time-outs + * Defined actions + * References to the global action object, which provides methods for dealing with dynamic variables and etc + +If you try to use a fixture programmatically you may get an error "Runtime has not been injected into this". Here's the fix: + +After you create your fixture object, explicitly inject a runtime into it. Eg: +----{{{MyDoFixture doF = new MyDoFixture(); +doF.setRuntime(new RuntimeContextContainer()); +}}}---- +Now it's possible for this to be done automatically, and this will be added later. I don't want to do it automatically at this stage because it will hide any other potential problems with runtime. + +!**> Note for Rick +!2 Don't rename this page as it's referenced from within the code at Traverse.getRuntimeContext() +**! diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/RuntimeInjection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/RuntimeInjection/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/RuntimeInjection/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/SetUpTearDownOnFailure/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/SetUpTearDownOnFailure/content.txt new file mode 100644 index 0000000000..e69ed567ce --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/SetUpTearDownOnFailure/content.txt @@ -0,0 +1,41 @@ +Sometimes it's handy to be able to run some code when a fixture (or ''!-DomainAdapter-!'') starts and/or stops running. + + * For example, resources can be allocated at the start and released at the end. + +It's also handy to be able to take special action if a storytest fails. + + * For example, doing a screen dump of the browser interface when something has gone wrong. + +These are handled with three methods that may be optionally included in a fixture (or ''!-DomainAdapter-!''): + + * setUp() + * onFailure() + * tearDown() + +All of these methods are called, if they exist, even if stop-on-error is set. + +For the main fixture (or ''!-DomainAdapter-!'') that is used for the whole storytest: + + * setUp() -- called at the beginning, before any table is interpreted. + * onFailure() -- called at the end of the storytest, after all tables have been interpreted, but only if an error/fail has occurred. Called just before tearDown(). + * tearDown() -- called at the end of the storytest, after all tables have been interpreted. + +Other fixtures may be created to interpret a single table (or part of a table). In that case: + + * setUp() -- called at the beginning, before the table (or part of the table) is interpreted. + * onFailure() -- called at the end of the table, but only if an error/fail has occurred. Called just before tearDown(). + * tearDown() -- called at the end of the table. + +If the onFailure() method is called, as there has been a fail/error, and it returns a value: + + * That returned value is added as text to the end of the first row of the last table that's been interpreted, and marked as shown. + * The text can be HTML, which will be rendered by the browser. This allows for screen dumps and etc to be created. + +For suite fixtures, there are corresponding methods: + + * suiteSetUp() + * suiteTearDown() +# +!3 See +# +.FitLibrary.SpecifiCations.DoTableFixturing.OnFailure for specifications of ''onFailure()'' diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/SetUpTearDownOnFailure/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/SetUpTearDownOnFailure/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/SetUpTearDownOnFailure/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/content.txt new file mode 100644 index 0000000000..bc2a59eb00 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/content.txt @@ -0,0 +1,27 @@ +|[[Multiple Flow Objects][>MultipleFlowObjects]]|''For when a storytest has to affect different parts of a system, or several systems. Eg, running through a web browser and updating/checking a database''| +|[[Defined Actions][.FitLibrary.UserGuide.FitLibraryByExample.DefinedActions]]|''For when we find we're repeating the same sequence of actions, and want to name them as a single action''| +|[[Dynamic Variables][>DynamicVariables]]|''Dynamic variables allow for storytests to take different values, depending on the values that have been defined.''| + +Specific Sorts of Collections: + +|[[An ordered list][.FitLibrary.UserGuide.FitLibraryByExample.OrderedList]]|''Where the order of the elements in a collection is important''| +|[[An unordered list][.FitLibrary.UserGuide.FitLibraryByExample.UnorderedList]]|''Where the order of the elements is irrelevant''| +|[[Handling Subsets][.FitLibrary.UserGuide.FitLibraryByExample.SubSet]]|''Checking a subset of a collection''| +|[[Handling Maps][.FitLibrary.UserGuide.FitLibraryByExample.MapHandling]]|''Checking when the underlying data is stored as a Map''| +|[[Handling Arrays][.FitLibrary.UserGuide.FitLibraryByExample.SimpleArray]]|''Checking when the underlying (simple) data is stored as an array''| + +Implementation details: + +|[[set up, tear down, on failure methods][>SetUpTearDownOnFailure]]|''How to have code run when a fixture or storytest starts or finishes, and when it finishes with errors''| +|[[Runtime injection][>RuntimeInjection]]|''Technical details for advanced use of fixtures''| +|[[Specialised handling of table cell text][>CustomParsing]]|''How to handle null strings, special values, etc with custom parsing''| + +Migrating from Slim to ''!-FitLibrary-!'' + +|[[Migrating Decision Tables][^MigratingSlimDecisionTables]]|''How Slim storytests that only use decision tables can be very easily moved to ''!-FitLibrary-!'' ''| + +Logging Techniques + +|[[Logging Techniques][^LoggingTechniques]]|''How to log information to help understand what is happening''| + +This will be expanded further. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AdvancedTutorials/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/SuiteSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/SuiteSetUp/content.txt new file mode 100644 index 0000000000..082b97d0de --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/SuiteSetUp/content.txt @@ -0,0 +1,3 @@ +!|fitlibrary.eg.ChatSuite| + +|''select or''|skipped| diff --git a/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/SuiteSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/SuiteSetUp/properties.xml new file mode 100644 index 0000000000..812e51cbf8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/SuiteSetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20070107135019 + + + + + + + 1168131019531 + -7209608950152216224 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/content.txt new file mode 100644 index 0000000000..60cdff0b01 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/content.txt @@ -0,0 +1,7 @@ +This defines another suite + * This page includes a symbolic link to .FitLibrary.SuiteFixtureExample so that we can access the same storytests as the other suite + * This page includes a different ..FitLibrary.AnotherSuiteFixtureExample.SuiteSetUp from the other suite + * In this case, it uses the same suite fixture but chooses a different keyword + * So a different subset of storytests are run +|!contents| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/properties.xml new file mode 100644 index 0000000000..c5c14a3b34 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/AnotherSuiteFixtureExample/properties.xml @@ -0,0 +1,18 @@ + + + + + 20070107154306 + + + + + + + .FitLibrary.SuiteFixtureExample + + + + 1158223109396 + 1881132187854299693 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/CalculatorBusinessProcessExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/CalculatorBusinessProcessExample/content.txt new file mode 100644 index 0000000000..2a4f5378a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/CalculatorBusinessProcessExample/content.txt @@ -0,0 +1,25 @@ +A business process concerns the order that things happen, and their consequences. + +Here we show how adding and multiplying on a calculator affect the total. + +|''with a calculator''| + +|''given the total is''|10| + +|''+''|5| + +|''*''|10| + +|''the total now is''|150| + +But we don't get any useful feedback (by default) if the expected value is wrong: + +|''the total now is''|140| + +So we can use the special '''is''' instead, as follows: + +|''the total now''|'''is'''|140| + +as it shows what the actual result was. After all, it's just as easy to make mistakes in tests. + +Next: ChatBusinessProcessExample diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/CalculatorBusinessProcessExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/CalculatorBusinessProcessExample/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/CalculatorBusinessProcessExample/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBadPath/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBadPath/content.txt new file mode 100644 index 0000000000..fc88fe748e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBadPath/content.txt @@ -0,0 +1,8 @@ +When a user enters a chat room, that doesn't exist, that action can't succeed (it's rejected): + +|''with chat''| + +|''given''|anna|''is a connected user''| + +|'''reject'''|''when''|anna|''enters''|lotr|''room''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBadPath/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBadPath/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBadPath/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBusinessProcessExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBusinessProcessExample/content.txt new file mode 100644 index 0000000000..67637bc724 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBusinessProcessExample/content.txt @@ -0,0 +1,14 @@ +When a user enters a chat room, they are then an occupant of that room. + +|''with chat''| + +|''given''|anna|''is a connected user''| + +|''given''|lotr|''is a chat room''| + +|''when''|anna|''enters''|lotr|''room''| + +|''then occupants of''|lotr|''are''| +|''name''| +|anna| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBusinessProcessExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBusinessProcessExample/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/ChatBusinessProcessExample/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/CodeForDiscount/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/CodeForDiscount/content.txt new file mode 100644 index 0000000000..2448d358bf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/CodeForDiscount/content.txt @@ -0,0 +1,59 @@ +We repeat the table for convenience: + +|''A 5% discount is provided whenever the total purchase is greater than $1,000''| +|''given amount''|''expected discount?''| +|0.00|0.00| +|999.95|0.00| +|1000.00|0.00| +|1010.00|50.50| + +The class ''Global'' is loaded due to the first (infrastructure) table, that's included in .FitLibrary.BeginningTutorial.SuiteSetUp. The ''Global'' is used so that technical details such as class and package names are not visible in storytests. + +Ths ''Global'' class includes the following method: +----{{{ public Rule a5PercentDiscountIsProvidedWheneverTheTotalPurchaseIsGreaterThanDollar1Comma000() { + return new DiscountRule(); + } +}}}----This method is called when the first (visible) table of the storytest is executed. The first row of that table is turned into a method name (using extended camel casing). + +And here's the code for ''!-DiscountRule-!'': +----{{{public class DiscountRule implements Rule { + private DiscountingApplication sut = new DiscountingApplication(); + private double givenAmount; + + public void setGivenAmount(double givenAmount) { + this.givenAmount = givenAmount; + } + public double getExpectedDiscount() { + return sut.expectedDiscount(givenAmount); + } +} +}}}----Because the ''!-DiscountRule-!'' class implements ''Rule'' (a marker interface), the rest of the table is treated as a rule table: + + * The second row of the table names the input and expected columns. These are mapped directly to the setter and getter methods in ''!-DiscountRule-!'' + * The third row leads to: + * The method ''setGivenAmount()'' being called with the value 0.00 + * The method ''getExpectedDiscount()'' being called and it's result compared against the expected value of 0.00. + * As the expected value matches, it is coloured green + * The 4th, 5th and 6th rows are treated similarly to the third row, as decribed above + +So the ''!-DiscountRule-!'' acts as a "fixture" to manage the test, calling into the appropriate method in the application under test. + +The relevant code for the ''!-DiscountingApplication -!'' is as follows: +----{{{public class DiscountingApplication { + public double expectedDiscount(double amount) { + if (amount > 1000.00) + return amount * 0.05; + return 0.00; + } +} +}}}----In this case: + + * ''!-DiscountRule-!'' creates the application object so that it can call into it. + * No further setup of the application is needed, because the discount only depends on the amount; it does not depend on the state of the application. + * Money is (badly) represented as a ''double'', rather than as a ''Money'' type. + +We'll see variations on these later. + +!3 Next +# +[[Second Rule Table Example][.FitLibrary.BeginningTutorial.SecondRuleTableExample]] diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/CodeForDiscount/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/CodeForDiscount/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/CodeForDiscount/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/content.txt new file mode 100644 index 0000000000..dafe8e9a0c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/content.txt @@ -0,0 +1,30 @@ +!3 Rule Table for Discounts +# +A rule table is a way of defining, and testing, a business rule by providing several examples. + +In our first example, the discount is determined from a price (From ${fitBook}, p13): + +|''A 5% discount is provided whenever the total purchase is greater than $1,000''| +|''given amount''|''expected discount?''| +|0.00|0.00| +|999.95|0.00| +|1000.00|0.00| +|1010.00|50.50| + +The table format: + + * The first row of the table above describes the business rule. This row is called the "header". + + * The second row names the input and result columns. Here there is one input ("''given amount''") and one result ("''expected discount?''"). + + * The subsequent rows are examples. For example, when the ''given amount'' is 1010.00, the ''expected discount'' is 50.50. + + * The input column is to the left of the results column. Results are distinguished with a ''?'' at the end of the name. + +!3 Code +# +Here's the [[code for this example][^CodeForDiscount]] + +!3 Next +# +SecondRuleTableExample \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/FirstRuleTableExample/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/CodeForCreditLimits/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/CodeForCreditLimits/content.txt new file mode 100644 index 0000000000..0ad6c08051 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/CodeForCreditLimits/content.txt @@ -0,0 +1,76 @@ +!3 Tables +# +Here's some of the tables again, for convenience: + +|''Credit is allowed for worthy customers''| +|''months as customer''|''has paid reliably''|''balance owing''|''credit is allowed?''| +|14|yes|5000.00|yes| +|12|yes|5000.00|no| +|14|no|5000.00|no| +|14|yes|6000.00|no| + +|''Credit limit depends on whether credit is allowed''| +|''credit is allowed''|''credit limit?''| +|yes|1000.00| +|no|0.00| + +|''Credit is allowed for worthy customers who have been trading with us for''|14|''months''| +|''has paid reliably''|''balance owing''|''credit is allowed?''| +|yes|5000.00|yes| +|no|5000.00|no| +|yes|6000.00|no| +----As before, we start with the relevant methods in ''Global'': +{{{public class Global { + public Rule creditIsAllowedForWorthyCustomers() { + return new CreditRule(); + } + + public Rule creditLimitDependsOnWhetherCreditIsAllowed() { + return new CreditLimitRule(); + } + + public Rule creditIsAllowedForWorthyCustomersWhoHaveBeenTradingWithUsForMonths(int months) { + CreditRule creditLimitRule = new CreditRule(); + creditLimitRule.setMonthsAsCustomer(months); + return creditLimitRule; + } +} +}}}----And here's the ''!-CreditRule-!'' class: +{{{public class CreditRule implements Rule { + private CreditApplication sut = new CreditApplication(); + private int monthsAsCustomer; + private boolean hasPaidReliably; + private double balanceOwing; + + public void setMonthsAsCustomer(int monthsAsCustomer) { + this.monthsAsCustomer = monthsAsCustomer; + } + public void setHasPaidReliably(boolean hasPaidReliably) { + this.hasPaidReliably = hasPaidReliably; + } + public void setBalanceOwing(double balanceOwing) { + this.balanceOwing = balanceOwing; + } + public boolean getCreditIsAllowed() { + return sut.creditPermitted(monthsAsCustomer, hasPaidReliably, balanceOwing); + } + public double getCreditLimit() { + return sut.creditLimit(monthsAsCustomer, hasPaidReliably, balanceOwing); + } +} +}}}----Again, this implements ''Rule'', the marker interface. It has setter methods for each of the given column values, and getter methods for the results columns. + +It calls into the application to test it: +----{{{public class CreditApplication { + public boolean creditPermitted(int monthsAsCustomer, boolean hasPaidReliably, + double balanceOwing) { + return monthsAsCustomer > 12 && hasPaidReliably && balanceOwing < 6000.0; + } + public double creditLimit(int monthsAsCustomer, boolean hasPaidReliably, + double balanceOwing) { + if (creditPermitted(monthsAsCustomer, hasPaidReliably, balanceOwing)) + return 1000.0; + return 0.00; + } +} +}}}----Note that, in practice, the application code could well be structured around Customer objects. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/CodeForCreditLimits/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/CodeForCreditLimits/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/CodeForCreditLimits/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/content.txt new file mode 100644 index 0000000000..acfc146cb4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/content.txt @@ -0,0 +1,62 @@ +!3 A Rule Table for Credit Limits +# +In our next rule table example, the credit limit is determined from several inputs (From ${fitBook}, p17): + + * Credit is allowed, up to an amount of $1000, for a customer who has been trading with us for more than 12 months, has paid reliably over that period, and has a current balance owing of less than $6,000. + +|''Credit is allowed for worthy customers''| +|''months as customer''|''has paid reliably''|''balance owing''|''credit is allowed?''|''credit limit?''| +|14|yes|5000.00|yes|1000.00| +|12|yes|5000.00|no|0.00| +|14|no|5000.00|no|0.00| +|14|yes|6000.00|no|0.00| + +As the business rule is so long, we've summarised it in the first row of the table. + +Here we have three inputs and two results. We name the columns to be clear about their role. +# +!3 Splitting the business rule into two +# +Now, you may have noticed that whenever credit is allowed, the credit limit is fixed. So we can split the business rule into two rules: + + * Credit is allowed for a customer who has been trading with us for more than 12 months, has paid reliably over that period, and has a current balance owing of less than $6,000. + + * When credit is allowed, up to an amount of $1000 is permitted. + +|''Credit is allowed for worthy customers''| +|''months as customer''|''has paid reliably''|''balance owing''|''credit is allowed?''| +|14|yes|5000.00|yes| +|12|yes|5000.00|no| +|14|no|5000.00|no| +|14|yes|6000.00|no| + +|''Credit limit depends on whether credit is allowed''| +|''credit is allowed''|''credit limit?''| +|yes|1000.00| +|no|0.00| +# +!3 Splitting into separate tables for each major case +# +Sometimes it's convenient to have a table for each of the major cases of a business rule. For example, we could split into tables based on whether the customer has been trading with us for long enough, or not. + +|''Credit is allowed for worthy customers''| +|''months as customer''|''has paid reliably''|''balance owing''|''credit is allowed?''| +|14|yes|5000.00|yes| +|14|no|5000.00|no| +|14|yes|6000.00|no| + +We can now include the fixed value in the header of the table. + +|''Credit is allowed for worthy customers who have been trading with us for''|14|''months''| +|''has paid reliably''|''balance owing''|''credit is allowed?''| +|yes|5000.00|yes| +|no|5000.00|no| +|yes|6000.00|no| + +The first row now also provides an input that applies to all the data rows in that table. + +The ''months'' input is in the second cell of that header row. As we'll see soon, such inputs are in evenly-numbered cells, with the odd cells containing explanatory text. +# +!3 Code +# +Here's the [[code for this example][^CodeForCreditLimits]] diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SecondRuleTableExample/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SuiteSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SuiteSetUp/content.txt new file mode 100644 index 0000000000..0861e115e1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SuiteSetUp/content.txt @@ -0,0 +1,7 @@ +!**> technical infrastructure + +The following is needed to run this as a test. It's discussed in the code details. It can be set up by someone who has some technical knowledge. + +|''add global''|!-fitlibrary.tutorial.Global-!| + +**! diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SuiteSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SuiteSetUp/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/SuiteSetUp/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/content.txt new file mode 100644 index 0000000000..712805522a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/content.txt @@ -0,0 +1,49 @@ +!2 Introduction +# +In ''!-FitLibrary-!'', one or more tables are used to specify business rules and processes. + +Tables are used for two important reasons: + + * They help to clarify the language of the domain + * They provide a structure in which feedback is provided, such as whether a test passed or not. + +As we'll see in the following, tables are used in several different ways. +# +!2 Business Rules +# +A rule table is a way of defining, and testing, a business rule by providing several examples. + +|>FirstRuleTableExample|''Discount business rules''| +|>SecondRuleTableExample|''Credit limit rules''| + +Another approach to rules tables is here: .FitLibrary.UserGuide.FitLibraryByExample.CalculationRule +# +!2 Business Processes +# +A business process concerns the order that things happen, and their consequences. + +A workflow storytest shows what happens when an action is carried out on the system. The action could be carried out by: + * A user through a user interface + * Another system that sends or requests data and gives some signal + * An automatic background process that happens at certain times, such as every 10 minutes or at the end of the day + +|^CalculatorBusinessProcessExample|''Steps in using a calculator''| +|>ChatBusinessProcessExample|''Steps in using a simple chat system''| +|^ChatBadPath|''When an action is expected to fail''| + +Sometimes, some of the tables used in defining a business process will specify the details of a single business object, such as a Customer. + +--- examples of setting up and checking individual business objects... + +Or we may want to deal with collections of things, such as a list of customers who owe us more than $10,000. + +... examples of setting up and checking collections... + + +For further details, see .FitLibrary.UserGuide and .FitLibrary.ReferenCe.DoTables + +!2 Under Development +# +This tutorial is still under development. You'll find further information at .FitLibrary.UserGuide + +^SuiteSetUp diff --git a/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BeginningTutorial/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/BuildingFitLibrary/content.txt b/fitnesse/FitNesseRoot/FitLibrary/BuildingFitLibrary/content.txt new file mode 100644 index 0000000000..af120e8468 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BuildingFitLibrary/content.txt @@ -0,0 +1,44 @@ +!3 Build process +# +The Ant script ''build.xml'' provided in the top-level directory of the distributed release defines the build process. + +This is organised for a Hudson (http://www.hudson-ci.org) pipeline of ''projects'' for continuous integration. These are defined in Hudson as follows: + + * ''fitlibrary.build'' - polls git for a change and runs one Ant target: + * ''jar'' - compiles and creates ''fitlibrary.jar''. It copies this jar into the ''!-FitLibraryWeb-!'' directory. See below for directory-structure assumptions. + + * ''fitlibrary.specifications'' - follows from the previous stage (if successful). Runs two Ant targets: + * ''delete-batch-runner-results-dir'' + * ''batch-run-specifications'' -- runs the ''!-FitLibrary-!'' specifications in batch using ''!-FitLibraryRunner-!'' + + * ''fitlibrary.create.release.zip'' - follows from previous stage. Runs Ant target: + * ''create-release-zip'' - Copies all files for release into a separate folder and zips them up + + * ''fitlibrary.check.release'' - follows from previous stage. Runs Ant target: + * ''release-check'' - runs the ''!-FitLibrary-!'' specifications in batch again from an unzipped copy of the release, integrated with a fresh copy of ''!-FitNesse-!'' + + * ''fitlibrary.final.release'' - follows from previous stage. Runs Ant target: + * ''final-release'' - Renames the zip created from the ''fitlibrary.create.release.zip'' stage to include the date. Within Hudson, ''final.release.dir'' is changed so that it appears in win7 space. + +All of these Hudson projects share the workspace of ''fitlibrary.build''. +# +!3 Directory Structure Assumptions +# +The build process for ''!-FitLibrary-!'' assumes two git projects that are held in the same directory, as follows: + + * ''fitlibrary'' + * ''fitlibraryweb'' + +This allow the build process to copy any ''fitlibrary.jar'' update into ''../fitlibraryweb/fitnesse''. + +Note that with the Hudson pipeline, this happens within Hudson's copy of the files when it clones them from git (which, currently, is unnecessary). + +It is necessary to run the first stage, at least, of this process directly within the git folder so that: + + * ''!-FitNesse-!'' and ''!-FitLibraryRunner-!'' can be used to test changes to ''!-FitLibrary-!''. + * ''!-FitNesse-!'' and ''!-FitLibraryRunner-!'' can be used to test ''!-FitLibraryWeb-!'' with the latest ''fitlibrary.jar''. + +It is assumed that after the build succeeds, after any change to ''!-FitLibrary-!'': + + * The updated ''fitlibrary.jar'' that was auto-copied into ''fitlibraryweb'' will be committed + * Thus kicking off the ''fitlibraryweb'' build. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/BuildingFitLibrary/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/BuildingFitLibrary/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/BuildingFitLibrary/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/CrossReference/content.txt b/fitnesse/FitNesseRoot/FitLibrary/CrossReference/content.txt new file mode 100644 index 0000000000..0a57a8cc8f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/CrossReference/content.txt @@ -0,0 +1,18 @@ +!2 Cross-reference of the use of fixtures and ${doFixture} actions in storytests in a suite + * This can be included in any page. The argument to ''xref'' is the full name of a suite. + * ''xref'' runs through all storytests in the suite and determines which actions are used in which storytest. + + * It also walks over ''defined actions'' that are referenced in the suite and builds a cross-reference for those. + + * It produces a table, with links to the relevant pages + + * Because ''xref'' can't easily tell what rows are ${doFixture} actions, it marks those that may not be with a "~" and these appear at the end of the cross-reference table. + +Run this test to get a cross-reference of the use of ${doFixture} actions in storytests in the suite mentioned + +!|fitlibrary.DoFixture| + +|''xref''|.FitLibrary.SpecifiCations.DefinedActions| + +!3 Note that this doesn't work with all ''!-FitNesse-!'' versions, as it depends on trinidad code within ''!-FitNesse-!''. +It is known to work with fitnesse20090818 diff --git a/fitnesse/FitNesseRoot/FitLibrary/CrossReference/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/CrossReference/properties.xml new file mode 100644 index 0000000000..2e8a236bcf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/CrossReference/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1255037127406 + 8035047237467041367 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/DefinedActions/content.txt new file mode 100644 index 0000000000..429d71a07e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/DefinedActions/content.txt @@ -0,0 +1 @@ +!contents diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyItems/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyItems/content.txt new file mode 100644 index 0000000000..103e734c5f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyItems/content.txt @@ -0,0 +1,9 @@ +|!-fit.ActionFixture-!| +|start|!-BuyActions-!| +|check|total|00.00| +|enter|price|12.00| +|press|buy| +|check|total|12.00| +|enter|price|100.00| +|press|buy| +|check|total|112.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyItems/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyItems/properties.xml new file mode 100644 index 0000000000..c605534bcc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyItems/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1083363523383 + 8717702176529013388 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyWithColumn/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyWithColumn/content.txt new file mode 100644 index 0000000000..c9722016c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyWithColumn/content.txt @@ -0,0 +1,6 @@ +|!-BuyActionsWithColumn-!| +|price|total()| +|12.00|12.00| +|100.00|112.00| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyWithColumn/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyWithColumn/properties.xml new file mode 100644 index 0000000000..36e72d8703 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestBuyWithColumn/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1089169912703 + -364015300698810554 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestChatServer/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestChatServer/content.txt new file mode 100644 index 0000000000..d747fc599d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestChatServer/content.txt @@ -0,0 +1,11 @@ +|!-fit.ActionFixture-!| +|start|!-ChatServerActions-!| +|enter|user|anna| +|press|connect| +|enter|room|lotr| +|press|new room| +|press|enter room| +|enter|user|luke| +|press|connect| +|press|enter room| +|check|occupant count|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestChatServer/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestChatServer/properties.xml new file mode 100644 index 0000000000..a7ca577f39 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestChatServer/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1083363450385 + 5611163036537390981 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestLineItemsExercise/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestLineItemsExercise/content.txt new file mode 100644 index 0000000000..8ccd35fe67 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestLineItemsExercise/content.txt @@ -0,0 +1,11 @@ +|!-fit.ActionFixture-!| +|start|!-BuyActions-!| +|check|total|00.00| +|enter|price|45.00| +|press|buy| +|check|total|55.00| +|enter|price|100.00| +|press|buy| +|check|total|145.00| +|enter|price|100.00| +|check|total|255.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestLineItemsExercise/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestLineItemsExercise/properties.xml new file mode 100644 index 0000000000..995501d878 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/TestLineItemsExercise/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1083363629662 + 1418326968744198500 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/content.txt new file mode 100644 index 0000000000..920591482b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/content.txt @@ -0,0 +1 @@ +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/properties.xml new file mode 100644 index 0000000000..6323b3e020 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ActionFixtureTables/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1076810628968 + 1568487397853997998 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInActions/content.txt new file mode 100644 index 0000000000..3e1d5ee4ad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInActions/content.txt @@ -0,0 +1,4 @@ +|!-fit.ActionFixture-!| +|start|!-ChatServerActions2-!| +|enter|room|lotr| +|check|occupant count|error| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInActions/properties.xml new file mode 100644 index 0000000000..c5d687e583 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInActions/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1089594766984 + 7180552580960954487 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInCalculations/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInCalculations/content.txt new file mode 100644 index 0000000000..eb39963de4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInCalculations/content.txt @@ -0,0 +1,4 @@ +|!-CalculateDiscount-!| +|amount|discount()| +|-100.00|'''error'''| +|1200.00|60.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInCalculations/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInCalculations/properties.xml new file mode 100644 index 0000000000..705a51d048 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedErrorInCalculations/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1090017107937 + 1261126190088502527 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedRejectInActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedRejectInActions/content.txt new file mode 100644 index 0000000000..28f54ba653 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedRejectInActions/content.txt @@ -0,0 +1,7 @@ +|!-fit.ActionFixture-!| +|start|!-ChatServerActions2-!| +|enter|user|anna| +|press|connect| +|enter|room|lotr| +|press|enter room| +|check|room entered|no| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedRejectInActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedRejectInActions/properties.xml new file mode 100644 index 0000000000..b48182f578 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/ExpectedRejectInActions/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1095115437076 + 2910920018774991765 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRange/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRange/content.txt new file mode 100644 index 0000000000..84e6411bfc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRange/content.txt @@ -0,0 +1,6 @@ +|!-StressTest-!| +|clients|max reaction time|within time()| +|1|10|true| +|10|10|true| +|100|30|true| +|500|60|true| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRange/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRange/properties.xml new file mode 100644 index 0000000000..30fbeb2ad9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRange/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1089596463359 + -1391225353279735631 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRangeCompact/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRangeCompact/content.txt new file mode 100644 index 0000000000..00d427f1ae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRangeCompact/content.txt @@ -0,0 +1,6 @@ +|!-StressTest-!| +|clients|reaction time()| +|1|<10| +|10|<10| +|100|<30| +|500|<60| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRangeCompact/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRangeCompact/properties.xml new file mode 100644 index 0000000000..5089bc374b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/NumberInRangeCompact/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1089611735218 + 5175404554707105141 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/UnexpectedError/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/UnexpectedError/content.txt new file mode 100644 index 0000000000..aa5dcd7ea0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/UnexpectedError/content.txt @@ -0,0 +1,4 @@ +|!-CalculateDiscount-!| +|amount|discount()| +|-100.00|0.00| +|1200.00|60.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/UnexpectedError/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/UnexpectedError/properties.xml new file mode 100644 index 0000000000..736cad5ebb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/UnexpectedError/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1090015655093 + 6952782694010871122 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/content.txt new file mode 100644 index 0000000000..3208741146 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/content.txt @@ -0,0 +1 @@ +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/properties.xml new file mode 100644 index 0000000000..b1ef5a29dc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/AdvancedTables/properties.xml @@ -0,0 +1,12 @@ + + + + 20041220154003 + + + + + + 1090015794078 + 7097353651470894182 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/TestOccupants/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/TestOccupants/content.txt new file mode 100644 index 0000000000..606a9097fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/TestOccupants/content.txt @@ -0,0 +1,4 @@ +|!-OccupantList-!| +|''user''|''login time''|''entry time''| +|anna|15:45|15:48| +|luke|16:03|17:14| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/TestOccupants/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/TestOccupants/properties.xml new file mode 100644 index 0000000000..64251f4e7f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/TestOccupants/properties.xml @@ -0,0 +1,11 @@ + + + + 20041221132248 + + + + + 1102387774447 + -5855416619472946971 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/content.txt new file mode 100644 index 0000000000..7990dfd288 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/content.txt @@ -0,0 +1 @@ +^TestOccupants diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/properties.xml new file mode 100644 index 0000000000..0d98211aa0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ArchiTecture/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1102387703826 + -7856328033040350775 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestRentEze/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestRentEze/content.txt new file mode 100644 index 0000000000..38e8f12263 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestRentEze/content.txt @@ -0,0 +1,11 @@ +|!-DoRentEze-!| + +|''setup''| +|''rental item''|''count''|''$/hour''| +|coffee dispenser|10|8.20| +|hot water dispenser|12|8.00| + +|''rental items''| +|''name''|''count''|''$/hour''| +|coffee dispenser|10|8.20| +|hot water dispenser|12|8.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestRentEze/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestRentEze/properties.xml new file mode 100644 index 0000000000..6a4ccb4da1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestRentEze/properties.xml @@ -0,0 +1,11 @@ + + + + 20041220165336 + + + + + 1103514816206 + 1664672720236160923 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestTransfer/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestTransfer/content.txt new file mode 100644 index 0000000000..8d2e975c4d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestTransfer/content.txt @@ -0,0 +1,5 @@ +|!-DoTransfer-!| +|''transfer''|some text 2| +|check|''result''|some text 2| +|''transfer''|other| +|check|''result''|other| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestTransfer/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestTransfer/properties.xml new file mode 100644 index 0000000000..57b09f2e2c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/TestTransfer/properties.xml @@ -0,0 +1,11 @@ + + + + 20041220165324 + + + + + 1099299956940 + -8692163464229487636 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/content.txt new file mode 100644 index 0000000000..c8233d27a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/content.txt @@ -0,0 +1,2 @@ +^TestTransfer +^TestRentEze diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/properties.xml new file mode 100644 index 0000000000..0419d013e2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentalFixtures/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1099451404290 + 671383349459639245 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp1/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp1/content.txt new file mode 100644 index 0000000000..a064950bc9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp1/content.txt @@ -0,0 +1,10 @@ +|!-rent.StartApplication-!| + +|''enter rental items''| +|''name''|''count''|''$/day''| +|coffee dispenser|10|8.20| +|hot water dispenser|12|8.00| + +|''enter clients''| +|''name''|''phone''| +|Joanna|373 7599| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp1/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp1/properties.xml new file mode 100644 index 0000000000..b112b978cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp1/properties.xml @@ -0,0 +1,11 @@ + + + + 20081124201807 + + + + + 1090033814250 + -2708696762057795869 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp2/content.txt new file mode 100644 index 0000000000..ebd4da28be --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp2/content.txt @@ -0,0 +1,13 @@ +|!-rent.StartApplication-!| + +|''enter rental items''| +|''name''|''count''|''$/day''| +|coffee dispenser|10|8.20| +|hot water dispenser|12|8.00| + +|''enter clients''| +|''name''|''phone''| +|Joanna|373 7599| + +|''client''|Joanna| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp2/properties.xml new file mode 100644 index 0000000000..06b85be9bf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/SetUp2/properties.xml @@ -0,0 +1,11 @@ + + + + 20081124201807 + + + + + 1090033863453 + -6959550055790265693 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn1/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn1/content.txt new file mode 100644 index 0000000000..b70449ad6d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn1/content.txt @@ -0,0 +1,11 @@ +|''rental entry''| +|''client''|''rental item''|''count''|''days''| +|Joanna|coffee dispenser|5|1| +|Joanna|hot water dispenser|2|2| + +|''client''|Joanna|''returns''|4|''of''|coffee dispenser| +|''client''|Joanna|''returns''|2|''of''|hot water dispenser| + +|''rental list''| +|''client''|''rental item''|''count''|''days''| +|Joanna|coffee dispenser|1|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn1/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn1/properties.xml new file mode 100644 index 0000000000..6afe5e8d4c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn1/properties.xml @@ -0,0 +1,11 @@ + + + + 20041221213614 + + + + + 1093570057559 + 6204314738922688751 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn2/content.txt new file mode 100644 index 0000000000..7464d8f29d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn2/content.txt @@ -0,0 +1,11 @@ +|''rental entry''|Joanna| +|''rental item''|''count''|''days''| +|coffee dispenser|5|1| +|hot water dispenser|2|1| + +|''return''|4||coffee dispenser| +|''return''|2||hot water dispenser| + +|''rentals for client''|Joanna| +|''rental item''|''count''|''days''| +|coffee dispenser|1|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn2/properties.xml new file mode 100644 index 0000000000..602b3890d6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturn2/properties.xml @@ -0,0 +1,11 @@ + + + + 20041221213638 + + + + + 1090033895421 + -220981978745508658 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturnsInitial/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturnsInitial/content.txt new file mode 100644 index 0000000000..6ea3af971e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturnsInitial/content.txt @@ -0,0 +1,41 @@ +|!-fit.ActionFixture-!| +|start|rent.Application| + +|!-rent.RentalItems-!| +|''name''|''count''|''cost per day''|''add()''| +|coffee dispenser|10|8.20|true| +|hot water dispenser|12|8.00|true| + +|!-rent.Clients-!| +|''name''|''phone''|''add()''| +|Joanna|373 7599|true| + +|!-fit.ActionFixture-!| +|enter|client name|Joanna| +|enter|item|coffee dispenser| +|enter|count|5| +|enter|days|1| +|press|hire| +|check|cost|41.00| +|enter|item|hot water dispenser| +|enter|count|2| +|press|hire| +|check|cost|16.00| + +|!-rent.RentalList-!| +|''client''|''rental item name''|''count''|''days''| +|Joanna|coffee dispenser|5|1| +|Joanna|hot water dispenser|2|1| + +|!-fit.ActionFixture-!| +|enter|client name|Joanna| +|enter|item|coffee dispenser| +|enter|count|4| +|press|return| +|enter|item|hot water dispenser| +|enter|count|2| +|press|returns| + +|!-rent.RentalList-!| +|''client''|''rental item name''|''count''|''days''| +|Joanna|coffee dispenser|1|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturnsInitial/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturnsInitial/properties.xml new file mode 100644 index 0000000000..23fc40fa77 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestPartialReturnsInitial/properties.xml @@ -0,0 +1,11 @@ + + + + 20081124201807 + + + + + 1106004885296 + 1073122113676780509 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental1/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental1/content.txt new file mode 100644 index 0000000000..a1f9af32a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental1/content.txt @@ -0,0 +1,8 @@ +|''client''|Joanna|''hires''|5|''of''|coffee dispenser|''for''|1|''days''| +|''client''|Joanna|''hires''|2|''of''|hot water dispenser|''for''|2|''days''| +|check|cost|16.00| + +|''rental list''| +|''client''|''rental item''|''count''|''days''| +|Joanna|coffee dispenser|5|1| +|Joanna|hot water dispenser|2|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental1/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental1/properties.xml new file mode 100644 index 0000000000..f64f123abd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental1/properties.xml @@ -0,0 +1,11 @@ + + + + 20041221213600 + + + + + 1093570028397 + -6254816625870721907 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental2/content.txt new file mode 100644 index 0000000000..c3508f101b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental2/content.txt @@ -0,0 +1,8 @@ +|''hire''|5||coffee dispenser|''for''|1|''days''| +|''hire''|2||hot water dispenser|''for''|2|''days''| +|check|cost|16.00| + +|''rentals for client''|Joanna| +|''rental item''|''count''|''days''| +|coffee dispenser|5|1| +|hot water dispenser|2|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental2/properties.xml new file mode 100644 index 0000000000..ad1e6f8f6c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/TestRental2/properties.xml @@ -0,0 +1,11 @@ + + + + 20041221213630 + + + + + 1093570276524 + -2753841863632318560 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/content.txt new file mode 100644 index 0000000000..cc64a8adfb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/content.txt @@ -0,0 +1,8 @@ +^TestPartialReturnsInitial +^SetUp1 +^TestRental1 +^TestPartialReturn1 +^SetUp2 +^TestRental2 +^TestPartialReturn2 +(These tests are completed in the next chapter, so they don't run.) diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/properties.xml new file mode 100644 index 0000000000..a8e7b4c309 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CashRentals/properties.xml @@ -0,0 +1,11 @@ + + + + 20081124201807 + + + + + 1103847233183 + 7746755071904691367 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCredit/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCredit/content.txt new file mode 100644 index 0000000000..206839c6e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCredit/content.txt @@ -0,0 +1,8 @@ +|!-CalculateCredit-!| +|''months''|''reliable''|''balance''|''allow credit()''|''credit limit()''| +|14|true|5000.00|true|1000.00| +|''0''|true|0.00|false|0.00| +|24|''false''|0.00|false|0.00| +|18|true|''6000.00''|false|0.00| +|''12''|true|5500.00|true|1000.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCredit/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCredit/properties.xml new file mode 100644 index 0000000000..e5e046419b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCredit/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1098409465458 + -5439349877079203496 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditExercise/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditExercise/content.txt new file mode 100644 index 0000000000..2627254f1c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditExercise/content.txt @@ -0,0 +1,6 @@ +|!-CalculateCredit-!| +|''months''|''reliable''|''balance''|''allow credit()''|''credit limit()''| +|13|true|5900.00|true|1000.00| +|12|true|0.00|false|1000.00| +|24|false|1000.00|false|0.00| +|18|false|6000.00|true|1000.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditExercise/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditExercise/properties.xml new file mode 100644 index 0000000000..23138baeaf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditExercise/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1097103566261 + 1505651269864144901 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditK/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditK/content.txt new file mode 100644 index 0000000000..8e399e58e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditK/content.txt @@ -0,0 +1,8 @@ +|!-CalculateCredit-!| +|!-월-!|!-신용자격유무-!|!-잔액|신용허용()-!|!-신용한도액()-!| +|14|true|5000.00|true|1000.00| +|''0''|true|0.00|false|0.00| +|24|''false''|0.00|false|0.00| +|18|true|''6000.00''|false|0.00| +|''12''|true|5500.00|true|1000.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditK/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditK/properties.xml new file mode 100644 index 0000000000..8128c4ef61 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestCreditK/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1098223794002 + 2292447216708190861 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscount/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscount/content.txt new file mode 100644 index 0000000000..3a39bc93d8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscount/content.txt @@ -0,0 +1,10 @@ +|!-CalculateDiscount-!| +|''amount''|''discount()''| +|0.00|0.00| +|100.00|0.00| +|999.00|0.00| +|1000.00|0.00| +|1010.00|50.50| +|1100.00|55.00| +|1200.00|60.00| +|2000.00|100.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscount/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscount/properties.xml new file mode 100644 index 0000000000..e916970653 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscount/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1097103403884 + 2930974514990139399 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscountExercise/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscountExercise/content.txt new file mode 100644 index 0000000000..fa080afabe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscountExercise/content.txt @@ -0,0 +1,6 @@ +|!-CalculateDiscount-!| +|amount|discount()| +|1.00|0.00| +|10.00|0.50| +|1400.00|75.00| +|20000.00|200.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscountExercise/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscountExercise/properties.xml new file mode 100644 index 0000000000..5584f77c2b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestDiscountExercise/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1083361444393 + 4690772067146454077 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestQuotedStrings/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestQuotedStrings/content.txt new file mode 100644 index 0000000000..ccc96201e3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestQuotedStrings/content.txt @@ -0,0 +1,3 @@ +!|CalculateQuoted| +|input |countSpaces()|countChars()| +|" + "|8 | 9 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestQuotedStrings/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestQuotedStrings/properties.xml new file mode 100644 index 0000000000..88dddd2934 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestQuotedStrings/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1084830004071 + -6548484500114448949 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleLists/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleLists/content.txt new file mode 100644 index 0000000000..91ef72ad35 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleLists/content.txt @@ -0,0 +1,3 @@ +|!-CalculateFirstPhoneNumber-!| +|''phones''|''first()''| +|(209)373 7453, (209)373 7454|(209)373 7453| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleLists/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleLists/properties.xml new file mode 100644 index 0000000000..7d5c627bd7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleLists/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1097103620589 + -8844374795440199919 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleListsNone/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleListsNone/content.txt new file mode 100644 index 0000000000..fc8933edb3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleListsNone/content.txt @@ -0,0 +1,4 @@ +|!-CalculateFirstPhoneNumber-!| +|phones|first()| +||none| +|(209)373 7453, (209)373 7454|(209)373 7453| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleListsNone/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleListsNone/properties.xml new file mode 100644 index 0000000000..e625569905 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/TestSimpleListsNone/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1083361544516 + 6567214354553646873 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/content.txt new file mode 100644 index 0000000000..04a927dc77 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/content.txt @@ -0,0 +1,2 @@ +|!contents| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/properties.xml new file mode 100644 index 0000000000..337a28b149 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/ColumnFixtureTables/properties.xml @@ -0,0 +1,12 @@ + + + + 20041220091006 + + + + + + 1103487006698 + 3306265622551824185 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CopyRight/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CopyRight/content.txt new file mode 100644 index 0000000000..f05248798e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CopyRight/content.txt @@ -0,0 +1,2 @@ +Copyright (c) 2003 Rick Mugridge (rimu), University of Auckland, NZ +Released under the terms of the GNU General Public License version 2 or later. diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CopyRight/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CopyRight/properties.xml new file mode 100644 index 0000000000..7752d4b503 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CopyRight/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1071035919875 + -3133647269499349265 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/AllFiles/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/AllFiles/content.txt new file mode 100644 index 0000000000..95edf6d668 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/AllFiles/content.txt @@ -0,0 +1,5 @@ +|!-eg.AllFiles-!| +|!-PatientTests/*.html-!|| +|!-StaffScheduleTests/*.html-!|| +|!-BedOccupancyTests/*.html-!|| +|!-ObservationTests/*.html-!|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/AllFiles/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/AllFiles/properties.xml new file mode 100644 index 0000000000..50758a2a2a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/AllFiles/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1077311836250 + -1991902708080640084 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/SmokeTests/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/SmokeTests/content.txt new file mode 100644 index 0000000000..a150a08dad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/SmokeTests/content.txt @@ -0,0 +1,5 @@ +|!-eg.AllFiles-!| +|!-PatientTests/*Smoke.html-!|| +|!-StaffScheduleTests/*Smoke.html-!|| +|!-BedOccupancyTests/*Smoke.html-!|| +|!-ObservationTests/*Smoke.html-!|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/SmokeTests/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/SmokeTests/properties.xml new file mode 100644 index 0000000000..f632f42187 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/SmokeTests/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1077313000562 + -8881952876672111361 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/content.txt new file mode 100644 index 0000000000..4b15686feb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/content.txt @@ -0,0 +1,2 @@ +^AllFiles +^SmokeTests diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/properties.xml new file mode 100644 index 0000000000..5fb33f5da1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CreatingTables/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1077312981781 + 5715029698075920179 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/ChatGraph/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/ChatGraph/content.txt new file mode 100644 index 0000000000..348b100702 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/ChatGraph/content.txt @@ -0,0 +1,2 @@ +|!-UsersAndRooms-!| +|check|users|!img http://files/ChatGraph.gif| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/ChatGraph/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/ChatGraph/properties.xml new file mode 100644 index 0000000000..12b0600f61 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/ChatGraph/properties.xml @@ -0,0 +1,12 @@ + + + + 20050118214653 + + + + + + 1106038013609 + 4998877226473779808 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/InvoiceTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/InvoiceTable/content.txt new file mode 100644 index 0000000000..85725150b9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/InvoiceTable/content.txt @@ -0,0 +1,10 @@ +|!-TaxInvoice-!| +|Uni of Auckland|Delivered to:|Number:|216017-01| +|Private Bag 92019|Attn: Sal Mayha|Date:|05/01/04| +|Auckland|Uni of Auckland|Order:|TC000015473-REPL| +|||Cust:|UNI34| +|'' #''|''Part Number''|''Description''|''Dispatch''|''Price''|''Total''| +|1|CAT 98142-00-GH|L3 Switch 32x1000T|1|6804.00|6804.00| +|2|CAT 99000-01-PH|Macronetic switch|2|2317.00|2317.00| +|||||Total:|9121.00| +|Special Delivery:|AS0555P| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/InvoiceTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/InvoiceTable/properties.xml new file mode 100644 index 0000000000..8f6402ee23 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/InvoiceTable/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1089446721828 + 8670704719582029633 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/SokoBan/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/SokoBan/content.txt new file mode 100644 index 0000000000..98f143e2ca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/SokoBan/content.txt @@ -0,0 +1,20 @@ +|!-StartSokoban-!| + +|board| +|!img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg|!img !img !img !img http://files/images/wall.jpg|!img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg|!img !img !img !img http://files/images/wall.jpg|!img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/shelf.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/box.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/shelf.jpg|!img !img http://files/images/box.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/worker.jpg|!img http://files/images/box.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/shelf.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/box.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/shelf.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/box.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/shelf.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/box.jpg|!img http://files/images/shelf.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img http://files/images/space.jpg|!img !img !img !img http://files/images/space.jpg|!img http://files/images/space.jpg|!img !img http://files/images/wall.jpg| +|!img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg|!img !img !img !img http://files/images/wall.jpg|!img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg|!img !img !img !img http://files/images/wall.jpg|!img http://files/images/wall.jpg|!img !img http://files/images/wall.jpg| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/SokoBan/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/SokoBan/properties.xml new file mode 100644 index 0000000000..bcff111558 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/SokoBan/properties.xml @@ -0,0 +1,12 @@ + + + + 20050116173631 + + + + + + 1104717955576 + -1989728620921394516 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/content.txt new file mode 100644 index 0000000000..a79235b2a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/content.txt @@ -0,0 +1,3 @@ +^InvoiceTable +^ChatGraph +^SokoBan diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/properties.xml new file mode 100644 index 0000000000..68f177a246 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/CustomTables/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1100421050371 + 8198272373258803299 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/AddBondSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/AddBondSetUp/content.txt new file mode 100644 index 0000000000..838f046cdf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/AddBondSetUp/content.txt @@ -0,0 +1,14 @@ +|!-rent.StartApplication-!| + +|''enter rental items''| +|''name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''enter clients''| +|''name''|''phone''| +|Joanna|373 7599| + +|''client''|Joanna| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/AddBondSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/AddBondSetUp/properties.xml new file mode 100644 index 0000000000..a5ba8b45c4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/AddBondSetUp/properties.xml @@ -0,0 +1,11 @@ + + + + 20081124201807 + + + + + 1096856378612 + -7350760794861695854 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetDate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetDate/content.txt new file mode 100644 index 0000000000..4a5ad25e21 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetDate/content.txt @@ -0,0 +1 @@ +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetDate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetDate/properties.xml new file mode 100644 index 0000000000..d154a9ba84 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetDate/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090041419328 + -4932836538311190616 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetUp2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetUp2/content.txt new file mode 100644 index 0000000000..66187be5a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetUp2/content.txt @@ -0,0 +1,17 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetUp2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetUp2/properties.xml new file mode 100644 index 0000000000..ed298c1c6a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/SetUp2/properties.xml @@ -0,0 +1,12 @@ + + + + 20081124201807 + + + + + + 1103511058843 + -98041718459498383 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCancelTransaction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCancelTransaction/content.txt new file mode 100644 index 0000000000..f873c670af --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCancelTransaction/content.txt @@ -0,0 +1,24 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|100||cup|''for''|2|''weeks''| +|''pay with cash $''|410.00| +|reject|''cancel transaction''| +|''refund cash $''|410.00| +|''cancel transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCancelTransaction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCancelTransaction/properties.xml new file mode 100644 index 0000000000..1f0e4c38cc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCancelTransaction/properties.xml @@ -0,0 +1,12 @@ + + + + 20081124201807 + + + + + + 1103512825173 + -8130616810128926164 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCupsRental/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCupsRental/content.txt new file mode 100644 index 0000000000..7e9d9e7c6b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCupsRental/content.txt @@ -0,0 +1,31 @@ + * ''!-SetUp-!'' +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''setup''| +|''client name''|''phone''|''account limit''| +|Joanna|373 7599|0.00| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| +!3 ''Rental of cups for 2 weeks:'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|100||cup|''for''|2|''weeks''| +|''pay with cash $''|410.00| +|''complete transaction''| + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/06 09:01|2004/05/20 09:01| + +|''rental item subset''| +|''name''|''count''| +|cup|400| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCupsRental/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCupsRental/properties.xml new file mode 100644 index 0000000000..37d876a152 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestCupsRental/properties.xml @@ -0,0 +1,12 @@ + + + + 20081124201807 + + + + + + 1106336746171 + 2652471853356450518 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestEnsure/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestEnsure/content.txt new file mode 100644 index 0000000000..d5652c17fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestEnsure/content.txt @@ -0,0 +1,4 @@ +|''begin transaction for client''| Joanna |''staff''| Darryl| +|ensure|''rent''|100||cup|''for''|2|''weeks''| +|ensure|''pay with cash $''|210.00| +|ensure|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestEnsure/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestEnsure/properties.xml new file mode 100644 index 0000000000..49206fc189 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestEnsure/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096090224715 + -2405389512390720163 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental10/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental10/content.txt new file mode 100644 index 0000000000..c0910548cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental10/content.txt @@ -0,0 +1,5 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''rent''|100||cup|''for''|2|''weeks''| +|reject|''complete transaction''| +|''pay with cash $''|210.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental10/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental10/properties.xml new file mode 100644 index 0000000000..fe53a08773 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental10/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096857970262 + 3875765006901580582 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental11/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental11/content.txt new file mode 100644 index 0000000000..1161502ee3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental11/content.txt @@ -0,0 +1,6 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|100||cup|''for''|2|''weeks''| +|''pay with cash $''|410.00| +|reject|''cancel transaction''| +|''refund cash $''|410.00| +|''cancel transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental11/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental11/properties.xml new file mode 100644 index 0000000000..17a51290a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental11/properties.xml @@ -0,0 +1,11 @@ + + + + 20050119161917 + + + + + 1106104757359 + -5492646974841883832 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental3/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental3/content.txt new file mode 100644 index 0000000000..0abf9c6ef0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental3/content.txt @@ -0,0 +1,6 @@ +|''rent''|100||cup|''for''|2|''weeks''| +|check|cost|210.00| + +|''rentals for client''|Joanna| +|''rental item''|''count''|''weeks''| +|cup|100|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental3/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental3/properties.xml new file mode 100644 index 0000000000..8efb73ee26 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental3/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090536139471 + 5610194875711680057 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental4/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental4/content.txt new file mode 100644 index 0000000000..1476bef4d8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental4/content.txt @@ -0,0 +1,12 @@ +|''rent''|100||cup|''for''|2|''weeks''| +|check|cost|210.00| + +|''rentals for client''|Joanna| +|''rental item''|''count''|''weeks''| +|cup|100|2| + +|''rental item list''| +|''name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|400|0.05|0.45|2.00|0.10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental4/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental4/properties.xml new file mode 100644 index 0000000000..e3b94dfe8f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental4/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090536171627 + 1196138245319219693 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental5/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental5/content.txt new file mode 100644 index 0000000000..0439153cb9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental5/content.txt @@ -0,0 +1,10 @@ +|''rent''|100||cup|''for''|2|''weeks''| +|check|cost|210.00| + +|''rentals for client''|Joanna| +|''rental item''|''count''|''weeks''| +|cup|100|2| + +|''rental item subset list''| +|''name''|''count''| +|cup|400| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental5/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental5/properties.xml new file mode 100644 index 0000000000..f6d6ce332e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental5/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090536180955 + 1174506135203659799 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental6/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental6/content.txt new file mode 100644 index 0000000000..69bc5c4a7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental6/content.txt @@ -0,0 +1,10 @@ +|''rent''|100||cup|''for''|2|''weeks''| +|check|cost|210.00| + +|''rentals for client''|Joanna| +|''rental item''|''count''|''start date''|''hours''|''days''|''weeks''| +|cup|100|2004/05/06 09:01|0|0|2| + +|''rental item subset list''| +|''name''|''count''| +|cup|400| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental6/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental6/properties.xml new file mode 100644 index 0000000000..ead2b28ab8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental6/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090536189001 + 8196510164100554631 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental7/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental7/content.txt new file mode 100644 index 0000000000..f9c2e7f53e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental7/content.txt @@ -0,0 +1,3 @@ +|''rentals for client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/06 09:01|2004/05/20 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental7/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental7/properties.xml new file mode 100644 index 0000000000..00b8ab1823 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental7/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090536003054 + -9197059465426548798 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental8/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental8/content.txt new file mode 100644 index 0000000000..e428a5e620 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental8/content.txt @@ -0,0 +1,6 @@ +|''begin transaction for client''| Joanna | +|''rent''|100||cup|''for''|2|''weeks''| +|check|''total is $''|210.00 | +|''pay with cash $''|210.00| +|check|''total is $''|0.00 | +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental8/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental8/properties.xml new file mode 100644 index 0000000000..28c19f5755 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental8/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096090129028 + -3936642938350806004 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental9/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental9/content.txt new file mode 100644 index 0000000000..f76dc0dec8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental9/content.txt @@ -0,0 +1,12 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|100||cup|''for''|2|''weeks''| +|''pay with cash $''|210.00| +|''complete transaction''| + +|''rentals for client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/06 09:01|2004/05/20 09:01| + +|''rental item subset''| +|''name''|''count''| +|cup|400| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental9/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental9/properties.xml new file mode 100644 index 0000000000..109170625a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestRental9/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096856868823 + -650574645593338052 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestTransaction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestTransaction/content.txt new file mode 100644 index 0000000000..3f73d728ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestTransaction/content.txt @@ -0,0 +1,4 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''rent''|100||cup|''for''|2|''weeks''| +|''pay with cash $''|210.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestTransaction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestTransaction/properties.xml new file mode 100644 index 0000000000..803ad1d302 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/TestTransaction/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1099799716123 + 6997304733681375748 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/content.txt new file mode 100644 index 0000000000..4f11c6d63b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/content.txt @@ -0,0 +1,16 @@ +|^AddBondSetUp| +|^TestRental3| +|^TestRental4| +|^TestRental5| +|^SetDate| +|^TestRental6| +|^TestRental7| +|^TestRental8| +|^TestRental9| +|^TestRental10| +|^TestTransaction| +|^SetUp2| +|^TestCupsRental| +|^TestRental11| +|^TestCancelTransaction| +|^TestEnsure| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/properties.xml new file mode 100644 index 0000000000..9e5e43021f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/DateRentals/properties.xml @@ -0,0 +1,12 @@ + + + + 20041221132152 + + + + + + 1103588512988 + -4280091233552136392 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairCharge/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairCharge/content.txt new file mode 100644 index 0000000000..0c3803a6b8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairCharge/content.txt @@ -0,0 +1,16 @@ +|!-rent.CalculateCharge-!| + +|''rates $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''hours''|''days''|''hours()''|''days()''| +|0|1|0|1| +|23|0|0|1| + +|''rates $''|1.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''hours''|''days''|''hours()''|''days()''| +|23|0|23|0| + +|''rates $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''hours''|''days''|''weeks''|''days()''|''weeks()''| +|0|4|0|4|0| +|0|5|0|0|1| +|0|6|0|0|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairCharge/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairCharge/properties.xml new file mode 100644 index 0000000000..61c0e00798 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairCharge/properties.xml @@ -0,0 +1,11 @@ + + + + 20041221131754 + + + + + 1103588174421 + 7638361516274043381 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDuration/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDuration/content.txt new file mode 100644 index 0000000000..9f0a4e14f3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDuration/content.txt @@ -0,0 +1,19 @@ +|!-rent.CalculateFairCharge-!| + +|''rates $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''duration''||''fairly-charged duration''| +|1 day||1 day| +|8 hours||8 hours| +|9 hours||1 day| +|23 hours||1 day| +|3 days 4 hours||3 days 4 hours| + +|''rates $''|1.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''duration''||''fairly-charged duration''| +|23 hours||23 hours| + +|''rates $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''duration''||''fairly-charged duration''| +|4 days||4 days| +|5 days||1 week| +|6 days 5 hours||1 week| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDuration/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDuration/properties.xml new file mode 100644 index 0000000000..999fef7ade --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDuration/properties.xml @@ -0,0 +1,12 @@ + + + + 20050118210903 + + + + + + 1106035743812 + 5784669760121368829 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDurationFirstTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDurationFirstTable/content.txt new file mode 100644 index 0000000000..45a260c0df --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDurationFirstTable/content.txt @@ -0,0 +1,9 @@ +|!-rent.CalculateFairCharge-!| + +|''rates $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''duration''||''fairly-charged duration''| +|1 day||1 day| +|8 hours||8 hours| +|9 hours||1 day| +|23 hours||1 day| +|3 days 4 hours||3 days 4 hours| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDurationFirstTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDurationFirstTable/properties.xml new file mode 100644 index 0000000000..4170a6a005 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/FairChargeDurationFirstTable/properties.xml @@ -0,0 +1,11 @@ + + + + 20050118211250 + + + + + 1106035970734 + -8353258307277069748 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefunded/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefunded/content.txt new file mode 100644 index 0000000000..a843f5f9fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefunded/content.txt @@ -0,0 +1,35 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| + +|''set up rentals''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/06 09:01|2004/05/07 09:01| + +|''time is now''|2004/05/07 08:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|100||cup| +|''refund cash $''|10.00| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''| + +|''rental item subset''| +|''name''|''count''| +|cup|500| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefunded/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefunded/properties.xml new file mode 100644 index 0000000000..edb40d8ce2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefunded/properties.xml @@ -0,0 +1,12 @@ + + + + 20081124201807 + + + + + + 1103513271444 + 6387594741691041408 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefundedSub/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefundedSub/content.txt new file mode 100644 index 0000000000..79fd1e62df --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefundedSub/content.txt @@ -0,0 +1,10 @@ +|''enter rentals''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/06 09:01|2004/05/07 09:01| + +|''time is now''|2004/05/07 08:01| + +|''begin transaction for client''| Joanna |''staff''| Darryl| +|''return''|100||cup| +|''refund cash $''|10.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefundedSub/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefundedSub/properties.xml new file mode 100644 index 0000000000..d3438cf200 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsNotRefundedSub/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1097022101211 + -4033195546396108874 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsRefunded/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsRefunded/content.txt new file mode 100644 index 0000000000..a319a61eda --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsRefunded/content.txt @@ -0,0 +1,10 @@ +|''rental entry''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/06 09:01|2004/05/06 12:01| + +|''time is now''|2004/05/06 11:00| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return''|100||cup| +|''refund cash $''|15.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsRefunded/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsRefunded/properties.xml new file mode 100644 index 0000000000..f37dbccc05 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/OneHourEarlyIsRefunded/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1097022090305 + -2269698691891356893 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable/content.txt new file mode 100644 index 0000000000..b8674ca3a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable/content.txt @@ -0,0 +1,3 @@ +|!-CalculateRefund-!| +|''per hour''|''per day''|''per week''|''pay from''|''pay to''|''returned''|''refund()''| +|0.05|0.45|2.00|2004/05/06 09:01|2004/05/06 12:01|2004/05/06 11:00|5.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable/properties.xml new file mode 100644 index 0000000000..6466209aee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable/properties.xml @@ -0,0 +1,11 @@ + + + + 20050118124047 + + + + + 1106005247171 + -5637148216100574961 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable2/content.txt new file mode 100644 index 0000000000..37c64d88d2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable2/content.txt @@ -0,0 +1,6 @@ +|!-CalculateRefund-!| +|''per hour''|''per day''|''per week''|''hours1''|''days1''|''weeks1''|''hours2''|''days2''|''weeks2''|''refund()''| +|0.05|0.45|2.00|3|0|0|3|0|0|0.00| +||||3|0|0|2|0|0|5.00| +||||0|1|0|23|0|0|0.00| +||||0|1|0|0|1|0|0.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable2/properties.xml new file mode 100644 index 0000000000..4b9dddeaae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SketchedTable2/properties.xml @@ -0,0 +1,11 @@ + + + + 20050118124135 + + + + + 1106005295625 + -2922946753653860441 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTables/content.txt new file mode 100644 index 0000000000..19abad5534 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTables/content.txt @@ -0,0 +1,21 @@ +|!-rent.CalculateRefund-!| + +|''rate $''|5.00|''/hour''|45.00|''/day''|200.00|''/week''| +|''hours1''|''hours2''|''refund()''| +|3|3|0.00| +|3|2|5.00| +|5|1|20.00| + +|''rate $''|5.00|''/hour''|45.00|''/day''|200.00|''/week''| +|''hours1''|''days1''|''hours2''|''days2''|''refund()''| +|0|1|0|1|0.00| +|0|1|23|0|0.00| +|0|2|0|1|45.00| +|0|1|9|0|0.00| +|0|1|8|0|5.00| + +|''rate $''|5.00|''/hour''|45.00|''/day''|200.00|''/week''| +|''days1''|''weeks1''|''days2''|''weeks2''|''refund()''| +|0|1|0|1|0.00| +|0|1|6|0|0.00| +|0|2|0|1|200.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTables/properties.xml new file mode 100644 index 0000000000..97fc9fe4f5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTables/properties.xml @@ -0,0 +1,12 @@ + + + + 20041220164410 + + + + + + 1103514250382 + -4230648872352987809 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration/content.txt new file mode 100644 index 0000000000..cac9ea1596 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration/content.txt @@ -0,0 +1,37 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| + +|''refund $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''paid time''|''actual time''||''refund''| +|3 hours|3 hours||0.00| +|3 hours|2 hours||5.00| +|5 hours|1 hours||20.00| + +|''refund $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''paid time''|''actual time''||''refund''| +|1 day|1 day||0.00| +|1 day|23 hours||0.00| +|2 days|1 day||45.00| +|1 day|9 hours||0.00| +|1 day|8 hours||5.00| + +|''refund $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''paid time''|''actual time''||''refund''| +|1 week|1 week||0.00| +|1 week|6 days||0.00| +|2 weeks|1 week||200.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration/properties.xml new file mode 100644 index 0000000000..fb2cf5eb36 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration/properties.xml @@ -0,0 +1,12 @@ + + + + 20081124201807 + + + + + + 1103513360172 + 12299728157022811 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration2/content.txt new file mode 100644 index 0000000000..100d4bf0f3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration2/content.txt @@ -0,0 +1,21 @@ +!|rent.CalculateRefund2| + +|''refund $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''paid time''|''actual time''||''refund''| +|3 hours|3 hours||0.00| +|3 hours|2 hours||5.00| +|5 hours|1 hours||20.00| + +|''refund $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''paid time''|''actual time''||''refund''| +|1 day|1 day||0.00| +|1 day|23 hours||0.00| +|2 days|1 day||45.00| +|1 day|9 hours||0.00| +|1 day|8 hours||5.00| + +|''refund $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''paid time''|''actual time''||''refund''| +|1 week|1 week||0.00| +|1 week|6 days||0.00| +|2 weeks|1 week||200.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration2/properties.xml new file mode 100644 index 0000000000..93cb148b68 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDuration2/properties.xml @@ -0,0 +1,14 @@ + + + + + 20050122105751 + + + + + + + 1106344666937 + -1487540448352330074 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDurationPart/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDurationPart/content.txt new file mode 100644 index 0000000000..34b2582002 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDurationPart/content.txt @@ -0,0 +1,8 @@ +|!-rent.StartApplication-!| + +|''refund $''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''paid time''|''actual time''||''refund''| +|3 hours|3 hours||0.00| +|3 hours|2 hours||5.00| +|5 hours|1 hours||20.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDurationPart/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDurationPart/properties.xml new file mode 100644 index 0000000000..69063d47b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/SplitTablesDurationPart/properties.xml @@ -0,0 +1,11 @@ + + + + 20081124201807 + + + + + 1099959612891 + -3037585191142571208 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithKeywordParameters/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithKeywordParameters/content.txt new file mode 100644 index 0000000000..3000c13116 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithKeywordParameters/content.txt @@ -0,0 +1,6 @@ +|''calculate refund $''|0.05|''/hour''|0.45|''/day''|2.00|''/week''| +|''hours1''|''days1''|''weeks1''|''hours2''|''days2''|''weeks2''|''refund()''| +|3|0|0|3|0|0|0.00| +|3|0|0|2|0|0|5.00| +|0|1|0|23|0|0|0.00| +|0|1|0|0|1|0|0.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithKeywordParameters/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithKeywordParameters/properties.xml new file mode 100644 index 0000000000..aae09d91a2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithKeywordParameters/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090374284343 + 5163104321195030289 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithParameters/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithParameters/content.txt new file mode 100644 index 0000000000..b0a4c1f00c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithParameters/content.txt @@ -0,0 +1,6 @@ +|!-CalculateRefund-!|0.05|0.45|2.00| +|''hours1''|''days1''|''weeks1''|''hours2''|''days2''|''weeks2''|''refund()''| +|3|0|0|3|0|0|0.00| +|3|0|0|2|0|0|5.00| +|0|1|0|23|0|0|0.00| +|0|1|0|0|1|0|0.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithParameters/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithParameters/properties.xml new file mode 100644 index 0000000000..9ac75547c4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/WithParameters/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090374265813 + -8435995621388492150 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/content.txt new file mode 100644 index 0000000000..bc08a56f04 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/content.txt @@ -0,0 +1,14 @@ +^OneHourEarlyIsRefunded +^OneHourEarlyIsNotRefundedSub +^OneHourEarlyIsNotRefunded +^SketchedTable +^SketchedTable2 +^WithParameters +^WithKeywordParameters +^SplitTables +^FairCharge +^FairChargeDuration +^FairChargeDurationFirstTable +^SplitTablesDuration +^SplitTablesDuration2 +^SplitTablesDurationPart diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/properties.xml new file mode 100644 index 0000000000..714a7fa43e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/EarlyReturn/properties.xml @@ -0,0 +1,12 @@ + + + + 20050122105719 + + + + + + 1106344639812 + 2208000211850980860 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/DiscountGroupsSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/DiscountGroupsSetUp/content.txt new file mode 100644 index 0000000000..8b1b2706cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/DiscountGroupsSetUp/content.txt @@ -0,0 +1,7 @@ +|!-DiscountGroupsSetUp-!| +|future value|max balance|min purchase|discount %| +|low|0.00|0.00|0| +|medium|0.00|500.00|5| +|medium|500.00|500.00|3| +|high|500.00|2000.00|10| +|high|1000.00|500.00|5| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/DiscountGroupsSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/DiscountGroupsSetUp/properties.xml new file mode 100644 index 0000000000..523043c151 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/DiscountGroupsSetUp/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1095998895680 + -5542328112299789571 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCloseRoomFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCloseRoomFails/content.txt new file mode 100644 index 0000000000..225c206026 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCloseRoomFails/content.txt @@ -0,0 +1,13 @@ +!2 A room can't be removed if someone is in it +| !-ChatStart-! | + +|''connect user''|anna| + +|''user''|anna|''creates''|lotr|''room''| + +|''user''|anna|''enters''|lotr|''room''| +|reject|''remove''|lotr|''room''| + +|''user''|anna|''leaves''|lotr|''room''| +|''remove''|lotr|''room''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCloseRoomFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCloseRoomFails/properties.xml new file mode 100644 index 0000000000..0372c68aba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCloseRoomFails/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1097006851535 + 5447078082210024846 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJ/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJ/content.txt new file mode 100644 index 0000000000..cfa56fa0e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJ/content.txt @@ -0,0 +1,7 @@ +|!-CalculateCredit3-!| +|!-月数-!|!-信頼度-!|!-残高-!||!-クレジットを許可する-!|!-クレジットの限度-!| +|14|!-真-!|5000.00||!-真-!|1000.00| +|''0''|!-真-!|0.00||!-偽-!|0.00| +|24|''!-偽-!''|0.00||!-偽-!|0.00| +|18|!-真-!|''6000.00''||!-偽-!|0.00| +|''12''|!-真-!|5500.00||!-真-!|1000.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJ/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJ/properties.xml new file mode 100644 index 0000000000..7a60cd49d9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJ/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1098239181191 + -9034401765706484141 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJapanese/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJapanese/content.txt new file mode 100644 index 0000000000..1929e0eeb1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJapanese/content.txt @@ -0,0 +1,9 @@ +|!-CalculateCredit4-!| + +|!-クレジットを計算する-!| +|!-月数-!|!-信頼度-!|!-残高-!||!-クレジットを許可する-!|!-クレジットの限度-!| +|14|!-真-!|5000.00||!-真-!|1000.00| +|''0''|!-真-!|0.00||!-偽-!|0.00| +|24|''!-偽-!''|0.00||!-偽-!|0.00| +|18|!-真-!|''6000.00''||!-偽-!|0.00| +|''12''|!-真-!|5500.00||!-真-!|1000.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJapanese/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJapanese/properties.xml new file mode 100644 index 0000000000..7c8e20ed3c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditJapanese/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1098239090503 + 2752721865597305739 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditK/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditK/content.txt new file mode 100644 index 0000000000..152ad6e929 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditK/content.txt @@ -0,0 +1,8 @@ +|!-신용 산정-!| +|!-월-!|!-신용자격유무-!|!-잔액-!||!-신용허용-!|!-신용한도액-!| +|14|!-예-!|5000.00||!-예-!|1000.00| +|0|!-예-!|0.00||!-아니오-!|0.00| +|24|!-아니오-!|0.00||!-아니오-!|0.00| +|18|!-예-!|6000.00||!-아니오-!|0.00| +|12|!-예-!|5500.00||!-예-!|1000.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditK/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditK/properties.xml new file mode 100644 index 0000000000..81f14c23f1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditK/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1098302293590 + -4712413506879578717 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditKorean/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditKorean/content.txt new file mode 100644 index 0000000000..f244afa75f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditKorean/content.txt @@ -0,0 +1,10 @@ +|!-CalculateCredit4-!| + +|!-신용 산정-!| +|!-월-!|!-신용자격유무-!|!-잔액-!||!-신용허용-!|!-신용한도액-!| +|14|!-예-!|5000.00||!-예-!|1000.00| +|0|!-예-!|0.00||!-아니오-!|0.00| +|24|!-아니오-!|0.00||!-아니오-!|0.00| +|18|!-예-!|6000.00||!-아니오-!|0.00| +|12|!-예-!|5500.00||!-예-!|1000.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditKorean/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditKorean/properties.xml new file mode 100644 index 0000000000..084e189ef1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestCreditKorean/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1098302336996 + -8757211782805025040 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDisconnect/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDisconnect/content.txt new file mode 100644 index 0000000000..62905a0848 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDisconnect/content.txt @@ -0,0 +1,15 @@ +| !-ChatStart-! | + +|''connect user''|anna| + +|''user''|anna|''creates''|lotr|''room''| + +|''user''|anna|''enters''|lotr|''room''| + +|''users in room''|lotr| +|''name''| +|luke| + +|''disconnect user''|anna| + +|check|''occupant count''|lotr|0| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDisconnect/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDisconnect/properties.xml new file mode 100644 index 0000000000..00a4a3b558 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDisconnect/properties.xml @@ -0,0 +1,12 @@ + + + + 20070815113556 + + + + + + 1187192156397 + -2486610678125806879 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscount/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscount/content.txt new file mode 100644 index 0000000000..0a8e6df9e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscount/content.txt @@ -0,0 +1,8 @@ +|!-CalculatedDiscount-!| +|''$''||''discount''| +|0.00||0.00| +|1000.00||0.00| +|1010.00||50.50| +|1100.00||55.00| +|1200.00||60.00| +|2000.00||100.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscount/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscount/properties.xml new file mode 100644 index 0000000000..3a30de2259 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscount/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1095991223538 + -4259722243261850206 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroups/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroups/content.txt new file mode 100644 index 0000000000..e1a0a6431d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroups/content.txt @@ -0,0 +1,7 @@ +|!-DiscountGroupsEntry-!| +|future value|max balance|min purchase|discount %|add()| +|low|0.00|0.00|0|true| +|medium|0.00|500.00|5|true| +|medium|500.00|500.00|3|true| +|high|500.00|2000.00|10|true| +|high|1000.00|500.00|5|true| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroups/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroups/properties.xml new file mode 100644 index 0000000000..40c9cafe9c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroups/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1089709089640 + 6628935846650040515 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroupsArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroupsArray/content.txt new file mode 100644 index 0000000000..906e3286e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroupsArray/content.txt @@ -0,0 +1,8 @@ +|!-DiscountGroupArrayList-!| +|''future value''|''max owing''|''min purchase''|''discount %''| +|low|0.00|0.00|0| +|low|0.00|2000.00|3| +|medium|500.00|600.00|3| +|medium|0.00|500.00|5| +|high|2000.00|2000.00|10| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroupsArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroupsArray/properties.xml new file mode 100644 index 0000000000..0301f27b5d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDiscountGroupsArray/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1088843734894 + 4874997366064778968 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDoDiscountGroups/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDoDiscountGroups/content.txt new file mode 100644 index 0000000000..0f37739a72 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDoDiscountGroups/content.txt @@ -0,0 +1,26 @@ +|Discounts| + +|set ups| +|''future value''|''max balance''|''min purchase''|''discount %''| +|low|0.00|0.00|0| +|medium|0.00|500.00|5| +|medium|500.00|500.00|3| +|high|500.00|2000.00|10| +|high|1000.00|500.00|5| + +|''calculate with''|low|''future value''| +|''owing''|''purchase''||''discount''| +|0.00|1000.00||0.00| +|1000.00|5000.00||0.00| + +|ordered list| +|''future value''|''max owing''|''min purchase''|''discount %''| +|low|0.00|0.00|0| +|medium|0.00|500.00|5| +|medium|500.00|500.00|3| +|high|500.00|2000.00|10| +|high|1000.00|500.00|5| + +|subset| +|''future value''|''max owing''|''min purchase''|''discount %''| +|low|0.00|0.00|0| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDoDiscountGroups/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDoDiscountGroups/properties.xml new file mode 100644 index 0000000000..245d25fce3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestDoDiscountGroups/properties.xml @@ -0,0 +1,12 @@ + + + + 20041220150154 + + + + + + 1103508114890 + 4380711467834409173 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestLeaveByDisconnect/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestLeaveByDisconnect/content.txt new file mode 100644 index 0000000000..e00358ccf5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestLeaveByDisconnect/content.txt @@ -0,0 +1,12 @@ +!2 A disconnected user leaves all rooms +| !-ChatStart-! | + +|''connect user''|anna| + +|''user''|anna|''creates''|lotr|''room''| + +|''user''|anna|''enters''|lotr|''room''| + +|''disconnect user''|anna| + +|''room is empty''|lotr| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestLeaveByDisconnect/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestLeaveByDisconnect/properties.xml new file mode 100644 index 0000000000..82e310cb1d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestLeaveByDisconnect/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1097006809799 + 8816180592731440738 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestRoom/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestRoom/content.txt new file mode 100644 index 0000000000..171df5e0f4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestRoom/content.txt @@ -0,0 +1,10 @@ +| !-ChatStart-! | + +|''connect user''|anna| + +|''user''|anna|''creates''|lotr|''room''| + +|''user''|anna|''enters''|lotr|''room''| + +|''room''|lotr| +|check|''occupant count''|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestRoom/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestRoom/properties.xml new file mode 100644 index 0000000000..a6c1610dc0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestRoom/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1097006869848 + 6485426868977100253 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSetUp/content.txt new file mode 100644 index 0000000000..c965ac3986 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSetUp/content.txt @@ -0,0 +1,7 @@ +|set ups| +|''future value''|''max balance''|''min purchase''|''discount %''| +|low|0.00|0.00|0| +|medium|0.00|500.00|5| +|medium|500.00|500.00|3| +|high|500.00|2000.00|10| +|high|1000.00|500.00|5| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSetUp/properties.xml new file mode 100644 index 0000000000..15f194baf2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSetUp/properties.xml @@ -0,0 +1,11 @@ + + + + 20041220150812 + + + + + 1103508484752 + 7099110686233908171 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSubset/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSubset/content.txt new file mode 100644 index 0000000000..660389bfdf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSubset/content.txt @@ -0,0 +1,4 @@ +|!-DiscountGroupSubsetList-!| +|''future value''|''max owing''|''min purchase''|''discount %''| +|high|2000.00|2000.00|10| +|medium|0.00|500.00|5| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSubset/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSubset/properties.xml new file mode 100644 index 0000000000..14fb0eb86a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestSubset/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1084136575708 + 9087257986554515635 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestUser/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestUser/content.txt new file mode 100644 index 0000000000..04ba9370c6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestUser/content.txt @@ -0,0 +1,11 @@ +|!-ChatStart-!| + +|''connect''|anna| +|''creates''|lotr|''room''| +|''enters''|lotr|''room''| + +|''room''|lotr| +|check|''owner''|anna| +|''rename''|LOTR| + +|check|''occupant count''|LOTR|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestUser/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestUser/properties.xml new file mode 100644 index 0000000000..a6e4cbe053 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/TestUser/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1097012695020 + 3623482506674058446 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/content.txt new file mode 100644 index 0000000000..046309972b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/content.txt @@ -0,0 +1,3 @@ +|!contents| + +^TestSetUp diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/properties.xml new file mode 100644 index 0000000000..7613a86580 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/FlowTables/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1102200121607 + -9013501541955762290 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLate/content.txt new file mode 100644 index 0000000000..bb0f5b5059 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLate/content.txt @@ -0,0 +1,8 @@ +|!-rent.CalculateLateHours-!| +|''hours late''|''grace''|''count grace''|''high demand''|''extra hours()''| +|0|1|yes|10|0| +|0.9|1|no|10|0| +|1|1|yes|5|6| +|1|1|no|12|0| +|9|1|no|10|18| +|19|2|no|100|117| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLate/properties.xml new file mode 100644 index 0000000000..8fa1125d49 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLate/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1096853347163 + 3566807414116646296 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFive/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFive/content.txt new file mode 100644 index 0000000000..0066eecb15 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFive/content.txt @@ -0,0 +1,8 @@ +|calculate late extra| +|''hours late''|''count grace''|''extra time()''| +|0|yes|0| +|0.9|no|0| +|1|yes|1| +|1|no|0| +|9|yes|9| +|9|no|8| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFive/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFive/properties.xml new file mode 100644 index 0000000000..a9b42b96e7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFive/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096853129009 + -5195695182525525731 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFour/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFour/content.txt new file mode 100644 index 0000000000..190e5e95ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFour/content.txt @@ -0,0 +1,6 @@ +|calculate late extra| +|''hours late''|''extra time()''| +|0|0| +|0.9|0| +|1|1| +|9|9| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFour/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFour/properties.xml new file mode 100644 index 0000000000..a7aa026307 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateFour/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096853098103 + -7155626822349034253 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateOne/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateOne/content.txt new file mode 100644 index 0000000000..7d3ee2a7e1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateOne/content.txt @@ -0,0 +1,2 @@ +|calculate late fee| +|''hire period''|''late''|''hour''|''day''|''week''|''fee()''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateOne/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateOne/properties.xml new file mode 100644 index 0000000000..292a24e985 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateOne/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096852862182 + -2631010543751401421 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSeven/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSeven/content.txt new file mode 100644 index 0000000000..91e1418516 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSeven/content.txt @@ -0,0 +1,8 @@ +|!-rent.CalculateLateHours-!| +|''hours late''|''grace''|''count grace''|''high demand''|''extra hours()''| +|0|1|yes|0|0| +|0.9|1|no|0|0| +|1|1|yes|0|1| +|1|1|no|0|0| +|9|1|yes|0|9| +|19|2|no|0|17| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSeven/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSeven/properties.xml new file mode 100644 index 0000000000..f70839114b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSeven/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1096853339913 + 4614621852788922485 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSix/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSix/content.txt new file mode 100644 index 0000000000..f039dd31db --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSix/content.txt @@ -0,0 +1,9 @@ +|calculate late extra| +|''hours late''|''grace''|''count grace''|''extra time()''| +|0|1|yes|0| +|0.9|1|no|0| +|1|1|yes|1| +|1|1|no|0| +|9|1|yes|9| +|19|2|no|17| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSix/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSix/properties.xml new file mode 100644 index 0000000000..90321b59ac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateSix/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096853142118 + -2691618851139603225 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateThree/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateThree/content.txt new file mode 100644 index 0000000000..353c9814f5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateThree/content.txt @@ -0,0 +1,2 @@ +|calculate late extra| +|''hire period''|''hours late''|''extra time()''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateThree/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateThree/properties.xml new file mode 100644 index 0000000000..9dc7e18876 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateThree/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096853072400 + 8908255723036931588 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateTwo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateTwo/content.txt new file mode 100644 index 0000000000..1159e3c53e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateTwo/content.txt @@ -0,0 +1,2 @@ +|calculate late fee| +|''hire period''|''hours late''|''per hour''|''per day''|''per week''|''late fee()''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateTwo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateTwo/properties.xml new file mode 100644 index 0000000000..eec4c50dc2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/TestLateTwo/properties.xml @@ -0,0 +1,11 @@ + + + + 20050118124833 + + + + + 1106005713250 + 7442530544783113550 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/content.txt new file mode 100644 index 0000000000..bdc37266c0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/content.txt @@ -0,0 +1,8 @@ +^TestLateOne +^TestLateTwo +^TestLateThree +^TestLateFour +^TestLateFive +^TestLateSix +^TestLateSeven +^TestLate diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/properties.xml new file mode 100644 index 0000000000..2cef92d500 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/LateReturns/properties.xml @@ -0,0 +1,12 @@ + + + + 20041219201638 + + + + + + 1103440598178 + -2105419522638437575 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/PageFooter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/PageFooter/content.txt new file mode 100644 index 0000000000..54fd689b34 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/PageFooter/content.txt @@ -0,0 +1 @@ +----[.FrontPage][.FitBook][.BuildBookTables][.ErrorLogs]---- \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/PageFooter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/PageFooter/properties.xml new file mode 100644 index 0000000000..a551432b2a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/PageFooter/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1089858445593 + -700435059811998298 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate/content.txt new file mode 100644 index 0000000000..c6bfa9be2f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate/content.txt @@ -0,0 +1,5 @@ +|''create template''| +|''add item''|coffee dispenser|''with multipler''|0.04| +|''add item''|hot water dispenser|''with multipler''|0.04| +|''add item''|coffee table|''with multipler''|0.02| +|''add item''|cup|''with multiplier''|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate/properties.xml new file mode 100644 index 0000000000..8152b972d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090640763532 + -8998147639246899080 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate2/content.txt new file mode 100644 index 0000000000..214fb3b45b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate2/content.txt @@ -0,0 +1,5 @@ +|''create template''|coffee break| +|''item''|coffee dispenser|''for''|20|''people''| +|''item''|hot water dispenser|''for''|20|''people''| +|''item''|coffee table|''for''|40|''people''| +|''item''|cup|''for''|1|''people''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate2/properties.xml new file mode 100644 index 0000000000..7dc06f62c6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate2/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1091490029499 + 4850754122034951071 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate3/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate3/content.txt new file mode 100644 index 0000000000..1937074205 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate3/content.txt @@ -0,0 +1,5 @@ +|''create template''|coffee breaker| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|0.9|''people''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate3/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate3/properties.xml new file mode 100644 index 0000000000..e253c7e3e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplate3/properties.xml @@ -0,0 +1,11 @@ + + + + 20050118082518 + + + + + 1105989918656 + -359611289546576362 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplateNoPeople/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplateNoPeople/content.txt new file mode 100644 index 0000000000..78421d93fb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplateNoPeople/content.txt @@ -0,0 +1,5 @@ +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|1|''people''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplateNoPeople/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplateNoPeople/properties.xml new file mode 100644 index 0000000000..83914aafb7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/CreateTemplateNoPeople/properties.xml @@ -0,0 +1,11 @@ + + + + 20050118082425 + + + + + 1105989865656 + -3982486372629017851 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/EnterTemplate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/EnterTemplate/content.txt new file mode 100644 index 0000000000..1e18fe416c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/EnterTemplate/content.txt @@ -0,0 +1,5 @@ +|''enter template''|coffee break| +|''rental item''|''proportion''| +|cups|1.1| +|spoons|0.6| +|drinks table|0.05| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/EnterTemplate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/EnterTemplate/properties.xml new file mode 100644 index 0000000000..b857f2c01a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/EnterTemplate/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090639654201 + 2663235919449707260 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate/content.txt new file mode 100644 index 0000000000..4f668cc1f0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate/content.txt @@ -0,0 +1,2 @@ +|''create template''|conference| +|''template''|coffee break|''for''|...| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate/properties.xml new file mode 100644 index 0000000000..91ae87e9c9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1090642977551 + -2879328505939640781 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate2/content.txt new file mode 100644 index 0000000000..0af090cef7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate2/content.txt @@ -0,0 +1,3 @@ +|''create template''|conference| +|''use template''|coffee break| +|''item''|registration desk|''for''|200| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate2/properties.xml new file mode 100644 index 0000000000..7b7326e2bc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/NestTemplate2/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1091329792107 + 5913218499017287801 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularBooking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularBooking/content.txt new file mode 100644 index 0000000000..0d8cb7de6a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularBooking/content.txt @@ -0,0 +1 @@ +|''book''|100||cup|''on''|2004/06/01 18:00|''for''|1 day|''every''|1 week| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularBooking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularBooking/properties.xml new file mode 100644 index 0000000000..dfcc7868f4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularBooking/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096944599470 + 8236221389324984032 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateAccepted/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateAccepted/content.txt new file mode 100644 index 0000000000..fc3613be35 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateAccepted/content.txt @@ -0,0 +1,45 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| + +|''template entry''|coffee break| +|''item''|''for''| +|coffee dispenser|20| +|hot water dispenser|20| +|coffee table|40| +|cup|0.9| + +|''booked template entry''|Joanna| +|''template''|''people''|''from'' |''to'' |''repeat''| +|coffee break|21 |2004/06/01 18:00 |2004/06/02 18:00| 1 week | + +|''time is now''| 2004/06/01 18:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''accept booking''|coffee break|''for''|21|''on''|2004/06/01 18:00|''for''|1 day|''every''|1 week| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|hot water dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|coffee table|1|2004/05/06 09:01|2004/05/07 09:01| +|cup|24|2004/05/06 09:01|2004/05/07 09:01| + +|''booked template list''|Joanna| +|''template''|''people''|''from'' |''to'' |''repeat''| +|coffee break|21 |2004/06/02 18:00 |2004/06/03 18:00| 1 week | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateAccepted/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateAccepted/properties.xml new file mode 100644 index 0000000000..bdf96d5ab3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateAccepted/properties.xml @@ -0,0 +1,11 @@ + + + + 20081124201807 + + + + + 1103514399977 + 3071147612673866662 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBooking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBooking/content.txt new file mode 100644 index 0000000000..3a79c998ac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBooking/content.txt @@ -0,0 +1,7 @@ +|''begin trans...''| Joanna |''staff''| Bill| +|''book''|coffee break|''for''|40|''on''|2004/06/01 18:00|''for''|1 day|''every''|1 week| +|''complete transaction''| + +|''booked template list''|Joanna| +|''template''|''people''|''from'' |''to'' |''repeat''| +|coffee break|40 |2004/06/01 18:00 |2004/06/02 18:00| 1 week | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBooking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBooking/properties.xml new file mode 100644 index 0000000000..1227114b71 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBooking/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096944641861 + 3370080018946564631 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBookingPartial/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBookingPartial/content.txt new file mode 100644 index 0000000000..65e2fc99cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBookingPartial/content.txt @@ -0,0 +1 @@ +|''book''|coffee break|''for''|40|''on''|2004/06/01 18:00|''for''|1 day|''every''|1 week| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBookingPartial/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBookingPartial/properties.xml new file mode 100644 index 0000000000..1e42ffa5f7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/RegularTemplateBookingPartial/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096944520406 + -8589597500978150659 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplate/content.txt new file mode 100644 index 0000000000..74c3b1c9cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplate/content.txt @@ -0,0 +1,12 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''fill template''|coffee break|''for''|40|''people for''|1 day| +|''pay with cash $''|65.40| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|hot water dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|coffee table|1|2004/05/06 09:01|2004/05/07 09:01| +|cup|40|2004/05/06 09:01|2004/05/07 09:01| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplate/properties.xml new file mode 100644 index 0000000000..b340e60280 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplate/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096943453432 + -7773942475598795814 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateRounding/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateRounding/content.txt new file mode 100644 index 0000000000..a73b481f5e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateRounding/content.txt @@ -0,0 +1,12 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''fill template''|coffee breaker|''for''|21|''people for''|1 day| +|''pay with cash $''|65.40| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|hot water dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|coffee table|1|2004/05/06 09:01|2004/05/07 09:01| +|cup|24|2004/05/06 09:01|2004/05/07 09:01| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateRounding/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateRounding/properties.xml new file mode 100644 index 0000000000..412aa71a96 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateRounding/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096943647161 + 9100074747883518813 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateToBook/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateToBook/content.txt new file mode 100644 index 0000000000..c11b684b51 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateToBook/content.txt @@ -0,0 +1,2 @@ +|''transaction''| +|''fill template''|coffee break|''for''|40|''people on''|2004/06/01 18:00|''for''|1 day| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateToBook/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateToBook/properties.xml new file mode 100644 index 0000000000..94a0013725 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/UseTemplateToBook/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096943481963 + 7404037050714082702 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/content.txt new file mode 100644 index 0000000000..2a5ed1f66b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/content.txt @@ -0,0 +1,16 @@ +^CreateTemplate +^CreateTemplate2 +^UseTemplate +^UseTemplateToBook +^EnterTemplate +^NestTemplate +^NestTemplate2 +^CreateTemplateNoPeople +^CreateTemplate3 +^UseTemplateRounding +^RegularBooking +^RegularTemplateBookingPartial +^RegularTemplateBooking +^RegularTemplateAccepted + +!path C:\Documents and Settings\rick\My Documents\work\fitnesse\Examples\PseudoRPS\build diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/properties.xml new file mode 100644 index 0000000000..5c6bc58a6e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RentalTemplate/properties.xml @@ -0,0 +1,11 @@ + + + + 20050103170759 + + + + + 1103514694951 + 312789850304008872 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/CorrectDiscountGroups/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/CorrectDiscountGroups/content.txt new file mode 100644 index 0000000000..302c25e5e7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/CorrectDiscountGroups/content.txt @@ -0,0 +1,7 @@ +|!-DiscountGroupList-!| +|''max owing''|''min purchase''|''future value''|''discount percent''| +|2000.00|2000.00|high|10| +|0.00|500.00|medium|5| +|500.00|600.00|medium|3| +|0.00|0.00|low|0| +|0.00|2000.00|low|3| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/CorrectDiscountGroups/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/CorrectDiscountGroups/properties.xml new file mode 100644 index 0000000000..c487b8007f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/CorrectDiscountGroups/properties.xml @@ -0,0 +1,12 @@ + + + + 20050118095310 + + + + + + 1105995190828 + 4483693013220042532 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyExercise/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyExercise/content.txt new file mode 100644 index 0000000000..131fa3e308 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyExercise/content.txt @@ -0,0 +1,12 @@ +|!-CardHandList-!| +|''suit''|''card''| +|heart|ace| +|heart|queen| +|diamond|king| +|diamond|7| +|club|king| +|club|jack| +|club|10| +|club|9| +|club|4| +|spade|ace| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyExercise/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyExercise/properties.xml new file mode 100644 index 0000000000..b0b198cd69 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyExercise/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1092006917466 + 6718807127937712093 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyTwoExercise/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyTwoExercise/content.txt new file mode 100644 index 0000000000..368ed8aa9b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyTwoExercise/content.txt @@ -0,0 +1,6 @@ +|!-CalculateMoney-!| +|''money''|''multiplier''|''result()''| +|0.00|5|0.00| +|12.00|5|60.00| +|24.00|1|24.00| +|100|15|1500.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyTwoExercise/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyTwoExercise/properties.xml new file mode 100644 index 0000000000..39c2b58ba2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/IdentifyTwoExercise/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1092006930887 + -2823014788647887087 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestArrayWrong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestArrayWrong/content.txt new file mode 100644 index 0000000000..0167e2b000 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestArrayWrong/content.txt @@ -0,0 +1,7 @@ +|!-DiscountGroupArrayList-!| +|''futureValue''|''maxOwing''|''minPurchase''|''discountPercent''| +|low|0.00|0.00|0| +|low|0.00|2000.00|3| +|medium|500.00|600.00|3| +|high|2000.00|2000.00|10| +|medium|0.00|500.00|5| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestArrayWrong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestArrayWrong/properties.xml new file mode 100644 index 0000000000..423d77f61c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestArrayWrong/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1084136647392 + 5226992773254598637 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupOrderedSet/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupOrderedSet/content.txt new file mode 100644 index 0000000000..67be8090c9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupOrderedSet/content.txt @@ -0,0 +1,8 @@ +|!-DiscountGroupOrderedList-!| +|''order''|''future value''|''max owing''|''min purchase''|''discount percent''| +|1|low|0.00|0.00|0| +|2|low|0.00|2000.00|3| +|3|medium|500.00|600.00|3| +|4|medium|0.00|500.00|5| +|5|high|2000.00|2000.00|10| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupOrderedSet/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupOrderedSet/properties.xml new file mode 100644 index 0000000000..431f2634e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupOrderedSet/properties.xml @@ -0,0 +1,12 @@ + + + + 20050118095340 + + + + + + 1105995220718 + 3789582036433309737 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroups/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroups/content.txt new file mode 100644 index 0000000000..34e9ff9380 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroups/content.txt @@ -0,0 +1,7 @@ +|!-DiscountGroupList-!| +|''future value''|''max owing''|''min purchase''|''discount percent''| +|low|0.00|0.00|0| +|medium|500.00|500.00|3| +|medium|0.00|500.00|5| +|high|1000.00|500.00|5| +|high|2000.00|2000.00|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroups/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroups/properties.xml new file mode 100644 index 0000000000..7953de1d29 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroups/properties.xml @@ -0,0 +1,12 @@ + + + + 20050118095351 + + + + + + 1105995231578 + -7739721236872960887 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsBrief/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsBrief/content.txt new file mode 100644 index 0000000000..db8a949c44 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsBrief/content.txt @@ -0,0 +1,7 @@ +|!-DiscountGroupArrayList-!| +|''discount percent''|''future value''| +|0|low| +|3|low| +|3|medium| +|5|medium| +|10|high| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsBrief/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsBrief/properties.xml new file mode 100644 index 0000000000..0e5df5c466 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsBrief/properties.xml @@ -0,0 +1,12 @@ + + + + 20050118095401 + + + + + + 1105995241921 + -1971807271429235840 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsExercise/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsExercise/content.txt new file mode 100644 index 0000000000..61cfd3333b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsExercise/content.txt @@ -0,0 +1,6 @@ +|!-DiscountGroupList-!| +|''future value''|''max owing''|''min purchase''|''discount percent''| +|low|0.00|0.00|0| +|medium|500.00|600.00|3| +|medium|0.00|500.00|5| +|low|0.00|500.00|5| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsExercise/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsExercise/properties.xml new file mode 100644 index 0000000000..6908235af6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestDiscountGroupsExercise/properties.xml @@ -0,0 +1,12 @@ + + + + 20050118095411 + + + + + + 1105995251250 + -4948750630152779546 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestNoOccupants/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestNoOccupants/content.txt new file mode 100644 index 0000000000..60b5242900 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestNoOccupants/content.txt @@ -0,0 +1,2 @@ +|!-OccupantList-!| +|''user''|''room''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestNoOccupants/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestNoOccupants/properties.xml new file mode 100644 index 0000000000..3be8f50665 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestNoOccupants/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1092006842593 + 3449744166187342610 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupants/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupants/content.txt new file mode 100644 index 0000000000..6561712758 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupants/content.txt @@ -0,0 +1,4 @@ +|!-OccupantList-!| +|''user''|''room''| +|anna|lotr| +|luke|lotr| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupants/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupants/properties.xml new file mode 100644 index 0000000000..4f5f966af3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupants/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1092006828296 + 2296662917701875011 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsExercise/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsExercise/content.txt new file mode 100644 index 0000000000..fb9d46cc01 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsExercise/content.txt @@ -0,0 +1,5 @@ +|!-OccupantList-!| +|''user''|''room''| +|anna|lotr| +|luke|Lotr| +|warren|shrek| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsExercise/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsExercise/properties.xml new file mode 100644 index 0000000000..88c5496621 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsExercise/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1092006853952 + -8982059963632729202 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsInRoom/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsInRoom/content.txt new file mode 100644 index 0000000000..6816fec16f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsInRoom/content.txt @@ -0,0 +1,4 @@ +|!-OccupantListInRoom-!|lotr| +|''user''| +|anna| +|luke| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsInRoom/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsInRoom/properties.xml new file mode 100644 index 0000000000..6b7125dfaa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsInRoom/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1089674305531 + 5238529625110304602 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsWrong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsWrong/content.txt new file mode 100644 index 0000000000..ac9de70d0f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsWrong/content.txt @@ -0,0 +1,4 @@ +|!-OccupantList-!| +|''user''|''room''| +|anna|shrek| +|luke|lotr| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsWrong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsWrong/properties.xml new file mode 100644 index 0000000000..9abf250bbb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestOccupantsWrong/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1092006868249 + -4837595703700463015 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestSomeElements/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestSomeElements/content.txt new file mode 100644 index 0000000000..0a14dc1ebc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestSomeElements/content.txt @@ -0,0 +1,4 @@ +|!-DiscountGroupOrderedSubsetList-!| +|''order''|''futureValue''|''maxOwing''|''minPurchase''|''discountPercent''| +|1|low|0.00|0.00|0| +|5|high|2000.00|2000.00|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestSomeElements/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestSomeElements/properties.xml new file mode 100644 index 0000000000..c577d2baa5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/TestSomeElements/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1084136669798 + 6013834181592718870 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/content.txt new file mode 100644 index 0000000000..04a927dc77 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/content.txt @@ -0,0 +1,2 @@ +|!contents| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/properties.xml new file mode 100644 index 0000000000..4f7c9140a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/RowFixtureTables/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1095043689386 + -4187137926954459676 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/StrictCopyRight/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/StrictCopyRight/content.txt new file mode 100644 index 0000000000..9de4d1fce5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/StrictCopyRight/content.txt @@ -0,0 +1 @@ +Copyright (c) 2003 Rick Mugridge (rimu), University of Auckland, NZ diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/StrictCopyRight/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/StrictCopyRight/properties.xml new file mode 100644 index 0000000000..7db0714d5a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/StrictCopyRight/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1071035997796 + 7053425932806603729 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainTwisters/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainTwisters/content.txt new file mode 100644 index 0000000000..cc391cbb53 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainTwisters/content.txt @@ -0,0 +1 @@ +|''book''| 5 || coffee pot |''from''| 2004/05/13 11:01 |''to''| 2004/05/14 09:01 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainTwisters/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainTwisters/properties.xml new file mode 100644 index 0000000000..7846491dd3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainTwisters/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1097786786059 + 4587262957003770652 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainUntwisted/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainUntwisted/content.txt new file mode 100644 index 0000000000..5db1fed83f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainUntwisted/content.txt @@ -0,0 +1 @@ +|''book''| 5 || coffee pot |''on''| 2004/05/13 11:01 |''for''| 22 hours| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainUntwisted/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainUntwisted/properties.xml new file mode 100644 index 0000000000..05262fd991 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/BrainUntwisted/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1097786795653 + -1778561120530567287 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ColumnForAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ColumnForAction/content.txt new file mode 100644 index 0000000000..1606830f9a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ColumnForAction/content.txt @@ -0,0 +1,4 @@ +|!-hire.ChangeRentals-!| +|''rental item''|''count''|''days''|''returns()''|''running total()''| +|coffee urn|5|1|true|-100.00| +|hot water urn|2|1|true|-140.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ColumnForAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ColumnForAction/properties.xml new file mode 100644 index 0000000000..0a77c524e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ColumnForAction/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1097812781288 + 4416288794835496795 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/CombinedTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/CombinedTables/content.txt new file mode 100644 index 0000000000..7681ad88d8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/CombinedTables/content.txt @@ -0,0 +1,6 @@ + * ''Check the booking has been made'' +|''bookings for''|Joanna| +|rental item|count|''start date''|''end date''| +|cup|40|2004/06/01 18:00|2004/06/02 18:00| +|table|5|2004/06/01 18:00|2004/06/02 18:00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/CombinedTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/CombinedTables/properties.xml new file mode 100644 index 0000000000..70608b4b62 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/CombinedTables/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088170203442 + 2248966238844563709 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/content.txt new file mode 100644 index 0000000000..f3efc4d352 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/content.txt @@ -0,0 +1,22 @@ +|''create template''|wedding| +|''add item''|cup|''with multiplier''|1.0| +|''add item''|table|''with multipler''|0.125| + * ''Make a booking off that template:'' +|''begin transaction for client''| Joanna |''staff''| Bob | + +|''transaction''| +|''select template''|wedding|''for''|40|''people on''|2004/06/01 18:00|''for''|0|''weeks''|1|''days''|0|''hours''| + +|''complete transaction''| + * ''Check the booking has been made'' +|''bookings for''|Joanna| +|rental item|count| +|cup|40| +|table|5| + +|''bookings for''|Joanna| +|rental item|''start date''|''end date''| +|cup|2004/06/01 18:00|2004/06/02 18:00| +|table|2004/06/01 18:00|2004/06/02 18:00| + +^CombinedTables diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/properties.xml new file mode 100644 index 0000000000..4967a3592a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/CombineTables/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088170235799 + 6592656478697151393 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsMoreSimilar/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsMoreSimilar/content.txt new file mode 100644 index 0000000000..f619c80f46 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsMoreSimilar/content.txt @@ -0,0 +1,9 @@ +|''chat server''| + +||anna|''connects''| + +||anna|''creates''|lotr|''room''| + +||anna|''enters''|lotr|''room''| + +|reject||anna|''removes''|lotr|''room''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsMoreSimilar/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsMoreSimilar/properties.xml new file mode 100644 index 0000000000..7cb34b6ea9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsMoreSimilar/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096946514874 + 236342259784962566 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/UseBusinessForm/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/UseBusinessForm/content.txt new file mode 100644 index 0000000000..2a2ddb5315 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/UseBusinessForm/content.txt @@ -0,0 +1,7 @@ +|transaction form| +|''Quantity''| ''Rental Item'' |''hours''| ''days''| ''weeks''| ''Cost'' | +| 3 | coffee urn | 0 | 2 | 0 | 222.00 | +| 4 | coffee urn | 0 | 3 | 0 | 344.00 | +| 7 | table | 0 | 3 | 0 | 1568.00 | +|| +|''Total $''|||||2134.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/UseBusinessForm/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/UseBusinessForm/properties.xml new file mode 100644 index 0000000000..d8f02ed59e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/UseBusinessForm/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088199772259 + -8294456270530240483 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/content.txt new file mode 100644 index 0000000000..14748fafe5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/content.txt @@ -0,0 +1,9 @@ +|transaction| +|check|''hire''| 3 || coffee urn |''for''| 0 |''hours''| 2 |''days''| 0 |''weeks''| 222.00 | +|check|''hire''| 4 || coffee urn |''for''| 0 |''hours''| 3 |''days''| 0 |''weeks''| 344.00 | +|check|''hire''| 7 || table |''for''| 0 |''hours''| 3 |''days''| 0 |''weeks''| 1568.00 | + +|transaction| +|''pay with cash $''|2134.00 | + +^UseBusinessForm diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/properties.xml new file mode 100644 index 0000000000..ce46b5bf16 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/UseCustomActions/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088199748135 + 4132413234331162457 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/content.txt new file mode 100644 index 0000000000..4e86aa02ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/content.txt @@ -0,0 +1,28 @@ +|transaction| +|enter|count| 3 | +|enter|rental item| coffee urn | +|enter|hours| 0 | +|enter|days| 2 | +|enter|weeks| 0 | +|press|hire| +|check|total|222.00| + * Don't need to enter hours and weeks again: +|transaction| +|enter|count| 4 | +|enter|rental item| coffee urn | +|enter|days| 3 | +|press|hire| +|check|total|344.00| + +|transaction| +|enter|count| 7 | +|enter|rental item| table | +|enter|days| 3 | +|press|hire| +|check|total|1568.00| + +|transaction| +|enter|cash|3134.00| +|press|pay| + +^UseCustomActions diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/properties.xml new file mode 100644 index 0000000000..8780c99059 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/OrganiseTable/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088171399923 + -6659178628547335395 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/UseDoFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/UseDoFixture/content.txt new file mode 100644 index 0000000000..f6e409e3e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/UseDoFixture/content.txt @@ -0,0 +1,5 @@ +|transaction| +|check|''hire''| 3 || coffee urn |''for''| 0 |''hours''| 2 |''days''| 0 |''weeks''| 222.00 | +|check|''hire''| 4 || coffee urn |''for''| 0 |''hours''| 3 |''days''| 0 |''weeks''| 344.00 | +|check|''hire''| 7 || table |''for''| 0 |''hours''| 3 |''days''| 0 |''weeks''| 1568.00 | +|''pay with cash $''| 2134.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/UseDoFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/UseDoFixture/properties.xml new file mode 100644 index 0000000000..7b34b4c6b0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/UseDoFixture/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088170688600 + -4189441881309092931 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/content.txt new file mode 100644 index 0000000000..b50701004b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/content.txt @@ -0,0 +1,24 @@ +|transaction| +|enter|count| 3 | +|enter|rental item| coffee urn | +|enter|hours| 0 | +|enter|days| 2 | +|enter|weeks| 0 | +|press|hire| +|check|total|222.00| +|enter|count| 4 | +|enter|rental item| coffee urn | +|enter|hours| 0 | +|enter|days| 3 | +|enter|weeks| 0 | +|press|hire| +|check|total|344.00| +|enter|count| 7 | +|enter|rental item| table | +|enter|hours| 0 | +|enter|days| 3 | +|enter|weeks| 0 | +|press|hire| +|check|total|1568.00| +|enter|cash|3134.00| +|press|pay| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/properties.xml new file mode 100644 index 0000000000..5869bf9de7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfActions/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1098053518741 + -8822501206366977095 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarSetUp/content.txt new file mode 100644 index 0000000000..f1afc1e86c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarSetUp/content.txt @@ -0,0 +1,10 @@ +|''chat server''| + +||anna|''connects''| + +||anna|''creates''|lotr|''room''| + +||anna|''removes''|lotr|''room''| + +|''rooms list''| +|''name''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarSetUp/properties.xml new file mode 100644 index 0000000000..ee3858373e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarSetUp/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1097443756270 + 9201711475021031355 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/BusinessRule/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/BusinessRule/content.txt new file mode 100644 index 0000000000..a23a451731 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/BusinessRule/content.txt @@ -0,0 +1,32 @@ +!3 Charge for a larger time period if it's better for the customer +''Eg, Charge for one week instead of 6 days if it's less. We assume a single item rented here:'' + +|!-hire.CalculateChargeFairly-!| +|''$/hour''|''$/day''|''hours''|''days''||''cost in $''| +| 1.00 | 5.00 | 3 | 0 || 3.00 | +| | | 4 | || 4.00 | +| | | 5 | || 5.00 | +| | | 6 | || 5.00 | +| | | 11 | || 5.00 | +| 1.00 | 5.00 | 3 | 1 || 8.00 | +| | | 4 | || 9.00 | +| | | 5 | ||10.00 | +| | | 6 | ||10.00 | +| | | 11 | ||10.00 | + +|!-hire.CalculateChargeFairly-!| +|''$/hour'' |''$/day'' |''hours''|''days''||''cost in $''| +| 1.00 | 2.00 | 1 | 0 || 1.00 | +| | | 3 | || 2.00 | + +|!-hire.CalculateChargeFairly-!| +|''$/day'' |''$/week'' |''days''|''weeks''||''cost in $''| +| 1.00 | 5.00 | 3 | 0 || 3.00 | +| | | 4 | || 4.00 | +| | | 5 | || 5.00 | +| | | 6 | || 5.00 | +| 1.00 | 5.00 | 3 | 1 || 8.00 | +| | | 4 | || 9.00 | +| | | 5 | ||10.00 | +| | | 6 | ||10.00 | +''Also need to use this fair charging approach when calculating how much extra to charge or what to refund, so both parties are treated fairly.'' diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/BusinessRule/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/BusinessRule/properties.xml new file mode 100644 index 0000000000..dcccc3ec34 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/BusinessRule/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088206264264 + -3222695890386764957 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/content.txt new file mode 100644 index 0000000000..a8ad84ff98 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/content.txt @@ -0,0 +1,5 @@ +.FitBook.XpProjectInFlow.XpProjectOne.EarlyReturn + * Collapse lots of workflow into one or two, with business rules extracted: +^BusinessRule + * This makes it easier to see that the various cases are covered. + * And it's easier to understand what the business rule is about. diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/properties.xml new file mode 100644 index 0000000000..0395e8d9ae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/LotsOfSimilarTests/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088207165090 + -2682317273262542939 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbers/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbers/content.txt new file mode 100644 index 0000000000..e5a7a74d1a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbers/content.txt @@ -0,0 +1,7 @@ +|!-DiscountGroupList-!| +|''value''|''max''|''min''|''%''| +|1|0.00|0.00|0| +|2|500.00|500.00|3| +|2|0.00|500.00|5| +|3|1000.00|500.00|5| +|3|2000.00|2000.00|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbers/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbers/properties.xml new file mode 100644 index 0000000000..77c62b6af0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbers/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1097732525363 + 4214042932154313748 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbersFixed/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbersFixed/content.txt new file mode 100644 index 0000000000..6bee53afa9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbersFixed/content.txt @@ -0,0 +1,7 @@ +|!-DiscountGroupList-!| +|''future value''|''max owing''|''min purchase''|''discount %''| +|low|0.00|0.00|0| +|medium|500.00|500.00|3| +|medium|0.00|500.00|5| +|high|1000.00|500.00|5| +|high|2000.00|2000.00|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbersFixed/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbersFixed/properties.xml new file mode 100644 index 0000000000..1a1e47f167 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/MagicNumbersFixed/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096759020080 + 6432118652105132236 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ManyListRows/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ManyListRows/content.txt new file mode 100644 index 0000000000..5c4c23cc7c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ManyListRows/content.txt @@ -0,0 +1,6 @@ +|''rental items list''| +| ''name'' | ''count'' |''hourly rate''|''daily rate''|''weekly rate''|''deposit'' | +| coffee urn | 10 | 1.50 | 12.00 | 60.00 | 50.00 | +| table | 20 | 6.00 | 48.00 | 200.00 | 80.00 | +| coffee pot | 20 | 1.50 | 12.00 | 60.00 | 0.00 | +| chair | 20 | 6.00 | 48.00 | 200.00 | 0.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ManyListRows/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ManyListRows/properties.xml new file mode 100644 index 0000000000..bb7d77e7ea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ManyListRows/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1098060793216 + -5828034269989440716 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OneOrZeroElements/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OneOrZeroElements/content.txt new file mode 100644 index 0000000000..213b6016ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OneOrZeroElements/content.txt @@ -0,0 +1,3 @@ +|''booked template entry''|Joanna| +|''template''|''people''|''from'' |''to'' |''repeat''| +|coffee break|21 |2004/06/01 18:00 |2004/06/02 18:00| 1 week | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OneOrZeroElements/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OneOrZeroElements/properties.xml new file mode 100644 index 0000000000..a557b995d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OneOrZeroElements/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1098056689562 + 3571750252754174938 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OrganiseTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OrganiseTable/content.txt new file mode 100644 index 0000000000..4059a8c5ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OrganiseTable/content.txt @@ -0,0 +1,24 @@ +|!-hire.CalculateChargeFairly-!| +|''$/hour''|''$/day''|''hours''|''days''||''cost in $''| +| 1.00 | 5.00 | 3 | 0 || 3.00 | +| 1.00 | 5.00 | 4 | || 4.00 | +| 1.00 | 5.00 | 5 | || 5.00 | +| 1.00 | 5.00 | 6 | || 5.00 | +| 1.00 | 5.00 | 11 | || 5.00 | +| 1.00 | 5.00 | 3 | 1 || 8.00 | +| 1.00 | 5.00 | 4 | || 9.00 | +| 1.00 | 5.00 | 5 | ||10.00 | +| 1.00 | 5.00 | 6 | ||10.00 | +| 1.00 | 5.00 | 11 | ||10.00 | +| 1.00 | 2.00 | 1 | 0 || 1.00 | +| 1.00 | 5.00 | 3 | || 2.00 | +| 1.00 | 5.00 | 3 | 0 || 3.00 | +| 1.00 | 5.00 | 4 | || 4.00 | +| 1.00 | 5.00 | 5 | || 5.00 | +| 1.00 | 5.00 | 6 | || 5.00 | +| 1.00 | 5.00 | 3 | 1 || 8.00 | +| 1.00 | 5.00 | 4 | || 9.00 | +| 1.00 | 5.00 | 5 | ||10.00 | +| 1.00 | 5.00 | 6 | ||10.00 | + +.FitBook.TableDesign.LotsOfSimilarTests.BusinessRule \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OrganiseTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OrganiseTable/properties.xml new file mode 100644 index 0000000000..4744ea24f9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/OrganiseTable/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088208502022 + 5452223975545388818 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceColumns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceColumns/content.txt new file mode 100644 index 0000000000..d70ea29b75 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceColumns/content.txt @@ -0,0 +1,6 @@ +|''rental items list''| +| ''name'' | ''count'' | +| coffee urn | 10 | +| table | 20 | +| coffee pot | 20 | +| chair | 20 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceColumns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceColumns/properties.xml new file mode 100644 index 0000000000..7c8ae054fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceColumns/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1098060780607 + 8190134937850610221 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithArgs/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithArgs/content.txt new file mode 100644 index 0000000000..f9c2e7f53e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithArgs/content.txt @@ -0,0 +1,3 @@ +|''rentals for client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/06 09:01|2004/05/20 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithArgs/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithArgs/properties.xml new file mode 100644 index 0000000000..afd0845fab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithArgs/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1098060486772 + -6385993260863075548 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithSubset/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithSubset/content.txt new file mode 100644 index 0000000000..55e92c0371 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithSubset/content.txt @@ -0,0 +1,3 @@ +|''rental item subset''| +|''name''|''count''| +|coffee urn|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithSubset/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithSubset/properties.xml new file mode 100644 index 0000000000..ced37ae82e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ReduceListWithSubset/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1098060650570 + 3751353762152882039 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/UseEntryFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/UseEntryFixture/content.txt new file mode 100644 index 0000000000..edb94f2f5d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/UseEntryFixture/content.txt @@ -0,0 +1,5 @@ + * ''Special setup of staff members:'' +|''enter staff''| +|''name'' |''phone'' | +| Bob | (09) 555 9876 | +| Bill | (09) 555 1234 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/UseEntryFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/UseEntryFixture/properties.xml new file mode 100644 index 0000000000..ab4c60ca21 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/UseEntryFixture/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088170552124 + 2076828339516810899 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/content.txt new file mode 100644 index 0000000000..49b3e89ddd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/content.txt @@ -0,0 +1,7 @@ + * ''Special setup of staff members:'' +|''enter staff''| +|''name'' |''phone'' | add() | +| Bob | (09) 555 9876 | true | +| Bill | (09) 555 1234 | true | + +^UseEntryFixture diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/properties.xml new file mode 100644 index 0000000000..91d38fcf4d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantAdd/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088170536101 + -4328806221520931280 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValues/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValues/content.txt new file mode 100644 index 0000000000..fda7958ca1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValues/content.txt @@ -0,0 +1,5 @@ +|!-CalculateDiscounts-!| +|''future value''|''owing''|''purchase''|''discount()''| +|low|0.00|0.00|0.00| +|low|0.00|1000.00|0.00| +|low|1000.00|5000.00|0.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValues/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValues/properties.xml new file mode 100644 index 0000000000..6cac308d62 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValues/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1096764190875 + 5890831222778325383 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed1/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed1/content.txt new file mode 100644 index 0000000000..939ba933d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed1/content.txt @@ -0,0 +1,5 @@ +|!-CalculateDiscounts-!| +|''future value''|''owing''|''purchase''|''discount()''| +|low|0.00|0.00|0.00| +||0.00|1000.00|0.00| +||1000.00|5000.00|0.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed1/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed1/properties.xml new file mode 100644 index 0000000000..53b3924fba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed1/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1096764215451 + 7255469559886778887 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed2/content.txt new file mode 100644 index 0000000000..bc73eacfb9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed2/content.txt @@ -0,0 +1,5 @@ +|''calculate discounts with''|low|''future value''| +|''owing''|''purchase''|''discount()''| +|0.00|0.00|0.00| +|0.00|1000.00|0.00| +|1000.00|5000.00|0.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed2/properties.xml new file mode 100644 index 0000000000..6347d6118e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantColumnValuesFixed2/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096764286242 + 8282976329781628774 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumn/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumn/content.txt new file mode 100644 index 0000000000..ec7699b352 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumn/content.txt @@ -0,0 +1,9 @@ +|!-CalculateCredit-!| +|months|reliable|balance|allowCredit()|creditLimit()| +|14|true|5000.00|true|1000.00| +|''0''|true|0.00|false|0.00| +|24|''false''|0.00|false|0.00| +|18|true|''6000.00''|false|0.00| +|''12''|true|5500.00|true|1000.00| + +^RedundantResultColumnRemoved diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumn/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumn/properties.xml new file mode 100644 index 0000000000..f777643503 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumn/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088170305849 + 2429246128481567327 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumnRemoved/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumnRemoved/content.txt new file mode 100644 index 0000000000..acb919eb35 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumnRemoved/content.txt @@ -0,0 +1,8 @@ +|!-CalculateCredit-!| +|months|reliable|balance|creditLimit()| +|14|true|5000.00|1000.00| +|''0''|true|0.00|0.00| +|24|''false''|0.00|0.00| +|18|true|''6000.00''|0.00| +|''12''|true|5500.00|1000.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumnRemoved/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumnRemoved/properties.xml new file mode 100644 index 0000000000..dc25db85bf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/RedundantResultColumnRemoved/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088170328702 + 8334753848531787725 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SettingUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SettingUp/content.txt new file mode 100644 index 0000000000..40d86f2ec0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SettingUp/content.txt @@ -0,0 +1,4 @@ +|''set up booked list''|Joanna| +|''rental item'' |''count'' |''from'' |''to'' | +|coffee dispenser|2 |2004/06/01 18:00 |2004/06/02 18:00| +|cup|40 |2004/06/01 18:00 |2004/06/02 18:00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SettingUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SettingUp/properties.xml new file mode 100644 index 0000000000..402850f63b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SettingUp/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1097810372545 + -4482922039493940204 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ShareIt/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ShareIt/content.txt new file mode 100644 index 0000000000..d126bea230 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ShareIt/content.txt @@ -0,0 +1,5 @@ +|''chat server''| + +||anna|''connects''| + +||anna|''creates''|lotr|''room''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ShareIt/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ShareIt/properties.xml new file mode 100644 index 0000000000..708d41e1df --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/ShareIt/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1096946467446 + -7887221540002176089 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SplitValues/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SplitValues/content.txt new file mode 100644 index 0000000000..de6977f0e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SplitValues/content.txt @@ -0,0 +1,5 @@ +|''$''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''hours''|''days''|''weeks''|''days()''|''weeks()''| +|0|4|0|4|0| +|0|5|0|0|1| +|5|6|0|0|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SplitValues/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SplitValues/properties.xml new file mode 100644 index 0000000000..3534b9a916 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/SplitValues/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1098052915542 + -4498989825110711422 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/SubsetRowsToo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/SubsetRowsToo/content.txt new file mode 100644 index 0000000000..84cbc6cc77 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/SubsetRowsToo/content.txt @@ -0,0 +1,11 @@ +|''enter hire item types''| +| ''name'' | ''initial #'' |''hourly rate''|''daily rate''|''weekly rate''|''deposit'' | +| coffee urn | 20 | 1.50 | 12.00 | 60.00 | 50.00 | +| table | 20 | 6.00 | 48.00 | 200.00 | 80.00 | +| coffee pot | 20 | 1.50 | 12.00 | 60.00 | 0.00 | +| chair | 20 | 6.00 | 48.00 | 200.00 | 0.00 | + * Hire 10 coffee pots + * .... +|''rental items subset''| +| ''name'' | ''current #'' | +| coffee urn | 10 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/SubsetRowsToo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/SubsetRowsToo/properties.xml new file mode 100644 index 0000000000..da246373b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/SubsetRowsToo/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088171985495 + -1374607799045556969 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/content.txt new file mode 100644 index 0000000000..52aa2e00a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/content.txt @@ -0,0 +1,16 @@ +|''enter hire item types''| +| ''name'' | ''initial #'' |''hourly rate''|''daily rate''|''weekly rate''|''deposit'' | +| coffee urn | 20 | 1.50 | 12.00 | 60.00 | 50.00 | +| table | 20 | 6.00 | 48.00 | 200.00 | 80.00 | +| coffee pot | 20 | 1.50 | 12.00 | 60.00 | 0.00 | +| chair | 20 | 6.00 | 48.00 | 200.00 | 0.00 | + * Hire 10 coffee pots + * .... +|''rental items list''| +| ''name'' | ''current #'' | +| coffee urn | 10 | +| table | 20 | +| coffee pot | 20 | +| chair | 20 | + +^SubsetRowsToo diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/properties.xml new file mode 100644 index 0000000000..fc5d4679a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/SubsetColumns/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1088171973417 + 7504078644116839988 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/content.txt new file mode 100644 index 0000000000..8162dba31f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/content.txt @@ -0,0 +1,18 @@ +!2 Test essentials, to focus and reduce dependencies and thus maintenance cost + +|''enter hire item types''| +| ''name'' | ''initial #'' |''hourly rate''|''daily rate''|''weekly rate''|''deposit'' | +| coffee urn | 20 | 1.50 | 12.00 | 60.00 | 50.00 | +| table | 20 | 6.00 | 48.00 | 200.00 | 80.00 | +| coffee pot | 20 | 1.50 | 12.00 | 60.00 | 0.00 | +| chair | 20 | 6.00 | 48.00 | 200.00 | 0.00 | + * Hire 10 coffee pots + * .... +|''rental items list''| +| ''name'' | ''current #'' |''hourly rate''|''daily rate''|''weekly rate''|''deposit'' | +| coffee urn | 10 | 1.50 | 12.00 | 60.00 | 50.00 | +| table | 20 | 6.00 | 48.00 | 200.00 | 80.00 | +| coffee pot | 20 | 1.50 | 12.00 | 60.00 | 0.00 | +| chair | 20 | 6.00 | 48.00 | 200.00 | 0.00 | + +^SubsetColumns diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/properties.xml new file mode 100644 index 0000000000..7059a39a82 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/TestSubset/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1088171925569 + 4905918998413844716 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/UnsplitValues/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/UnsplitValues/content.txt new file mode 100644 index 0000000000..e74a803f09 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/UnsplitValues/content.txt @@ -0,0 +1,5 @@ +|''$''|5.00|''per hour''|45.00|''per day''|200.00|''per week''| +|''duration''||''fair''| +|4 days||4 days| +|5 days||1 week| +|6 days 5 hours||1 week| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/UnsplitValues/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/UnsplitValues/properties.xml new file mode 100644 index 0000000000..48591f6d1d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/UnsplitValues/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1098052571825 + -2131518712761014227 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/content.txt new file mode 100644 index 0000000000..9efb1c4ba5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/content.txt @@ -0,0 +1,36 @@ +!2 Table Smells +^MagicNumbers ... have the fixture map ^MagicNumbersFixed +^BrainTwisters .. ^BrainUntwisted +^SettingUp +^ColumnForAction +^SplitValues ... ^UnsplitValues +^OneOrZeroElements +^ManyListRows ... ^ReduceColumns ... ^ReduceListWithArgs .. ^ReduceListWithSubset + +!2 Still to organise + * Redundancy adds noise and slows evolution + * Clear intent enables communication + * Organisation enables communication + * Mixed messages are missed: say one thing clearly + * Premature or unnecessary commitment (tests carry into new technology) +^CombineTables ... two tables better as one +^RedundantResultColumn ... don't say it twice ^RedundantResultColumnRemoved +^RedundantColumnValues ... all the same values in a given column ^RedundantColumnValuesFixed1 and ^RedundantColumnValuesFixed2 +^RedundantAdd ... repeated value shows +^LotsOfActions ... can be expressed more succinctly +^IntentUnclear ... so comments and clear examples are needed +^TestSubset ... to focus on essentials and reduce dependencies +^TestSelectedSubset ... select with arguments to focus +^OrganiseTable ... so it's easier to see what the main cases are, and which are missing +^SplitTableThatMixesTests ... for orthogonal concerns +^SplitBusinessRulesAndValidation ... a specific orthogonality issue +^LotsOfSimilarTests ... show that a more abstract business rule needs to emerge +^LongSetUp ... so compact it with ''!-EntryFixture-!'' +^LotsOfSimilarSetUp and ^LotsMoreSimilar ... so share it ^ShareIt +^SetUpThroughActions ... better to turn it into entry setup +^TestThroughUi ... so back off and test UI separately +^TestUi ... again, avoid unnecessary commitment to particular technology +^UnclearWorkFlowPhases ... clearly separate setup, change state, and check +^HardToFollowChanges ... show screen dump, HTML when things go wrong +^TextIsAwkward ... use graphics +^MediateChangeWithFixture ... so many application changes don't break the tests diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/properties.xml new file mode 100644 index 0000000000..0f0be33ce4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableDesign/properties.xml @@ -0,0 +1,11 @@ + + + + 20081124201807 + + + + + 1098060697238 + 6580146710060722781 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/FitSummary/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/FitSummary/content.txt new file mode 100644 index 0000000000..e7a7e0ce64 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/FitSummary/content.txt @@ -0,0 +1 @@ +|fit.Summary| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/FitSummary/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/FitSummary/properties.xml new file mode 100644 index 0000000000..09b14029e0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/FitSummary/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1082594909968 + 2799429901783787821 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestConnectAndDisconnect/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestConnectAndDisconnect/content.txt new file mode 100644 index 0000000000..bdfb4566be --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestConnectAndDisconnect/content.txt @@ -0,0 +1,23 @@ + * Start the chat server: +|!-fit.ActionFixture-!| +|start|!-ChatServer2-!| + * Anna connects, creates a new room and enters it: +|!-fit.ActionFixture-!| +|enter|user|anna| +|press|connect| +|enter|room|lotr| +|press|new room| +|press|enter room| + * Anna is the only occupant of lotr: +|!-OccupantList2-!| +|room|user| +|lotr|anna| + * Anna disconnects: +|!-fit.ActionFixture-!| +|press|disconnect| + * So there are now no occupants: +|!-OccupantList2-!| +|room|user| + +|fit.Summary| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestConnectAndDisconnect/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestConnectAndDisconnect/properties.xml new file mode 100644 index 0000000000..da37fc53fa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestConnectAndDisconnect/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1092021651287 + 6989787080696496135 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestDiscountGroup/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestDiscountGroup/content.txt new file mode 100644 index 0000000000..6baf04ace3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestDiscountGroup/content.txt @@ -0,0 +1,28 @@ +!3 Test discounts against configured Discount Groups: +|!-DiscountGroupsEntry-!| +|future value|max balance|min purchase|discount percent|add()| +|low|0.00|0.00|0|true| +|medium|0.00|500.00|5|true| +|medium|500.00|500.00|3|true| +|high|500.00|2000.00|10|true| +|high|1000.00|500.00|5|true| + * Low Future Value: +|!-CalculateDiscounts-!| +|future value|owing|purchase|discount()| +|low|0.00|1000.00|0.00| +||1000.00|5000.00|0.00| + * Medium Future Value: +|!-CalculateDiscounts-!| +|future value|owing|purchase|discount()| +|medium|0.00|400.00|0.00| +||0.00|600.00|30.00| +||2000.00|1000.00|0.00| + * High Future Value: +|!-CalculateDiscounts-!| +|future value|owing|purchase|discount()| +|high|0.00|400.00|0.00| +||0.00|600.00|30.00| +||1100.00|500.00|0.00| +||1000.00|500.00|25.00| +||2000.00|2000.00|0.00| +||400.00|2000.00|200.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestDiscountGroup/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestDiscountGroup/properties.xml new file mode 100644 index 0000000000..2ba2ab71ce --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestDiscountGroup/properties.xml @@ -0,0 +1,12 @@ + + + + 20050118111328 + + + + + + 1106000008312 + 2909238778514483859 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestInitial/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestInitial/content.txt new file mode 100644 index 0000000000..1cbc58dae1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestInitial/content.txt @@ -0,0 +1,5 @@ +|!-fit.ActionFixture-!| +|start|!-ChatServer2-!| + +|!-OccupantList2-!| +|room|user| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestInitial/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestInitial/properties.xml new file mode 100644 index 0000000000..e83832247a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestInitial/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1092021514731 + -4789601540864922199 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestTwoInLotr/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestTwoInLotr/content.txt new file mode 100644 index 0000000000..f6cf274a93 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestTwoInLotr/content.txt @@ -0,0 +1,27 @@ +|!-fit.ActionFixture-!| +|start|!-ChatServer2-!| + * Anna connects, creates a new room, and enters it. +|!-fit.ActionFixture-!| +|enter|user|anna| +|press|connect| +|enter|room|lotr| +|press|new room| +|press|enter room| + * Luke also enters that room. +|!-fit.ActionFixture-!| +|enter|user|luke| +|press|connect| +|press|enter room| + * Both Anna and Luke are in the room +|!-OccupantList2-!| +|room|user| +|lotr|anna| +|lotr|luke| + * Anna disconnects +|!-fit.ActionFixture-!| +|enter|user|anna| +|press|disconnect| + * So only Luke remains +|!-OccupantList2-!| +|room|user| +|lotr|luke| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestTwoInLotr/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestTwoInLotr/properties.xml new file mode 100644 index 0000000000..6fa7a93078 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/TestTwoInLotr/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1092021768407 + 914693299835553489 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/content.txt new file mode 100644 index 0000000000..9c311772a8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/content.txt @@ -0,0 +1,11 @@ +Chat Room Changes: + +^TestInitial +^TestConnectAndDisconnect +^TestTwoInLotr + +^FitSummary + +Discount Group Changes: + +^TestDiscountGroup diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/properties.xml new file mode 100644 index 0000000000..8253ddfd53 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TableSequences/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1084750755944 + 5294553805878345311 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/TestDiscount/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/TestDiscount/content.txt new file mode 100644 index 0000000000..6e7e5aba6f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/TestDiscount/content.txt @@ -0,0 +1,10 @@ +|!-CalculateDiscountMoney-!| +|amount|discount()| +|$999.99|$0.00| +|$1000.00|$0.00| +|$1000.01|$50.00| +|$1001.33|$50.07| +|$1010.00|$50.50| +|$1100.00|$55.00| +|$1200.00|$60.00| +|$2000.00|$100.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/TestDiscount/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/TestDiscount/properties.xml new file mode 100644 index 0000000000..81b7a8e365 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/TestDiscount/properties.xml @@ -0,0 +1,12 @@ + + + + 20050103174855 + + + + + + 1104727735989 + -3234310978540373285 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/content.txt new file mode 100644 index 0000000000..1ab1105b55 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/content.txt @@ -0,0 +1 @@ +^TestDiscount diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/properties.xml new file mode 100644 index 0000000000..bb35c3e72c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/TypeAdapter/properties.xml @@ -0,0 +1,12 @@ + + + + 20041221175538 + + + + + + 1103604938957 + 8164153076102267340 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitBook/content.txt new file mode 100644 index 0000000000..1278f8cfec --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/content.txt @@ -0,0 +1,30 @@ +Example storytests from the ${fitBook}. + +Some of these fail, giving: + * 39 right, 19 wrong, 2 ignored, and 9 exceptions + +* ^ColumnFixtureTables +* ^ActionFixtureTables +* ^RowFixtureTables +* ^TableSequences +* ^CreatingTables +* ^FlowTables +* ^CustomTables +* ^AdvancedTables + +* ^LateReturns +* ^CashRentals +* ^DateRentals +* ^EarlyReturn +* ^RentalTemplate +* ^TableDesign + +* ^CashRentalFixtures + +* ^ArchiTecture +* ^TypeAdapter + +!path fitlibrary.jar +!path lib/rentEz.jar +!path lib/fitbook.jar +!define TEST_RUNNER {fitlibrary.suite.FitLibraryServer} diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitBook/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitBook/properties.xml new file mode 100644 index 0000000000..4b381b15a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitBook/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1225603828828 + 169218437081194972 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitLibraryRunner/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitLibraryRunner/content.txt new file mode 100644 index 0000000000..94bfbcce06 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitLibraryRunner/content.txt @@ -0,0 +1,20 @@ +FitLibraryRunner is a batch runner for ''!-FitNesse-!'' storytests. + +It's ideal for use in an automated build: + + * It does not need ''!-FitNesse-!'' running to run the storytests, as it accesses the pages directly. + +Run it as follows: +{{{ java -cp fitlibraryRunner.jar fitlibrary.batch.FitLibraryRunner -suiteName suiteName [-fitNesseDiry fitNesseDiry] [-resultsDiry resultsDiry] [-showPasses true] [-port port] [-retries retryCount] +}}} +By default, the arguments are as follows: + +|!3 ''Argument''|!3 ''Default value''|!3 ''Description''| +|''suiteName ''| |''The name of the page at the top of the suite. Eg !-FitLibrary.SpecifiCations-!''| +|''fitNesseDiry''|fitNesseDiry|''The directory/folder where the !-FitNesse-! system is to be found, with !-FitNesseRoot-! within that''| +|''resultsDiry''|runnerResults|''The directory/folder where the html for the results of the bacth run are to be placed''| +|''showPasses''|false|''If true, write reports for all storytests that have been run. If false, only show that ones that have errors.''| +|''port''|80|''The internal port number that is passed to !-FitNesse-!. This is needed if any storytests use the FITNESSE_PORT variable.''| +|''retries''|0|''How many times to retry running a storytest if it fails.''| + +FitLibraryRunner is based on Gojko Adzic's Trinidad, but runs the storytests in parallel with loading them from the file system, so it's quicker. diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitLibraryRunner/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitLibraryRunner/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitLibraryRunner/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitRunnerReleaseReadMe/content.txt b/fitnesse/FitNesseRoot/FitLibrary/FitRunnerReleaseReadMe/content.txt new file mode 100644 index 0000000000..fea089b2fc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitRunnerReleaseReadMe/content.txt @@ -0,0 +1,31 @@ +!1 ''!-FitLibraryForFit-!'' +This contains the latest release of ''!-FitLibrary-!'' with ''!-FolderRunner-!''. +!3 Note + * This ''!-FitLibrary-!'' release contains all the ''Fit'' code, ready built in. + * It does '''not''' work with the ''Fit'' version from http://fit.c2.com +!2 Tests, User Guide, etc +The User Guide, Specifications and Tests for ''!-FitLibrary-!'' are organised in three folders: +!-

(1) tests

-!This contains: + * The !-FitLibrary.UserGuide-!, the user documentation for ''!-FitLibrary-!'' and ''!-FolderRunner-!''. + * The !-FitLibrary.Specifications-!. + * The !-FitLibrary.Glossary-!, which is used in the !-FitLibrary.UserGuide-! and !-FitLibrary.Specifications-!. +You can run ''!-FolderRunner-!'' on all of these to get reports, including the User Guide. Double-click on either: + * ''runTests.bat''. This uses ''Ant'' to run ''!-FitLibrary-!'' on all the test files in the directory ''tests'' and writes the reports into !-reports-!. It provides a simple GUI frontend to show progress. However, if you don't have ''Ant'' installed, double-click on either of the following. + * The ''fitlibraryRunner.jar''. + * The ''fitlibraryRunnerXls.jar''. This is the same as ''fitlibraryRunner.jar'', but includes spreadsheet handling. +Some of the specifications used to assume that ''Dot'' was installed (''Dot'' is available at http://www.graphviz.org). +!-

(2) spreadsheetTests

-! * This contains tests that mix spreadsheet and html files. + * To run them, double-click on ''runSpreadsheet.bat''. This runs ''Ant'' with the ''runSpreadsheet'' target, which produces the reports in ''spreadsheetReports'' +!-

(3) suiteTests

-! * This contains tests that use !-suite fixture-!. + * To run them, double-click on ''runSuite.bat''. This runs ''Ant'' with the ''runSuite'' target, which runs ''!-FolderRunner-!'' twice and produces the reports in ''suiteTests/reports'' and ''suiteTests/otherReports'' +!2 src +The ''src'' directory contains the following: + * ''bookExamplesSrc.zip'', the Fit Book examples + * ''fitFromFitNesseSrc.zip'', the source for Fit from ''!-FitNesse-!'' that used in ''!-FitLibrary-!''. (This version does '''not''' use the Fit version from http://fit.c2.com.) + * ''!-FitLibrarySrc.jar-!'', the source for ''!-FitLibrary-!''. +!2 lib +The ''lib'' directory contains two (possily out-of-date) jar files that may be useful: ''junit.jar'' and ''poi.jar''. The latter supports the reading of Excel spreadsheet files and is used by ''!-FolderRunner-!'' when running storytests that are in spreadsheet files. +!2 Any Suggestions? +Any suggestions for improvements in this release are most welcome. + +Rick Mugridge, http://www.RimuResearch.com. diff --git a/fitnesse/FitNesseRoot/FitLibrary/FitRunnerReleaseReadMe/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/FitRunnerReleaseReadMe/properties.xml new file mode 100644 index 0000000000..df9f4a8ada --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/FitRunnerReleaseReadMe/properties.xml @@ -0,0 +1,14 @@ + + + + + 20070110133614 + + + + + + + 1168389374640 + -6726970342394790459 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionMethod/content.txt new file mode 100644 index 0000000000..8b4e899f99 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionMethod/content.txt @@ -0,0 +1,4 @@ +${programmers} +An ${actionMethod} is a method that's called for a ${action}. + +In Java, the method names is derived from the ${keywords} of the action. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionMethod/properties.xml new file mode 100644 index 0000000000..17a140d055 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118161059 + true + true + true + true + true + true + 1232248259140 + 1911834708828471718 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionsPhase/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionsPhase/content.txt new file mode 100644 index 0000000000..1311df9a78 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionsPhase/content.txt @@ -0,0 +1,3 @@ +The ${actions} of ${workflow} follows from the ${setup}. It consists of one or more ${action}s that (may) impact on the ${sut}. +!3 Examples + * See .FitLibrary.UserGuide.FitLibraryByExample.WorkFlow diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionsPhase/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionsPhase/properties.xml new file mode 100644 index 0000000000..1b7476e399 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ActionsPhase/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164556 + true + true + true + true + true + true + 1232250356468 + 769304805327484974 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AfterPhase/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AfterPhase/content.txt new file mode 100644 index 0000000000..a6ff3d9d99 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AfterPhase/content.txt @@ -0,0 +1,5 @@ +In a ${checks} of a ${workflow} ${storytest}, we specify how the ${sut} should've changed (or not) due to the ${action}s in the ${actions}. + +From a testing perspective, these are the ''checks'' that are carried out. +!3 Examples + * See .FitLibrary.UserGuide.FitLibraryByExample.WorkFlow diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AfterPhase/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AfterPhase/properties.xml new file mode 100644 index 0000000000..58dd10656f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AfterPhase/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164759 + true + true + true + true + true + true + 1232250479578 + -3657882916423146788 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ArrayTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ArrayTraverse/content.txt new file mode 100644 index 0000000000..75c80633d0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ArrayTraverse/content.txt @@ -0,0 +1,5 @@ +${programmers} +This ${traverse} checks a given array against a table. +!3 Examples + * .FitLibrary.UserGuide.FitLibraryByExample.SimpleArray + * .FitLibrary.SpecifiCations.CollectionSpecifications.ArrayTraverse diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ArrayTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ArrayTraverse/properties.xml new file mode 100644 index 0000000000..b26545560d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ArrayTraverse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164313 + true + true + true + true + true + true + 1232250193515 + -3101255992166859353 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AutoWrapping/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AutoWrapping/content.txt new file mode 100644 index 0000000000..a496f66487 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AutoWrapping/content.txt @@ -0,0 +1,11 @@ +${programmers} +# +In many cases, ${fitLibrary} will automatically choose a suitable ${traverse} to interpret a value that's: + + * Returned from a ${actionMethod} for a ${workflow} action + * Returned from a ${ruleMethod} for the ${expected} value of a ${rule} + +However, while an ${entity} will be auto-wrapped, a ${valueObject}, such as a primitive value, will not be. + + * That's because a ${valueObject} resulting from an action may be checked against an ${expected} string value + * So if you want to apply a ${valueObject} to the rest of a ${workflow} table, you need to explicitly wrap it, using a ${selector}. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AutoWrapping/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AutoWrapping/properties.xml new file mode 100644 index 0000000000..8e000f0e33 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/AutoWrapping/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1232250365656 + 8627098111769508079 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BeforePhase/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BeforePhase/content.txt new file mode 100644 index 0000000000..4975592623 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BeforePhase/content.txt @@ -0,0 +1,7 @@ +The ${setup} of a ${workflow} ${storytest} specifies the state or information of the ${sut} prior to any actions being carried. + * This serves to precisely define the context for the ${action}s that follow. + * The ${setup} simply defines the data without validation, rather than carrying out a sequence of actions to cause the ${sut} to be put into the required state. + +From a testing perspective, this is the ''setup'' phase. +!3 Examples + * See .FitLibrary.UserGuide.FitLibraryByExample.WorkFlow diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BeforePhase/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BeforePhase/properties.xml new file mode 100644 index 0000000000..a28555e7ad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BeforePhase/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118161122 + true + true + true + true + true + true + 1232248282968 + 4182628791786825482 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BusinessRule/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BusinessRule/content.txt new file mode 100644 index 0000000000..b10127d009 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BusinessRule/content.txt @@ -0,0 +1,5 @@ +A ${rule} defines for the business domain: + * Calculation rules - examples that show how values are calculated + * Eg, the discount + * Constraint rules - examples that show what's permitted (or not): + * Eg, validation rules for a property, several properties, or on the elements of a collection diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BusinessRule/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BusinessRule/properties.xml new file mode 100644 index 0000000000..bd67dc0d6e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/BusinessRule/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164426 + true + true + true + true + true + true + 1232250266890 + -6091832876986412334 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUp/content.txt new file mode 100644 index 0000000000..9186629ad3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUp/content.txt @@ -0,0 +1 @@ +See .FitLibrary.UserGuide.FitLibraryByExample.SetUpFixture for details. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUp/properties.xml new file mode 100644 index 0000000000..bcdfda0483 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUp/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164405 + true + true + true + true + true + true + 1232250245593 + 9092260421615797204 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUpTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUpTraverse/content.txt new file mode 100644 index 0000000000..89dcd9df94 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUpTraverse/content.txt @@ -0,0 +1,4 @@ +A ${collectionSetUpTraverse} is used to set up (create) a list. +!3 Examples + * See ..FitLibrary.UserGuide.FitLibraryByExample.DoFixture.SetUpFixture + * See .FitLibrary.SpecifiCations.CollectionSpecifications.CollectionSetUpTraverse \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUpTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUpTraverse/properties.xml new file mode 100644 index 0000000000..2971983f80 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/CollectionSetUpTraverse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060914101955 + true + true + true + true + true + true + 1158225595441 + 2368283823385107908 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ColumnLabel/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ColumnLabel/content.txt new file mode 100644 index 0000000000..c2c66606d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ColumnLabel/content.txt @@ -0,0 +1,5 @@ +A table that is used to check or setup a collection of elements has a row that includes ${label}s for each of the columns of the table, with one row for each element of the collection. + +!3 Examples + * .FitLibrary.UserGuide.FitLibraryByExample.OrderedList + * .FitLibrary.UserGuide.FitLibraryByExample.DoFixture.SetUpFixture \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ColumnLabel/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ColumnLabel/properties.xml new file mode 100644 index 0000000000..cd0b1402a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ColumnLabel/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060914102039 + true + true + true + true + true + true + 1158225639284 + 4607581216440801601 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoFixture/content.txt new file mode 100644 index 0000000000..df1a36d269 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoFixture/content.txt @@ -0,0 +1,10 @@ +This interprets tables of ${workflow}. + +Workflow storytests specify the step-by-step processing of a business process, or part of such a process. Such storytests are best expressed in a more abstract form than the actions through a user interface. + +An extended form of ${doFixture} is ${domainFixture}. + +See: + * .FitLibrary.UserGuide.FitLibraryByExample.WorkFlow (where ${doFixture} is used in the middle, actions, phase) +!3 Note +This is supported by ${doTraverse} diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoFixture/properties.xml new file mode 100644 index 0000000000..9ea8326beb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoFixture/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20070216092834 + true + true + true + true + true + true + 1167423295031 + 4156591916647767183 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoTraverse/content.txt new file mode 100644 index 0000000000..c4eed8cc34 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoTraverse/content.txt @@ -0,0 +1,10 @@ +This ${traverse} interprets tables of ${workflow}. + +Workflow storytests specify the step-by-step processing of a business process, or part of such a process. Such storytests are best expressed in a more abstract form than the actions through a user interface. + +An extended form of ${doTraverse} is ${domainTraverse}. + +See: + * .FitLibrary.UserGuide.FitLibraryByExample.WorkFlow +!3 Note +This supports the functionality of ${doFixture} diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoTraverse/properties.xml new file mode 100644 index 0000000000..c0f1248832 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DoTraverse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20070216092834 + true + true + true + true + true + true + 1167423107218 + -8882716639644324519 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainAdapter/content.txt new file mode 100644 index 0000000000..17abf393f1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainAdapter/content.txt @@ -0,0 +1,10 @@ +${programmers} +A DomainAdapter is an object that acts as an adapter between FitLibrary and an application object. + +A DomainAdapter provides a method to access the associated application object (the so-called ObjectUnderTest). When FitLibrary looks for a method in the ObjectUnderTest, it first checks if the method is in the DomainAdapter. If it is, it calls that method. If the method doesn't appear in the DomainObject, then FitLibrary checks for the method in the ObjectUnderTest. + +Using a DomainAdapter means that you don't need to subclass a ${fitLibrary} ${traverse} or ${fixture}. This has the advantage that: + * Your DomainAdapter can be part of your own class hierarchy. + * You are much more independent from the implementation details of ${fitLibrary}. + * You no longer see the internal methods of the ${fixture} in your IDE, as you did when you had to subclass a ${fixture}. +Note that the classes ''Fixture'' and ''Traverse'' are subtypes of ''!-DomainAdapter-!'' diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainAdapter/properties.xml new file mode 100644 index 0000000000..230bbbc744 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainAdapter/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118161112 + true + true + true + true + true + true + 1232248272015 + -5818365799020530723 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainDrivenDesign/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainDrivenDesign/content.txt new file mode 100644 index 0000000000..f8107562ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainDrivenDesign/content.txt @@ -0,0 +1,5 @@ +''Domain-Driven Design, Tackling Complexity in the Heart of Software'', Eric Evans, Addison-Wesley, 2004 + +This discusses all of the following: + * ValueObject + * DomainEntity diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainDrivenDesign/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainDrivenDesign/properties.xml new file mode 100644 index 0000000000..a623f4daf7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainDrivenDesign/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164531 + true + true + true + true + true + true + 1232250331484 + 7139165370809914195 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainEntity/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainEntity/content.txt new file mode 100644 index 0000000000..c6e96abcd6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainEntity/content.txt @@ -0,0 +1,11 @@ +An instance of an ''Entity'' is distinct from all other domain objects, even if the contents of the Entity are exactly the same as another one. Contrast this to a ValueObject. + +In storytests, we want to be able to refer to an existing ''Entity'', as well as to create a new one and to match the contents of an existing one. + +This is awkward if the ''Entity'' class doesn't have a visible key (the actual key may be auto-generated by the database). So in storytests, we make sure that the ''Entities'' we're dealing with do differ in some way so that we can distinguish them. Thus we effectively introduce a temporary key for the purposes of a storytest. Then we are able to refer to an existing ''Entity'' by using a real or temporary key. + +For a good introduction to the notion of ''Entity'', see DomainDrivenDesign. +!3 Programming +An ''Entity'' key is specified with a String. When an ''Entity'' is expected in a table cell and that cell contains a String, ${fitLibrary} treats the String as a key and calls a ${finder} method to lookup the corresponding Entity by the given key. So how do we know whether such a String is a key, rather than a direct representation of the ''Entity'', as is the case with a ValueObject? + +${fitLibrary} follows the convention that an ''Entity'' will '''not''' have a ''public static Object parse(String)'' method (as compared to a ValueObject that often will). This does rule out an ''Entity'' that is a single value that can be represented in a String, unfortunately. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainEntity/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainEntity/properties.xml new file mode 100644 index 0000000000..1820510332 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainEntity/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164507 + true + true + true + true + true + true + 1232250307343 + -6735799736235536989 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainFixture/content.txt new file mode 100644 index 0000000000..64988b2b64 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainFixture/content.txt @@ -0,0 +1,27 @@ +${domainFixture} is an extension of ${doFixture} that more explicitly supports the 3 phases of ${workflow}: + * ${setup}: defines the ''given'' state of the ${sut} before the actions are carried out + * This will usually be brief compared to the sequence of actions that would need to be carried out to bring the ${sut} from its initial state into the required state + * ${actions}: defines the actions that are carried out (by a user or some other system or by a scheduled task) + * One or more of these may also carry out checks: + * Whether the result of an action is as expected + * Whether an action was rejected as invalid, as expected + * ${checks}: defines the ''expected'' state of the ${sut} after the actions have been carried out +A ${domainFixture} ${storytest} is organised into these three phases. + * They are separated with a horizontal line, using +{{{ +
}}} +Alternatively: + * The end of the ${setup} phase and thus the start of the ${actions} phase is signalled with the following table: +|''actions''| + * The end of the ${actions} phase and thus the start of the ${checks} phase is signalled with the following table: +|''checks''| + +If there are no Actions, the ''checks'' table can be used to signal a switch from the setup phase directly into the Checks phase. + +!3 For Programmers +In each of the phases the following apply at run time: + * In the ${setup}, each table defines a property-value pair. A ${setter} method is called with the value. + * In the ${actions}, ${domainFixture} acts the same as ${doFixture} + * In the ${checks}, each table defines a property-value pair. A ${getter} method is called to retrieve the value and that's matched against the expected value. + +DomainTraverse provides the actual implementation. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainFixture/properties.xml new file mode 100644 index 0000000000..b133d66488 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainFixture/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20081124201811 + true + true + true + true + true + true + 1167424069671 + 1038328658899206129 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObject/content.txt new file mode 100644 index 0000000000..9a82ba3a43 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObject/content.txt @@ -0,0 +1,25 @@ +!3 ${domainObject}s +Examples of ''domain objects'': + * Company, User, Account, Project, !-RentalItem-!, Invoice, Container, Vehicle, Ship, Flight + * Payment, !-AlertSignal-!, Agreement, Document, Meter, Instrument, Debt, Tender, Contract + * !-GoldFuture-!, !-PurchaseAgreement-!, !-LegalDefinition-!, !-SecondParty-!, !-PaymentArrangement-! +A ''domain object'' is an object from the application/business/organisation domain. + * A ''domain object'' is relevant to Customers, Business Analysts, Product Managers and others with a business perspective + * A ''domain object'' may be well understood in the business, using a clear term + * A ''domain object'' may be invented during the development of a system, as the need for a new abstraction or conceptualisation arises. This could arise from refactorings carried out by the programmers, after discussions with the business-oriented people on a team + * What counts as a ''domain object'' depends on the particular business perspective + * You can't say whether something is a ''domain object'' without taking account of the context of the application + * For examples, people who do on-site installation may have access to ''domain object'' that the usual users are unaware of +See ${ddd} for some great discussions of the complexity and variability of ''domain objects''. This distinguishes between a ${entity} and a ${valueObject}. +!3 ''domain objects'' and ${storytest}s +Storytests can check and set up domain object values. For examples of checking the properties of ''domain objects'', see the following: + * [[''!-SimpleProperties-!''][.FitLibrary.SpecifiCations.DomainObject.DomainObjectChecking.SimpleProperties]] + * [[''!-ListProperties-!''][.FitLibrary.SpecifiCations.DomainObject.DomainObjectChecking.ListProperties]] + * [[''!-ObjectProperties-!''][.FitLibrary.SpecifiCations.DomainObject.DomainObjectChecking.ObjectProperties]] +For examples of setting up domain objects, see: + * [[''!-DomainObjectSetUp-!''][.FitLibrary.SpecifiCations.DomainObject.DomainObjectInjection.SetUpSucceeds]] +Note: + * The above examples are a part of the specifications (${storytest}s) for ${fitLibrary} itself. + * These ${storytest}s are different from the ones you'll be using + * They show embedded tables for both a ${storytest} and the report that's expected when running that storytest. + * The overall ${storytest} passes if the actual report matches the expected one. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObject/properties.xml new file mode 100644 index 0000000000..e433553dff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObject/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164519 + true + true + true + true + true + true + 1232250319890 + 1316974638578089241 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectCheck/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectCheck/content.txt new file mode 100644 index 0000000000..8131fe9fb0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectCheck/content.txt @@ -0,0 +1,4 @@ +${domainObject}s can be checked with ''!-DomainObjectCheckTraverse-!'' tables. + +For further explanation, examples, and specifications, see: + * ${domainObject} diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectCheck/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectCheck/properties.xml new file mode 100644 index 0000000000..ce8e07848e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectCheck/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060826120901 + true + true + true + true + true + true + 1156550941473 + -4858850729627808612 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectSetUp/content.txt new file mode 100644 index 0000000000..b5f9115898 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectSetUp/content.txt @@ -0,0 +1,4 @@ +${domainObject}s can be set up with ''!-DomainObjectSetUpTraverse-!'' tables. + +For further explanation, examples, and specifications, see: + * ${domainObject} diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectSetUp/properties.xml new file mode 100644 index 0000000000..934869b3ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainObjectSetUp/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060826120847 + true + true + true + true + true + true + 1156550927473 + 2217674745540426788 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainTraverse/content.txt new file mode 100644 index 0000000000..8371f15498 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainTraverse/content.txt @@ -0,0 +1 @@ +${domainTraverse} provides the actual implementation of ${domainFixture}. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainTraverse/properties.xml new file mode 100644 index 0000000000..7cb4074f93 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/DomainTraverse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20061230092717 + true + true + true + true + true + true + 1167424037093 + 4199334393774453329 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/EntityKey/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/EntityKey/content.txt new file mode 100644 index 0000000000..7c7682360f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/EntityKey/content.txt @@ -0,0 +1,15 @@ +An ${entity} will always have a ${key}, that makes it unique from every other ${entity}. There are various potential traps in basing the ${key} on the properties of an ${entity}. So, often, an ''internal'' key is auto-generated by the database. This is often called an ''id''. + +In the following, we consider how to handle an ${entity} that has an internal key. + +An internal key will not normally be visible in a ${storytest}. So how do we refer to a specific ${entity}? Here are two approaches: + * The approach used in the ${fitNesse} version of ${fit} + * The approach used in ${fitLibrary} +!3 ${fitNesse} Approach +In the ${fitNesse}version of ${fit}, there is a special mechanism for holding internal keys in ''variables'' so that they can be referred to later. The labels in the header rows of setup and checking tables have special annotations that introduce and use variable names. + +This works fine where only setup and checking tables are being used. However, if an ${entity} is created and/or referenced in ${workflow}, there is no obvious mechanism. Likewise if an ${entity} reference occurs in a property of an object (or element of a collection) that's handled as a nested table. +!3 ${fitLibrary} approach +In this approach, we assume that the entities in a particular storytest are distinct in some way in one or more of their property values. Then those properties can be used to refer to an ${entity}, as a ''pseudo-''${key}. + * Such a ${key} is handled as a String. + * An associated ${finder} is specified that takes the String and looks up the ${entity} that's been referred to. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/EntityKey/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/EntityKey/properties.xml new file mode 100644 index 0000000000..14579f1c85 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/EntityKey/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118161038 + true + true + true + true + true + true + 1232248238921 + 1257182095619868276 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExpectedValue/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExpectedValue/content.txt new file mode 100644 index 0000000000..710935f323 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExpectedValue/content.txt @@ -0,0 +1,5 @@ +An ${expected} value is a value that's expected as the result of something that happens in the ${sut}: + * The result of an action that's being '''check''ed + * A value to the right of the empty column in a calculation table + * The value of a property of a ${domainObject} that's being checked +Compare this to an ${given}. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExpectedValue/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExpectedValue/properties.xml new file mode 100644 index 0000000000..aecf566393 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExpectedValue/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060820123438 + true + true + true + true + true + true + 1156034078860 + 6567852576256992017 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExtendedCamelCase/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExtendedCamelCase/content.txt new file mode 100644 index 0000000000..fa99a1cf5d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExtendedCamelCase/content.txt @@ -0,0 +1,30 @@ +${programmers} +Camel casing takes a string like "the first one" and converts it into a camel form of identifier, "theFirstOne". + +But this had some problems when non-programmers are creating storytest tables: + * A valid identifier in one language would not be in another + * Certain identifiers can't be used, such as "case", "for", "do", etc in Java. +In addition, unicode can't be used for such names, because in general there is little support for unicode in development tools. + +Extended camel is used with all of ${fitLibrary}, taking camel casing one step further. It converts a name into a valid identifier in the language concerned. For example, in Java the name "% discount" is translated into "percent discount", which is then camel-cased into "percentDiscount". + +This can result in some weird and/or long identifiers. There's no need to work out such identifiers, however, as an unknown identifier is displayed in a error messages in the report of a table. These weird identifiers don't need to "pollute" the application, as they only need to appear in fixturing code (such as a ${domainAdapter}). + +Here's some examples: + +|!-fitlibrary.specify.utility.CamelCase-!| + +|''actions''| + +|''calculate''| +|name || identifier | +|" hi " || quoteHiQuote | +|^`{}~ || caretBackquoteLeftBraceRightBraceTilde | +|two words || twoWords | +|2 words || twoWords | +|cost $ || costDollar | +|!! || bangBang | +|meet @ || meetAt | +|rick@rimuResearch.com || rickAtRimuResearchDotCom | +| || blank | +|case || case_ | diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExtendedCamelCase/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExtendedCamelCase/properties.xml new file mode 100644 index 0000000000..6e34ec5e68 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ExtendedCamelCase/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118164442 + + + + + + + 1232250282312 + -3998377729405039075 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FiT/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FiT/content.txt new file mode 100644 index 0000000000..47e43e0b05 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FiT/content.txt @@ -0,0 +1,3 @@ +${fit} was developed and released as open-source by Ward Cunningham in 2003. + +See http://fit.c2.com diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FiT/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FiT/properties.xml new file mode 100644 index 0000000000..c31d0c6daa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FiT/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164636 + true + true + true + true + true + true + 1232250396734 + -6363211211697545033 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FinderMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FinderMethod/content.txt new file mode 100644 index 0000000000..4962b4153e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FinderMethod/content.txt @@ -0,0 +1,28 @@ +${programmers} +A ${finder} can: + * Look up an existing ${entity} by a String key; or + * Create an object from a String (ie, parse it) +It was originally designed for the first case above, hence the name +!3 Entity Lookup +For example, here's a ${finder} for an ${entity} class ''User'': +----{{{ public User findUser(String s) { + return users.get(s); + } }}}----This assumes that the ''Map'' of ''users'' maps from the name to the corresponding ''User''. + +It can be convenient to have the ${finder} also create the Entity when the String is sufficient to completely descrive the Entity. For example, here's a finder for a ''State'', which simply has a name: +----{{{ public User findUser(String s) { + State state = states.get(s); + if (state == null) { + state = new State(s); + states.put(s,state); + } + return state ; + } }}}----For a full example, see .FitLibrary.SpecifiCations.ParserSpecifications.EntityParser.SimpleExample +!3 Parsing +For example, here's a ${finder} that treats the String "null" as a null value instead of a String: +----{{{ public String findString(String s) { + if (s.equals("null")) + return null; + return s; + } }}}----For a full example, see .FitLibrary.SpecifiCations.ParserSpecifications.EntityParser.FinderAsSpecialisedParser + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FinderMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FinderMethod/properties.xml new file mode 100644 index 0000000000..b8c21699c8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FinderMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164741 + true + true + true + true + true + true + 1232250461000 + 8963622887500433874 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitBook/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitBook/content.txt new file mode 100644 index 0000000000..05f4e53af6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitBook/content.txt @@ -0,0 +1,16 @@ +!3 ''Fit for Developing Software'', Rick Mugridge and Ward Cunningham, Prentice-Hall, 2005. + +!img http://files/images/fitBookCover.jpeg + +!3 Praise for the book: + + * "Rick and Ward continue to amaze me. Testing business rules is a fundamentally hard thing that has confounded many, and yet these two have devised a mechanism that cuts to the essence of the problem. In this work they offer a simple, thorough, approachable, and automatable means of specifying and testing such rules." +'''Grady Booch''', IBM Fellow + + + * "By providing a simple, effective method for creating and automating tabular examples of requirements, Fit has dramatically improved how domain experts, analysts, testers, and programmers collaborate to produce quality software." +'''Joshua Kerievsky''', founder, Industrial Logic, Inc., and author of ''Refactoring to Patterns'' + + + * "Even with the best approaches, there always seemed to be a gap between the software that was written and the software the user wanted. With Fit we can finally close the loop. This is an important piece in the agile development puzzle." +'''Dave Thomas''', coauthor of ''The Pragmatic Programmer'' diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitBook/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitBook/properties.xml new file mode 100644 index 0000000000..329e5f5ee4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitBook/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20081102152358 + true + true + true + true + true + true + 1225592638921 + -7379002848605265755 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrary/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrary/content.txt new file mode 100644 index 0000000000..180fa80479 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrary/content.txt @@ -0,0 +1,7 @@ +FitLibrary in Java was developed by Rick Mugridge, http://www.rimuresearch.com, in 2004. It gained initial attention with ''!-DoFixture-!'', a Fit fixture that expressed workflow storytests in a more compact form than ''!-ActionFixture-!'' one of the three main fixtures of Fit. + +Rick has evolved FitLibrary considerably since 2004. + +It was originally based on Fit. Since August 2006, it can operate independently of Fit, but it still can inter-operate with Fit. + +There are ports (or reimplementations) to other languages for earlier versions of FitLibrary: see OtherLanguages. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrary/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrary/properties.xml new file mode 100644 index 0000000000..9b1f5b2e02 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrary/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118155905 + true + true + true + true + true + true + 1232247545515 + 6587286370373689241 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibraryGeneric/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibraryGeneric/content.txt new file mode 100644 index 0000000000..980b0f5773 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibraryGeneric/content.txt @@ -0,0 +1,5 @@ +${programmers} +${fitLibrary2} is an extension of ${fitLibrary} that provides support for Java generics. + * It eliminates the need for ${objectFactoryMethod}s in most cases + * It is currently complete except for handling application-defined generic classes and methods. This is being added as we speak + * It will only be made available for general release when that's completed. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibraryGeneric/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibraryGeneric/properties.xml new file mode 100644 index 0000000000..542c0fe1dd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibraryGeneric/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20080727205043 + true + true + true + true + true + true + 1161584196368 + -8135270693768540560 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrarySelector/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrarySelector/content.txt new file mode 100644 index 0000000000..e8e7eb7a41 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrarySelector/content.txt @@ -0,0 +1,28 @@ +${programmers} +Most of the time, there's no need to specifically mention the code that will interpret a table: + * If the method for a ${workflow} action returns a List, Set, array, Map, ${entity}, etc, it will be ${autoWrapped} with an appropriate ${traverse} + * If a nested table corresponds to the argument of a method, the appropriate ${traverse} will be used to set up the collection, array, map or object +However, you may want to use a specific ${traverse} in your code. + * For example, you may prefer to have a ''!-SetTraverse-!'' manage a ''Map'' instead of ''!-MapTraverse-!'', the default. + * For example, you may prefer to have a ''!-SetTraverse-!'' manage an array instead of ''!-ArrayTraverse-!'', the default. + * Rather than referring to the specific ${traverse}, call the appropriate factory method in class ''!-FitLibrarySelector-!''. +!3 Factory methods +${workflow}: + * public static Traverse selectWorkflow(Object sut); +Collections: + * public static Traverse selectPrimitiveArray(Object array); + * public static Traverse selectUnorderedList(Object actuals); + * public static !-CollectionTraverse-! selectUnorderedList(); + * public static Traverse selectOrderedList(Object actuals); + * public static !-CollectionTraverse-! selectOrderedList(); + * public static Traverse selectSet(Object actuals); + * public static !-CollectionTraverse-! selectSet(); + * public static Traverse selectSubset(Object actuals); + * public static !-CollectionTraverse-! selectSubset(); + * public static Traverse selectMap(Map result); +Collections Setup: + * public static Traverse selectCollectionSetUp(); + * public static Traverse selectCollectionSetUp(Collection collection); +${domainObject}s: + * public static Traverse selectDomainCheck(Object domainObject); + * public static Traverse selectDomainSetUp(Object domainObject) diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrarySelector/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrarySelector/properties.xml new file mode 100644 index 0000000000..fd0abbbbad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitLibrarySelector/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060827120722 + true + true + true + true + true + true + 1156637242632 + 4574258171295271924 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitNesse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitNesse/content.txt new file mode 100644 index 0000000000..b90be2972d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitNesse/content.txt @@ -0,0 +1,3 @@ +FitNesse is a wiki for editing and running storytests. + +See http://www.fitNesse.org diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitNesse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitNesse/properties.xml new file mode 100644 index 0000000000..141f3daba8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FitNesse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164627 + true + true + true + true + true + true + 1232250387500 + 5859778160440650491 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixTure/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixTure/content.txt new file mode 100644 index 0000000000..3588ab57d0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixTure/content.txt @@ -0,0 +1,5 @@ +A ${fixture} is a class in ${fit} that is responsible for interpreting a table. For example, a ''!-RowFixture-!'' checks that the elements of a collection match the given values in the table. + +While ${fitLibrary} continues to support ${fixture}s, it: + * Uses a similar class, a ${traverse} + * Doesn't require that you subclass a ${fitLibrary} ${fixture} or ${traverse}, instead using ${domainAdapter}s. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixTure/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixTure/properties.xml new file mode 100644 index 0000000000..08d6ba6e59 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixTure/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164717 + true + true + true + true + true + true + 1232250437906 + -1304926728796484005 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixturingMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixturingMethod/content.txt new file mode 100644 index 0000000000..94a65c4bd0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixturingMethod/content.txt @@ -0,0 +1,5 @@ +This is a special method that's called on a ${fixture}, ${traverse} or ${domainObject}. It is '''not''' called on any other type of object, such as a plain ${sut}. The fixturing methods are as follows: + * ${setUpMethod} or ${tearDownMethod} + * A ${finder} + * A ${parserDelegateMethod} +and some others... \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixturingMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixturingMethod/properties.xml new file mode 100644 index 0000000000..390fa82f6b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FixturingMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20070104193626 + true + true + true + true + true + true + 1167892586921 + -695267649926099105 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FloW/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FloW/content.txt new file mode 100644 index 0000000000..9247f6a9b7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FloW/content.txt @@ -0,0 +1 @@ +A ${doFixture} is in ''flow'' when it is the fixture referenced in the first table. Instead of interpreting just that table, as is usual with Fit, it interprets (at least some rows of) all of the tables in the storytest. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FloW/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FloW/properties.xml new file mode 100644 index 0000000000..c9ae42ee6d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/FloW/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20070104191834 + true + true + true + true + true + true + 1167891514296 + -6144126410560473701 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GetterMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GetterMethod/content.txt new file mode 100644 index 0000000000..a9bb999d41 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GetterMethod/content.txt @@ -0,0 +1,4 @@ +${programmers} +A ${getter} is a method that's used to get the value of a ''property''. This is Java Beans terminology. + +Also see ${setter}. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GetterMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GetterMethod/properties.xml new file mode 100644 index 0000000000..4fec11cf24 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GetterMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060826124940 + true + true + true + true + true + true + 1156553380901 + -7135853926335300481 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GivenValue/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GivenValue/content.txt new file mode 100644 index 0000000000..b2388748f4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GivenValue/content.txt @@ -0,0 +1,6 @@ +A ${given} value is a value that's suppplied as an input value to: + * An action + * A value to the left of the empty column in a calculation table + * A value in a combination table + * Set the value of a property of a ${domainObject} +Compare this to an ${expected}. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GivenValue/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GivenValue/properties.xml new file mode 100644 index 0000000000..e87898a722 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/GivenValue/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060820123519 + true + true + true + true + true + true + 1156034119348 + -1137076693752718138 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/KeyWords/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/KeyWords/content.txt new file mode 100644 index 0000000000..2cdd35b618 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/KeyWords/content.txt @@ -0,0 +1,15 @@ +An ${action} in the ${actions} of ${workflow} consists of a row of a table. + * The first cell and every second cell after that contains a ''keyword'' + * These ${keywords} tell you what the ${action} is about + * The other cells contain information that's used by the ${action}, such as which User, Room, or amount of money. + * ${keywords} are often ''italicised'' +!3 Examples + * See .FitLibrary.UserGuide.FitLibraryByExample.WorkFlow +!3 Programmers: Creating a method name from an action +The ${keywords} of an action are concatentated together, with spaces between and converted into a valid Java identifier using ${extendedCamelCase}. Eg: + * "first example" is mapped to "firstExample" + * "%age" is mapped to "percentAge" + * "while" is mapped to "_while" +There's no need to work out the mapping. Run the storytest and ${fitLibrary} will tell you the name of the method that it expects (if it doesn't exist), along with its arguments. + +Eg, see: .FitLibrary.UserGuide.FitLibraryByExample.WorkFlow.GeneralCodeDetails \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/KeyWords/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/KeyWords/properties.xml new file mode 100644 index 0000000000..3a14e5d1c7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/KeyWords/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20070216092834 + true + true + true + true + true + true + 1157202072179 + -5918419505629928821 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ListTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ListTraverse/content.txt new file mode 100644 index 0000000000..7102f5aeb2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ListTraverse/content.txt @@ -0,0 +1,3 @@ +This ${traverse} checks a given collection against a table. +!3 Examples + * .FitLibrary.UserGuide.FitLibraryByExample.OrderedList diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ListTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ListTraverse/properties.xml new file mode 100644 index 0000000000..30ed42a34d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ListTraverse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060820115506 + true + true + true + true + true + true + 1156031706128 + 5345667037732800835 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/MapTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/MapTraverse/content.txt new file mode 100644 index 0000000000..0cb5bdca99 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/MapTraverse/content.txt @@ -0,0 +1,6 @@ +This ${traverse} checks a given ''Map'' against a table. +!3 Examples + * .FitLibrary.UserGuide.FitLibraryByExample.MapHandling + * .FitLibrary.SpecifiCations.CollectionSpecifications.MapTraverse +A ${setTraverse} can also check a ''Map'', if it's explicitly passed one. See: + * .FitLibrary.SpecifiCations.CollectionSpecifications.SetTraverse.TestMap diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/MapTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/MapTraverse/properties.xml new file mode 100644 index 0000000000..ef45deb5dd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/MapTraverse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060824151511 + true + true + true + true + true + true + 1156389311688 + -979872373132918528 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectFactoryMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectFactoryMethod/content.txt new file mode 100644 index 0000000000..e59f2f5d90 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectFactoryMethod/content.txt @@ -0,0 +1,16 @@ +${programmers} +When a collection is being created from a setup table, an ${objectFactoryMethod} is called for each row of the table. This is needed because the type of the elements of the collection are not known (prior to jdk1.5). + * The name of the ${objectFactoryMethod} is formed from concatenating each of the ${label}s in the table and applying ${extendedCamelCase} to them + * Eg, the labels "name", "owing" form the ${objectFactoryMethod} name of ''nameOwing()''. + * The ${objectFactoryMethod} takes an argument for each ${label} column in the table, in order. + * The ${objectFactoryMethod} is called once for each element row of the table, passing the values from the table as arguments (suitably parsed). +The responsibility of the ${objectFactoryMethod} depends on whether the ${listSetUp} has been passed a Collection or not: + * For an embedded table, a list is automatically constructed by ${fitLibrary} and passed to the ${listSetUp}. The ${objectFactoryMethod} creates a suitable object from the arguments and returns it. It's automatically added to the list. + * For a table that's not embedded, there are two possibilities: + * A list was passed to the ${listSetUp} when it was selected. The ${objectFactoryMethod} creates a suitable object from the arguments and returns it. It's automatically added to the list. + * '''No''' list was passed to the ${listSetUp} when it was selected. The ${objectFactoryMethod} is then responsible for adding the created object to some collection itself. It doesn't need to return it. This option is provided for: + * Backwards compatibility, because this was how ''!-SetUpFixture-!'' worked + * Creating other types of collections, such as ''Maps'' + * When it's necessary to wire up bidirectional associations between objects (To do: discuss this in detail.) +!3 Examples + * See [[''chat example''][.FitLibrary.UserGuide.FitLibraryByExample.WorkFlow.WorkflowCode]] diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectFactoryMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectFactoryMethod/properties.xml new file mode 100644 index 0000000000..cceccd13f7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectFactoryMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20070216092834 + true + true + true + true + true + true + 1158226026100 + 7757231157753410871 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectUnderTest/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectUnderTest/content.txt new file mode 100644 index 0000000000..0695519a5b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectUnderTest/content.txt @@ -0,0 +1 @@ +This is an application object that's being specified and tested with storytests. In general, it may be the whole SystemUnderTest. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectUnderTest/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectUnderTest/properties.xml new file mode 100644 index 0000000000..785b31cce4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ObjectUnderTest/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164417 + true + true + true + true + true + true + 1232250257703 + -8248476175786150193 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/OtherLanguages/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/OtherLanguages/content.txt new file mode 100644 index 0000000000..7e80bef576 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/OtherLanguages/content.txt @@ -0,0 +1,6 @@ +!3 Support in Python, C# and other programming languages + * John Roth has added ''!-FitLibrary-!'' to the Python version of Fit (for both core Fit and ''!-FitNesse-!''). This is available at www.python.org/pypi + * Mike Stockdale has released a C# port for much of ''!-FitLibrary-!'' at https://sourceforge.net/projects/fitlibrary/ + * Randy Coulman has ported FitLibrary to Smalltalk + * Work may be underway on ports for Ruby, J#, C++, and PHP. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/OtherLanguages/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/OtherLanguages/properties.xml new file mode 100644 index 0000000000..00d12e463e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/OtherLanguages/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118155947 + true + true + true + true + true + true + 1232247587515 + 9222487705881996449 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParSer/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParSer/content.txt new file mode 100644 index 0000000000..2e7b196135 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParSer/content.txt @@ -0,0 +1,16 @@ +${programmers} +A ${parser} is part of the implementation of ${fitLibrary} + +There is a ${parser} for each class or primitive type + +For user-defined classes, some of the responsibility is passed to either: + * The class itself, with ${selfParse} + * A ${finder} + * A ${parseDelegate} + +The ${parser} is responsible for: + * Converting the contents of a cell (string or embedded table) into a value of the class or type + * Comparing two values to see if they match + * Showing a value as a string +See: + * .FitLibrary.SpecifiCations.ParserSpecifications diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParSer/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParSer/properties.xml new file mode 100644 index 0000000000..705f4bf5ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParSer/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164616 + true + true + true + true + true + true + 1232250376515 + -4798697765372568039 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParseDelegate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParseDelegate/content.txt new file mode 100644 index 0000000000..29b1516a80 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParseDelegate/content.txt @@ -0,0 +1,12 @@ +${programmers} +A ParseDelegate is responsible for parsing a String into a value object for a particular ''object value'' class. The details for Java are as follows. + * The ParseDelegate is registered as a delegate for a particular class. + * Call the method {{{LookupParser.registerParseDelegate()}}}. Eg: + * {{{LookupParser.registerParseDelegate(FixedPoint.class, FixedPointDelegate.class);}}} + * The first argument is the ''value object'' class concerned + * The second argument is either: + * A class, in which case it has a method ''public static Object parse(String s)''; or + * An object, in which case it has a method ''public Object parse(String s)''; +A ${parseDelegate} may be specified for any type, and so will be override the provided ${parser} for that type for the duration of the storytest concerned. + +For example, see .FitLibrary.SpecifiCations.ParserSpecifications.ValueObjectParser.TextInCell.DelegateParseString diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParseDelegate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParseDelegate/properties.xml new file mode 100644 index 0000000000..318d9b5c7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParseDelegate/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164647 + true + true + true + true + true + true + 1232250407406 + -6289400867010789908 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParserDelegateMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParserDelegateMethod/content.txt new file mode 100644 index 0000000000..3d9d974142 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParserDelegateMethod/content.txt @@ -0,0 +1,5 @@ +This is a method, supplied in a ${domainAdapter}, that defines how to parse a particular ${valueObject} type. + +In Java, a ${finder} is also used. +!3 Examples + * See .FitLibrary.SpecifiCations.DoWorkflow.TestParseDelegate \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParserDelegateMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParserDelegateMethod/properties.xml new file mode 100644 index 0000000000..9ce6a52465 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ParserDelegateMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20061117161800 + true + true + true + true + true + true + 1163733480121 + -8069785206396544127 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RickMugridge/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RickMugridge/content.txt new file mode 100644 index 0000000000..1cbc056a5b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RickMugridge/content.txt @@ -0,0 +1,5 @@ +!3 Rick Mugridge, Rimu Research, http://www.rimuresearch.com + +I am the inventor of ${fitLibrary}, which I developed in Java (and continue to do so). + +For my email address, see my company website, http://www.rimuresearch.com diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RickMugridge/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RickMugridge/properties.xml new file mode 100644 index 0000000000..2ae73b80b5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RickMugridge/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164547 + true + true + true + true + true + true + 1232250347562 + -4545314077431605052 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RuleMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RuleMethod/content.txt new file mode 100644 index 0000000000..a18bee5b4c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RuleMethod/content.txt @@ -0,0 +1,7 @@ +${programmers} +A ${ruleMethod} is called for each row of a calculations rule table. + * It's name is derived from the ${label}s in the header row of the table + * It has one argument for each ${given} value and returns a value that's used to check the ${expected} value of the calculation rule +!3 Examples + * .FitLibrary.UserGuide.FitLibraryByExample.CalculationRule + * .FitLibrary.UserGuide.FitLibraryByExample.ConstraintRule diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RuleMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RuleMethod/properties.xml new file mode 100644 index 0000000000..0791eefa57 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/RuleMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060826125038 + true + true + true + true + true + true + 1156553438754 + 7238694886134499398 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SelfParse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SelfParse/content.txt new file mode 100644 index 0000000000..86feabee2b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SelfParse/content.txt @@ -0,0 +1,6 @@ +${programmers} +With ${selfParse}, a ${valueObject} class is responsible for some of the responsibilities of a ${parser}. In Java, it: + * Has a ''parse()'' method: +{{{ public static Object parse(String s);}}} * Has an ''equals()'' method to compare one object of the class with another when matching an ''expected'' and ''actual'' value: +{{{ public boolean equals(Object object);}}} * Has a ''toString()'' method to show itself as a String, for use in error messages: +{{{ public String toString();}}} diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SelfParse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SelfParse/properties.xml new file mode 100644 index 0000000000..a29c2fa5e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SelfParse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164336 + true + true + true + true + true + true + 1232250216593 + -1009820857849703900 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetTraverse/content.txt new file mode 100644 index 0000000000..43b190ee70 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetTraverse/content.txt @@ -0,0 +1,4 @@ +This ${traverse} checks a ''set'' (ie, an unordered list) against a table. +!3 Examples + * .FitLibrary.UserGuide.FitLibraryByExample.UnorderedList + * .FitLibrary.SpecifiCations.CollectionSpecifications.SetTraverse diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetTraverse/properties.xml new file mode 100644 index 0000000000..aa9a1196ea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetTraverse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060820120319 + true + true + true + true + true + true + 1156032199988 + 350157940704992567 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetUpMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetUpMethod/content.txt new file mode 100644 index 0000000000..f0b6de7f82 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetUpMethod/content.txt @@ -0,0 +1,5 @@ +When a ${fixture}, ${traverse}, or {domainAdapter} is created and starts to interpret a table, it will automatically first call a public method ''setUp()'', if it exists. The method is called only once. + +The method that's actually called is the ''setUp()'' method that's found in the first object, starting at the ${fixture} or ${traverse} and following down the ${sut} chain. However, an object is only considered if it is a ${fixture}, ${traverse}, or {domainAdapter}. + +The ${tearDownMethod} servers a similar purpose, but is called at the end of interpretation. See details there of a potential confusion. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetUpMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetUpMethod/properties.xml new file mode 100644 index 0000000000..e97c551446 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetUpMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20070104191151 + true + true + true + true + true + true + 1167891111984 + 6367122435294039294 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetterMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetterMethod/content.txt new file mode 100644 index 0000000000..9c1d3c7511 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetterMethod/content.txt @@ -0,0 +1,4 @@ +${programmers} +A ${setter} is for changing the the value of a property. Also see ${getter}. + +A ${setter} for a property is used in the ${setup} of ${workflow}. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetterMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetterMethod/properties.xml new file mode 100644 index 0000000000..c64e348151 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SetterMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060903002501 + true + true + true + true + true + true + 1157199901999 + 6762853968119379558 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ShowMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ShowMethod/content.txt new file mode 100644 index 0000000000..1b9dc70031 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ShowMethod/content.txt @@ -0,0 +1,2 @@ +${programmers} +A ${show} is needed when a ${finder} returns an ${entity} that doesn't match the expected one. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ShowMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ShowMethod/properties.xml new file mode 100644 index 0000000000..5478d2eb12 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ShowMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060826125115 + true + true + true + true + true + true + 1156553475637 + -9179881018107968313 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/StoryTest/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/StoryTest/content.txt new file mode 100644 index 0000000000..2f96ec66a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/StoryTest/content.txt @@ -0,0 +1,10 @@ +A ${storytest} has two natures: + * As an example, specifying domain object, business rules, constraints, etc + * As an automated test, which checks that the ${sut} acts and continues to act as required +A ${storytest} often tells a little story. + +Some people refer to these as ''acceptance tests''. However: + * They have a different role, as ${storytest}s are often written for a ''story'' (a small piece of functionality) before development of the code, etc for that ''story''. + * Because they are used to specify business rules, they are not always ''end to end'' + * They tend to be written in a more abstract form than usual ''acceptance tests'' (which tend to be written in terms of the user interface). +Joshua Kerievsky introduced the terms ${storytest} and ''Storytest Driven Development''. See http://industrialxp.org. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/StoryTest/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/StoryTest/properties.xml new file mode 100644 index 0000000000..54d9bdc708 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/StoryTest/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164658 + true + true + true + true + true + true + 1232250418000 + 7375953964972227119 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SubsetTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SubsetTraverse/content.txt new file mode 100644 index 0000000000..1d390ff811 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SubsetTraverse/content.txt @@ -0,0 +1,4 @@ +This ${traverse} checks a ''subset'' (ie, some of an unordered list) against a table. +!3 Examples + * .FitLibrary.UserGuide.FitLibraryByExample.SubSet + * .FitLibrary.SpecifiCations.CollectionSpecifications.SubsetTraverse diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SubsetTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SubsetTraverse/properties.xml new file mode 100644 index 0000000000..23a884db80 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SubsetTraverse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060820121258 + true + true + true + true + true + true + 1156032778140 + -7635451234320051215 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteFixture/content.txt new file mode 100644 index 0000000000..d214cba5b3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteFixture/content.txt @@ -0,0 +1,9 @@ +With ${suite}s: + * ${storytest}s no longer need to mention any class names. This means that the same storytests can easily be used with different fixturing for testing at different levels, such as directly into the domain layer and through a GUI or web interface. + * Storytests can be filtered for a particular test run. For example, when only the completed storytests should be run on the build machine. + * The fixtures for the storytests in a suite can easily share resources, such as database connections. + * Each suite can provide different configuration information, such as selecting a DB or Spring configurations. + * The ${suiteSetUpMethod} and ${suiteTearDownMethod} are called at the start and end of suite processing. +See: + * ..FitLibrary.SuiteFixture + * .FitLibrary.SpecifiCations.SuiteFixture for further details diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteFixture/properties.xml new file mode 100644 index 0000000000..a86ef20276 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteFixture/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20070104192945 + true + true + true + true + true + true + true + 1167892185187 + -453645840492434277 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteSetUpMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteSetUpMethod/content.txt new file mode 100644 index 0000000000..272af9622a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteSetUpMethod/content.txt @@ -0,0 +1,3 @@ +The method ''suiteSetUp()'' is called on a ${suite} before it starts processing subsequent storytests. + +See the corresponding ${suiteTearDownMethod}. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteSetUpMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteSetUpMethod/properties.xml new file mode 100644 index 0000000000..096f2afed3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteSetUpMethod/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20070104192806 + true + true + true + true + true + true + true + 1167892086718 + -1291869987637895071 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteTearDownMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteTearDownMethod/content.txt new file mode 100644 index 0000000000..0bba3b2b75 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteTearDownMethod/content.txt @@ -0,0 +1,3 @@ +The method ''suiteTearDown()'' is called on a ${suite} after it finished processing all storytests. + +See the corresponding ${suiteSetUpMethod}. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteTearDownMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteTearDownMethod/properties.xml new file mode 100644 index 0000000000..7bb516f2d0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SuiteTearDownMethod/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20070104192831 + true + true + true + true + true + true + true + 1167892111796 + -4045843126706362987 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SystemUnderTest/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SystemUnderTest/content.txt new file mode 100644 index 0000000000..b0d612ae07 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SystemUnderTest/content.txt @@ -0,0 +1,5 @@ +The application that's being tested is sometimes referred to as the ${sut}. The following are not included: + * A ${fixture} + * A ${traverse} + * A ${domainAdapter} + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SystemUnderTest/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SystemUnderTest/properties.xml new file mode 100644 index 0000000000..dd4b007450 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/SystemUnderTest/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118161048 + true + true + true + true + true + true + 1232248248593 + -8058179470559672608 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TearDownMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TearDownMethod/content.txt new file mode 100644 index 0000000000..941069ff4c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TearDownMethod/content.txt @@ -0,0 +1,11 @@ +When a ${fixture}, ${traverse}, or {domainAdapter} finishing interpretation, it will automatically call a public method ''tearDown()'', if it exists. The method is called only once. There are two cases: + * The fixture is a ${doFixture} in ${flow}. The ''tearDown()'' call occurs after all the tables in the storytest have been interpreted + * Otherwise, the ''tearDown()'' call occurs after that fixture has finished processing its first table. +The method that's actually called is the ''tearDown()'' method that's found in the first object, starting at the ${fixture} or ${traverse} and following down the ${sut} chain. However, an object is only considered if it is a ${fixture}, ${traverse}, or {domainAdapter}. + +The ${setUpMethod} servers a similar purpose, but is called at the start of interpretation. + +Sometimes the behaviour may be surprising: + * Consider when the same ${domainAdapter} is referenced by two fixtures on a page, one being a ${doFixture} in ${flow}. The ${domainAdapter} has ''setUp()'' and ''tearDown()'' methods, but the fixtures do not. When the first table is interpreted, the ''setUp()'' method of the ${domainAdapter} is called. When (say) the third table in the storytest has been interpreted by the second (non-${flow}) fixture, the ''tearDown()'' method is called for that table. + * However, if the second (non-${flow}) fixture had ''setUp()'' and ''tearDown()'' methods, they would be called instead for the third table. At the end of the storytest, the ''tearDown()'' method of the ${domainAdapter} would then be called. +In other words, take care when sharing ${domainAdapter}s between fixtures. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TearDownMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TearDownMethod/properties.xml new file mode 100644 index 0000000000..a7c3a759ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TearDownMethod/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20070104192343 + true + true + true + true + true + true + 1167891823750 + -3472813592400212787 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TraVerse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TraVerse/content.txt new file mode 100644 index 0000000000..84623344a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TraVerse/content.txt @@ -0,0 +1,12 @@ +A ${traverse} plays the role of a ${fixture} in the implementation of ${fitLibrary}. A ${traverse} differs in the following ways: + * It can return a result + * It has differently-named methods, which explicitly pass parameters that are held in a ${fixture} + * It is a ${domainAdapter}, like any other +For backwards compatibility, all the ${fitLibrary} ${fixture}s remain. They simply pass responsibility onto a corresponding ${traverse}. It's fine to mix the use of ${fixture}s and ${traverse}s. + +There are some ${traverse}s that have no corresponding ${fixture}. Eg, ${mapTraverse}. + +In most cases, you don't need to know about the ${traverse}s: + * It's not necessary to subclass either a ${traverse} or ${fixture}. Just use a bare class. If you need specialised methods beyond those in your application classes, use a ${domainAdapter}. + * Objects returned from ${workflow} actions are auto-wrapped, so you don't usually need to explciitly select a ${traverse}. You do, for example, if you want to treat a ''List'' as a ''Set''. If you do: + * Call the appropropriate selector method in ''!-FitLibrarySelector-!'' to choose the appropriate one. Using these methods makes your fixturing code less dependent on the implementation details of ${fitLibrary}. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TraVerse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TraVerse/properties.xml new file mode 100644 index 0000000000..ba5c15cfd5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/TraVerse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164354 + true + true + true + true + true + true + 1232250234562 + -3419031272821340608 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ValueObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ValueObject/content.txt new file mode 100644 index 0000000000..9207612849 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ValueObject/content.txt @@ -0,0 +1,18 @@ +A ValueObject is a domain object that doesn't have identity. There may be several copies of the "same" ValueObject, and they'll be treated as being the same if they have the same contents. Compare this to an DomainEntity. + +Here are some examples of domain objects that will ''usually'' be a ValueObject: + * ''Date'' + * ''Count'' + * ''Money'' + * ''Point'' + * ''Circle'' +They'll often very simple, but don't have to be. + +There can be several ''copies'' of the same ValueObject in a storytest. And so we can simply include their whole value several times. The value may be a String, such as the ''Date'' "04/04/2006. Or it could be a table, such as the following ''Point'': + +|x|23| +|y|45| + +That ''Point'' could also be represented in a String as "(23,45)" + +For a good introduction to the notion of ValueObject, see ${ddd}. diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ValueObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ValueObject/properties.xml new file mode 100644 index 0000000000..6f115b0c1e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/ValueObject/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164729 + true + true + true + true + true + true + 1232250449375 + -7161958510369427309 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkFlow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkFlow/content.txt new file mode 100644 index 0000000000..a902ee2d79 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkFlow/content.txt @@ -0,0 +1,11 @@ +WorkFlow is concerned with the sequence of actions that are carried out to achieve some goal. + +A ${workflow} ${storytest} will specify an example sequence of actions. Such a ${storytest} will usually consist of three sections, in order: + * ${setup}, which specifies the state of the system prior to carrying out the steps + * ${actions}, which specifies the actions being carried out + * ${checks}, whicn specify the state of parts of the system that have changed (or not) due to the actions. +These don't always appear: + * There may be no ''setup'' section because the actions occur with the system having just started. + * The ''actions'' may carry out some ''checks'' as they go. For example, we may specify that an particular ''action'' will be rejected because it's not valid to carry out that action in that state. + * There may be no ''checks'' section, either because the ''checks'' occurred along with the ''actions''. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkFlow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkFlow/properties.xml new file mode 100644 index 0000000000..1d24afb716 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkFlow/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164456 + true + true + true + true + true + true + 1232250296562 + 5067693853979858183 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkflowAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkflowAction/content.txt new file mode 100644 index 0000000000..3c5c1066d2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkflowAction/content.txt @@ -0,0 +1,7 @@ +This is an action in a ${workflow} table. Such an action may: + * Be carried out by a user through a user interface + * Happen automatically: Eg, at a given time, or after some time has elapsed since some event or action + * Be due to an action of another system, such as it sending data or signalling an event +!3 For example + * .FitLibrary.UserGuide.FitLibraryByExample.WorkFlow + * .FitLibrary.SpecifiCations.DoWorkflow.TestActions diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkflowAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkflowAction/properties.xml new file mode 100644 index 0000000000..fb3b689a1f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/WorkflowAction/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164707 + true + true + true + true + true + true + 1232250427796 + 3409327463712869249 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/content.txt b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/content.txt new file mode 100644 index 0000000000..906c5640a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/content.txt @@ -0,0 +1,4 @@ +Here's a glossary of terms that we use in the user guide and specifications: + +|!contents| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/GlosSary/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/properties.xml new file mode 100644 index 0000000000..2ffbcc4565 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/GlosSary/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118161025 + true + true + true + true + true + true + 1232248225609 + -399357719951294885 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/PageFooter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/PageFooter/content.txt new file mode 100644 index 0000000000..aac992a059 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/PageFooter/content.txt @@ -0,0 +1,8 @@ +!**< glossary reference definitions +!define copyright {''Copyright (c) 2004 - 2010'' [[''Rick Mugridge''][.FitLibrary.GlosSary.RickMugridge]], ''http://www.rimuresearch.com''} +!define gpl2 (''Released under the terms of the GNU General Public License version 2 or later.'') +**! +----${copyright} +${gpl2} + +([[!-FitLibrary.Specifications-!][.FitLibrary.SpecifiCations]]) ([[!-FitLibrary.UserGuide-!][.FitLibrary.UserGuide]]) ([[!-FitLibrary.Glossary-!][.FitLibrary.GlosSary]]) \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/PageFooter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/PageFooter/properties.xml new file mode 100644 index 0000000000..26a79f53b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/PageFooter/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1232247506625 + -5609149622327051997 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/CodeDetails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/CodeDetails/content.txt new file mode 100644 index 0000000000..9a1c0841eb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/CodeDetails/content.txt @@ -0,0 +1,29 @@ +!3 Creating a method name from an action +The ${keywords} of an action are concatentated together, with spaces between and converted into a valid Java identifier. Eg: + * "first example" is mapped to "firstExample" + * "%age" is mapped to "percentAge" + * "while" is mapped to "_while" +There's no need to work out the mapping. Run the storytest and ${fitLibrary} will tell you the name of the method that it expects (if it doesn't exist), along with its arguments. Eg, run this: + +| !-fitlibrary.eg.chat.ChatSystem-! | +---- +|''1 some mix''|1|''of %age''|3|''and .^&''|chat| + +||1||2|| + +The mapping is done using ${extendedCamelCase}. +!3 Rules for coloring Cells in the Report + * If the called method returns a boolean value, the ''keywords'' of that action are colored green if the returns true. If the method returns false or throws an exception, it colors it red. + * A 'check'' special action colors the last cell, containing the expected value + * A 'reject' or 'not' special action color the action green if the action returns false or throws an exception. Otherwise it colors it red. + * An 'ensure' special action colors the action red if the action returns false or throws an exception. Otherwise it colors it green. +!3 Auto-Wrapping +The value returned by the method called for an action may be auto-wrapped with a Traverse for interpreting the rest of the table. Objects are auto-wrapped as follows: + * A ''Map'' objects is auto-wrapped with a ${mapTraverse}. + * A ''Set'' object is auto-wrapped with a ${setTraverse}. + * A primitive array, such as int[], Integer[], etc is wrapped with an ${arrayTraverse} + * An ''Object[]'', ''Collection'' or ''Iterator'' is wrapped with a ${listTraverse}. + * An 'Object' is wrapped with a ${workflow}'. But only if it's not one of the above, nor a ${traverse} nor ${fixture}, and doesn't have a ''static Object parse(String)'' method. +This ${traverse} object, or the one returned explicitly, is used to interpret the rest of the table. + +Also see SetUpTearDown diff --git a/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/CodeDetails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/CodeDetails/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/CodeDetails/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/SetUpTearDown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/SetUpTearDown/content.txt new file mode 100644 index 0000000000..260825bd9c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/SetUpTearDown/content.txt @@ -0,0 +1,14 @@ +!3 Doing your own processing before and/or after a table has been processsed +For example, it may be necessary to: + * Open a database connection, socket, file, or browser + * Start a transaction or session + * Close a database connection, socket, file, or browser + * Commit/abort a transaction or session + * Clean up some objects, data or database tables after a storytest (although it's often not good practice to do this) +Include the methods ''setUp()'' and/or ''tearDown()'' in your class if you want to do this with a table in a storytest. + * ''setUp()'' is called before the table is processed + * ''tearDown()'' is called afterwards +However, the first object of a storytest is different. These methods are called before and/or after all of the tables have been processed. + * ''setUp()'' is called before any of the tables are processed + * ''tearDown()'' is called after all of the tables have been processed (or after it is prematurely stopped) +It's also possible to do before and after processing across a suite of storytests. See ${suite}. diff --git a/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/SetUpTearDown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/SetUpTearDown/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/SetUpTearDown/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/content.txt new file mode 100644 index 0000000000..ab02d49f35 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/content.txt @@ -0,0 +1,34 @@ +!3 Workflow Action ''keywords'' +# + * An workflow action has a ''keyword'' in the first cell and in every second cell. The other cells hold values (parameters). + * A ''keyword'' can contain any characters, such as "+", "Total $", "active!", "if", "(ok)". See ${extendedCamelCase}. + * A ''keyword'' cell can be empty. + * The last ''keyword'' is optional. +# +!3 Special actions +# +Some special actions apply to the rest of their row: + + * ''check'' checks whether the result of the action in the rest of the row matches the value in the last cell of the row. That last cell is colored green, red, etc accordingly. + * ''reject'' checks that the action in the rest of the row fails, as expected. + * ''not'' acts the same as ''reject''. + * ''ensure'' checks that the action in the rest of the row succeeds. + * ''show'' displays the result of the action in the rest of the row by adding an extra cell in the report. + * ''show dot'' displays the result of the action in the rest of the row by adding an extra cell in the report. This is shown as a Dot graph. + * ''note'' ignores the rest of the row, allowing notes to be included in tables + +Other special actions apply to the rest of the table + + * ''calculate'' specifies that the rest of the table holds examples for a calculation rule. + * ''constraint'' specifies that the rest of the table holds examples for a constraint rule. + * ''failing constraint'' specifies that the rest of the table holds examples for a failing constraint. + * ''comment'' ignores the rest of the table + * ''ignored'' ignores the rest of the table, but colours it as ignored in the report + * ''abandon storytest'' to ignore the rest of the storytest (without colouring it as ignored) +# +!3 More Examples +# +Lots more examples of using ''!-DoFixture-!'' for workflow are provided in ''Fit for Developing Software'' by Rick Mugridge and Ward Cunningham, Prentice-Hall, 2005. The tables and fixture code for these examples are available on the [[Fit website][http://fit.w2.com]]. +# +!3 Code Details +See ^CodeDetails diff --git a/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/DoTables/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/content.txt b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/content.txt new file mode 100644 index 0000000000..1344c3e65f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/content.txt @@ -0,0 +1,2 @@ +^DoTables + diff --git a/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ReferenCe/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/SetUp/content.txt new file mode 100644 index 0000000000..df663b49fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/SetUp/content.txt @@ -0,0 +1,21 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|1|3.00|20.00|80.00|0.00| +|Bike|1|30.00|200.00|800.00|0.00| +|Truck|1|300.00|2000.00|8000.00|0.00| + +|''setup''| +|''client name''|''phone''|''account limit''| +|Joanna|373 7599|0.00| +|Bob|352 2353|100.00| +|Joe|334 2433|1000.00| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| +|John|554 2362| +|Pual|232 2356| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/SetUp/properties.xml new file mode 100644 index 0000000000..8c0b03b7f3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085048 + + + + + + + 1124316281314 + 5745746177681824257 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHire/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHire/content.txt new file mode 100644 index 0000000000..e7db400774 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHire/content.txt @@ -0,0 +1,12 @@ +|check|''account owing for''|Bob|'''is'''|0.00| + +|''begin transaction for client''|Bob|''staff''|Bill| +|''rent''|1||Tricycle|''for''|1 day| +|''pay on account $''|20.00| +|''complete transaction''| + +|''rental item subset''| +|''name''|''free count''| +|Tricycle|0| + +|check|''account owing for''|Bob|'''is'''|20.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHire/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHire/properties.xml new file mode 100644 index 0000000000..11e5f33b24 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHire/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507112721 + + + + + + + + 1146958041819 + 5746581519464454739 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHireCancel/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHireCancel/content.txt new file mode 100644 index 0000000000..9c52031ecc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHireCancel/content.txt @@ -0,0 +1,12 @@ +|check|''account owing for''| Bob |''is''|0.00| + +|''begin transaction for client''| Bob |''staff''| Bill | +|''rent''|1||Tricycle|''for''|1 day| +|''pay on account $''|20.00| +|''cancel transaction''| + +|''rental item subset''| +|''name''|''free count''| +|Tricycle|1| + +|check|''account owing for''| Bob |''is''|0.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHireCancel/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHireCancel/properties.xml new file mode 100644 index 0000000000..69c95320f6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountAfterHireCancel/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113006 + + + + + + + + 1146958206616 + 6270978101295791030 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountReturnEarly/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountReturnEarly/content.txt new file mode 100644 index 0000000000..ea68058597 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountReturnEarly/content.txt @@ -0,0 +1,17 @@ +|check|''account owing for''| Bob |''is''|0.00| + +|''begin transaction for client''| Bob |''staff''| Bill | +|''rent''|1||Tricycle|''for''|2 day| +|''pay on account $''|40.00| +|''complete transaction''| + +|check|''account owing for''| Bob |''is''|40.00| + +|''time is now''| 2004/05/07 09:01| + +|''begin transaction for client''| Bob |''staff''| Bill | +|''return items''|1||Tricycle| +|''refund account $''|20.00| +|''complete transaction''| + +|check|''account owing for''| Bob |''is''|20.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountReturnEarly/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountReturnEarly/properties.xml new file mode 100644 index 0000000000..08326a4fa3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/TestAccountReturnEarly/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085048 + + + + + + + + 1124316436655 + -7068844427111491921 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/content.txt new file mode 100644 index 0000000000..1041a07a46 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/content.txt @@ -0,0 +1,4 @@ +^SetUp +^TestAccountAfterHire +^TestAccountAfterHireCancel +^TestAccountReturnEarly diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/properties.xml new file mode 100644 index 0000000000..274a759fc4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AccountHire/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085048 + + + + + + + + 1124315605046 + -4126875867591198712 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/AddRentalItem/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/AddRentalItem/content.txt new file mode 100644 index 0000000000..50c2d90b9c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/AddRentalItem/content.txt @@ -0,0 +1,12 @@ +|''begin admin transaction''| Bill | +|''add''|0|''of type''|barbeque|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''add identified''|bbq001|''of type''|barbeque|''last maintained''|2004/4/15 11:34|''period of''|3|''months''| +|''complete transaction''| + +|''rental item list''| +| ''name''| ''free count'' |''hourly rate''|''daily rate''|''weekly rate''|''bond'' | +|barbeque | 1 | 20.00 | 100.00 | 500.00 | 200.00 | + +|''identified rental item subset''| +|''identifier''|''last maintained''| +|bbq001|2004/4/15 11:34| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/AddRentalItem/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/AddRentalItem/properties.xml new file mode 100644 index 0000000000..211a5dfc74 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/AddRentalItem/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113146 + + + + + + + + 1146958306039 + 5526616849021084357 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/SetUp/content.txt new file mode 100644 index 0000000000..b20217b306 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/SetUp/content.txt @@ -0,0 +1,7 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/SetUp/properties.xml new file mode 100644 index 0000000000..883a190bb8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1127341705918 + 6729615802812687297 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestAddRentalItemType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestAddRentalItemType/content.txt new file mode 100644 index 0000000000..e4f3a18f78 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestAddRentalItemType/content.txt @@ -0,0 +1,7 @@ +|''begin admin transaction''| Bill | +|''add''|2|''of type''|party tent|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''complete transaction''| + +|''rental item list''| +| ''name'' | ''free count'' |''hourly rate''|''daily rate''|''weekly rate''|''bond'' | +| party tent | 2 | 20.00 | 100.00 | 500.00 | 200.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestAddRentalItemType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestAddRentalItemType/properties.xml new file mode 100644 index 0000000000..8eca9a692e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestAddRentalItemType/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113207 + + + + + + + + 1146958327650 + -6670832671777400588 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestInvalidMaintenance/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestInvalidMaintenance/content.txt new file mode 100644 index 0000000000..5f4e2695b4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestInvalidMaintenance/content.txt @@ -0,0 +1,11 @@ + * Setup: +|''begin admin transaction''| Bill | +|''add''|0|''of type''|barbeque|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''add identified''|bbq001|''of type''|barbeque|''last maintained''|2004/05/06 9:01|''period of''|3|''months''| +|''complete transaction''| + +---- * Action: +|''begin admin transaction''| Bill | +|'''reject'''|''maintenance complete''|bbq1| +|'''reject'''|''maintenance complete''|bbq2| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestInvalidMaintenance/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestInvalidMaintenance/properties.xml new file mode 100644 index 0000000000..3914a5aace --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestInvalidMaintenance/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085044 + + + + + + + + 1123315120733 + -1884649395076142928 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceDone/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceDone/content.txt new file mode 100644 index 0000000000..07d023051b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceDone/content.txt @@ -0,0 +1,22 @@ + * Once an identified rental item is maintained, it's available again + * Setup: +|''begin admin transaction''| Bill | +|''add''|0|''of type''|barbeque|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''add identified''|bbq001|''of type''|barbeque|''last maintained''|2004/4/15 11:34|''period of''|3|''months''| +|''complete transaction''| + +---- * Action: +|''time is now''| 2004/08/06 09:23| + +|''begin admin transaction''| Bill | +|''maintenance complete''|bbq001| +|''complete transaction''| +---- * Checks: +|''rental item list''| +| ''name''| ''free count'' | +|barbeque | 1 | + +|''identified rental item subset''| +|''identifier''|''last maintained''| +|bbq001|2004/08/06 09:23| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceDone/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceDone/properties.xml new file mode 100644 index 0000000000..9344e6fc7b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceDone/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113235 + + + + + + + + 1146958355971 + -5953809220913799406 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceOutstanding/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceOutstanding/content.txt new file mode 100644 index 0000000000..43e49fd076 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceOutstanding/content.txt @@ -0,0 +1,14 @@ + * Once an identified rental item is maintained, it's available again + * Setup: +|''begin admin transaction''| Bill | +|''add''|0|''of type''|barbeque|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''add identified''|bbq001|''of type''|barbeque|''last maintained''|2004/4/15 11:34|''period of''|3|''months''| +|''add identified''|bbq002|''of type''|barbeque|''last maintained''|2004/4/15 11:34|''period of''|2|''months''| +|''complete transaction''| + +---- * Action: +|''time is now''| 2004/08/06 09:23| + +|''begin admin transaction''| Bill | +|''check''|''requiring maintenance''|bbq001,bbq002| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceOutstanding/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceOutstanding/properties.xml new file mode 100644 index 0000000000..f2bc88a36d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestMaintenanceOutstanding/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085044 + + + + + + + + 1123714278045 + 6427627890680551392 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRegularMaintenance/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRegularMaintenance/content.txt new file mode 100644 index 0000000000..1af4b6293a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRegularMaintenance/content.txt @@ -0,0 +1,18 @@ + * Once it's past the time for the next maintenace of an identified rental item, it's not available for rental + + * Action: +|''begin admin transaction''| Bill | +|''add''|0|''of type''|barbeque|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''add identified''|bbq001|''of type''|barbeque|''last maintained''|2004/4/15 11:34|''period of''|3|''months''| +|''complete transaction''| + +|''time is now''| 2004/08/06 09:02| +---- + * It's not available: +|''rental item list''| +| ''name''| ''free count'' | +|barbeque | 0 | + * It's still to be maintained: +|''identified rental item subset''| +|''identifier''|''last maintained''| +|bbq001|2004/4/15 11:34| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRegularMaintenance/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRegularMaintenance/properties.xml new file mode 100644 index 0000000000..5f425f182e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRegularMaintenance/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113301 + + + + + + + + 1146958381838 + -5819837966193884967 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicateRentalItems/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicateRentalItems/content.txt new file mode 100644 index 0000000000..3038c09b04 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicateRentalItems/content.txt @@ -0,0 +1,9 @@ +|''begin admin transaction''| Bill | +|''add''|0|''of type''|barbeque|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''add identified''|bbq001|''of type''|barbeque|''last maintained''|2004/4/15 11:34|''period of''|3|''months''| +|'''reject'''|''add identified''|bbq001|''of type''|barbeque|''last maintained''|2004/4/15 11:34|''period of''|3|''months''| +|''complete transaction''| + +|''rental item list''| +| ''name''| ''free count'' |''hourly rate''|''daily rate''|''weekly rate''|''bond'' | +|barbeque | 1 | 20.00 | 100.00 | 500.00 | 200.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicateRentalItems/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicateRentalItems/properties.xml new file mode 100644 index 0000000000..98b8bd92f1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicateRentalItems/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113340 + + + + + + + + 1146958420354 + -2059098667427122598 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicates/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicates/content.txt new file mode 100644 index 0000000000..7c4c515512 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicates/content.txt @@ -0,0 +1,8 @@ +|''begin admin transaction''| Bill | +|''add''|2|''of type''|party tent|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|'''reject'''|''add''|2|''of type''|party tent|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''complete transaction''| + +|''rental item list''| +| ''name'' | ''free count'' |''hourly rate''|''daily rate''|''weekly rate''|''bond'' | +| party tent | 2 | 20.00 | 100.00 | 500.00 | 200.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicates/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicates/properties.xml new file mode 100644 index 0000000000..6f1923d368 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/TestRejectDuplicates/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113354 + + + + + + + + 1146958434554 + -7142388077209241322 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/content.txt new file mode 100644 index 0000000000..12b1daaaa7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/content.txt @@ -0,0 +1,13 @@ +^TestAddRentalItemType +^TestRejectDuplicates + +^AddRentalItem +^TestRejectDuplicateRentalItems + +^TestRegularMaintenance +^TestMaintenanceOutstanding +^TestMaintenanceDone +^TestInvalidMaintenance + +^SetUp + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/properties.xml new file mode 100644 index 0000000000..c328272241 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085044 + + + + + + + + 1123210103968 + 671341282531583970 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestBadReturns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestBadReturns/content.txt new file mode 100644 index 0000000000..8ac3546f8a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestBadReturns/content.txt @@ -0,0 +1,8 @@ +|''begin admin transaction''| Bill | +|''remove for repair''|coffee dispenser||2| +|''complete transaction''| + +|''begin admin transaction''| Bill | +|'''reject'''|''return from repair''|coffee dispenser||3| +|'''reject'''|''return from repair''|coffee mug||2| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestBadReturns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestBadReturns/properties.xml new file mode 100644 index 0000000000..3d7a6eb3a6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestBadReturns/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085042 + + + + + + + + 1123056827187 + 4240394940127173889 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepair/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepair/content.txt new file mode 100644 index 0000000000..d56190ebfe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepair/content.txt @@ -0,0 +1,7 @@ +|''begin admin transaction''| Bill | +|''remove for repair''|coffee dispenser||2| +|''complete transaction''| + +|''rental item subset''| +| ''name'' | ''free count''| +| coffee dispenser | 8 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepair/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepair/properties.xml new file mode 100644 index 0000000000..1b5df57319 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepair/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113058 + + + + + + + + 1146958258842 + 9180401906541042662 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepairReturn/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepairReturn/content.txt new file mode 100644 index 0000000000..2489211e71 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepairReturn/content.txt @@ -0,0 +1,11 @@ +|''begin admin transaction''| Bill | +|''remove for repair''|coffee dispenser||2| +|''complete transaction''| + +|''begin admin transaction''| Bill | +|''return from repair''|coffee dispenser||2| +|''complete transaction''| + +|''rental item subset''| +| ''name'' | ''free count''| +| coffee dispenser | 10 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepairReturn/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepairReturn/properties.xml new file mode 100644 index 0000000000..492d0cbdff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/TestRepairReturn/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113130 + + + + + + + + 1146958290497 + 4070630864249224194 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/content.txt new file mode 100644 index 0000000000..2815d792c3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/content.txt @@ -0,0 +1,3 @@ +^TestRepair +^TestRepairReturn +^TestBadReturns \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/properties.xml new file mode 100644 index 0000000000..52c05cc099 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/AdminFunctions2/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085042 + + + + + + + + 1123056771125 + 6218845959686803076 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingClashes/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingClashes/content.txt new file mode 100644 index 0000000000..135e449251 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingClashes/content.txt @@ -0,0 +1,18 @@ +---- * Given: +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|8||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''pay with cash $''|24.00| +|''complete transaction''| +---- * Actions: +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''reject'''|''book''|4||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''complete transaction''| +---- * Checks: +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|8|2004/05/08 09:01|2004/05/08 11:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingClashes/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingClashes/properties.xml new file mode 100644 index 0000000000..4dff78ee08 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingClashes/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113425 + + + + + + + + 1146958465108 + 4558932837836111351 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingUnavailable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingUnavailable/content.txt new file mode 100644 index 0000000000..518e340a9c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingUnavailable/content.txt @@ -0,0 +1,10 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''reject'''|''book''|200||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''complete transaction''| + * ''Checks'' +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingUnavailable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingUnavailable/properties.xml new file mode 100644 index 0000000000..cdbf4f32bf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingUnavailable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507113518 + + + + + + + + 1146958518054 + -3971864081191284790 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingsDoNotClash/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingsDoNotClash/content.txt new file mode 100644 index 0000000000..d00cbb93b9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingsDoNotClash/content.txt @@ -0,0 +1,11 @@ +---- * Actions: +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|8||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''book''|4||coffee dispenser|''on''|2004/05/09 09:01|''for''|2 hours| +|''pay with cash $''|36.00| +|''complete transaction''| +---- * Checks: +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|8|2004/05/08 09:01|2004/05/08 11:01| +|coffee dispenser|4|2004/05/09 09:01|2004/05/09 11:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingsDoNotClash/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingsDoNotClash/properties.xml new file mode 100644 index 0000000000..ee84b338c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestBookingsDoNotClash/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085050 + + + + + + + + 1123316910371 + -3835295593722364325 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCancelBooking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCancelBooking/content.txt new file mode 100644 index 0000000000..83feafadde --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCancelBooking/content.txt @@ -0,0 +1,21 @@ +---- * Given: +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''pay with cash $''|6.00| +|''complete transaction''| + +---- * Actions: +|''time is now''|2004/05/08 09:02| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''cancel booking of''|2||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''refund cash $''|6.00| +|''complete transaction''| +---- * Checks: +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCancelBooking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCancelBooking/properties.xml new file mode 100644 index 0000000000..87ca605598 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCancelBooking/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114155 + + + + + + + + 1146958915686 + -6504986993953419947 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestChangeBooking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestChangeBooking/content.txt new file mode 100644 index 0000000000..01024cf9a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestChangeBooking/content.txt @@ -0,0 +1,22 @@ +!3 ''Change the length of a booking for the future'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''pay with cash $''|6.00| +|''complete transaction''| + +!3 ''One day later...'' +|''time is now''| 2004/05/07 09:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''change period of''|2||coffee dispenser|''for''|2004/05/08 09:01|''with duration of''|2 hours|''to''|5 hours| +|''pay with cash $''|9.00| +|''complete transaction''| + + * ''Checks'' +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/08 09:01|2004/05/08 14:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestChangeBooking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestChangeBooking/properties.xml new file mode 100644 index 0000000000..cc6374e3d4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestChangeBooking/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114211 + + + + + + + + 1146958931999 + -5677281425154277387 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBooking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBooking/content.txt new file mode 100644 index 0000000000..5124a8f467 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBooking/content.txt @@ -0,0 +1,23 @@ +---- * Given: +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''pay with cash $''|6.00| +|''complete transaction''| +---- * Actions: +|''time is now''|2004/05/08 09:02| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''accept booking of''|2||coffee dispenser|''for''|2004/05/08 09:01|''for''|2 hours| +|''complete transaction''| +---- * Checks: +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| + +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/08 09:01|2004/05/08 11:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|8| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBooking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBooking/properties.xml new file mode 100644 index 0000000000..eb3530117c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBooking/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114230 + + + + + + + + 1146958950216 + -8776153154431847894 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBookingEarly/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBookingEarly/content.txt new file mode 100644 index 0000000000..7825d15626 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBookingEarly/content.txt @@ -0,0 +1,24 @@ + * If client collects booked items early, count the start time from when they collect +---- * Given: +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''pay with cash $''|6.00| +|''complete transaction''| +---- * Actions: +|''time is now''|2004/05/08 08:02| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''accept booking of''|2||coffee dispenser|''for''|2004/05/08 09:01|''for''|2 hours| +|''complete transaction''| +---- * Checks: +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| + +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/08 08:02|2004/05/08 10:02| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|8| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBookingEarly/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBookingEarly/properties.xml new file mode 100644 index 0000000000..d6bc78c4d4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestCollectBookingEarly/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114245 + + + + + + + + 1146958965618 + 266560550058830680 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeBooking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeBooking/content.txt new file mode 100644 index 0000000000..e52ef0941f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeBooking/content.txt @@ -0,0 +1,14 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''pay with cash $''|6.00| +|''complete transaction''| + * ''Checks'' +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/08 09:01|2004/05/08 11:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeBooking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeBooking/properties.xml new file mode 100644 index 0000000000..1cbfc7602e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeBooking/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114301 + + + + + + + + 1146958981841 + 6232353608383783682 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeMultiBooking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeMultiBooking/content.txt new file mode 100644 index 0000000000..482f8857cb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeMultiBooking/content.txt @@ -0,0 +1,13 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|1||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''book''|1||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''pay with cash $''|6.00| +|''complete transaction''| + * ''Checks'' +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/08 09:01|2004/05/08 11:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeMultiBooking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeMultiBooking/properties.xml new file mode 100644 index 0000000000..1044ff17da --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestMakeMultiBooking/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114317 + + + + + + + + 1146958997754 + -1528526803370733263 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestNoBookings/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestNoBookings/content.txt new file mode 100644 index 0000000000..50f748863a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestNoBookings/content.txt @@ -0,0 +1,3 @@ +|''client booking list''|Joanna| +|''rental item''|''count''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestNoBookings/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestNoBookings/properties.xml new file mode 100644 index 0000000000..213c0fbc1b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestNoBookings/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085050 + + + + + + + + 1123057536250 + 6402933404903930626 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestRentalClashesWithBooking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestRentalClashesWithBooking/content.txt new file mode 100644 index 0000000000..e01e3354f8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestRentalClashesWithBooking/content.txt @@ -0,0 +1,21 @@ +!3 Can't rent items to break booking in future +---- * Given: +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|8||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''pay with cash $''|24.00| +|''complete transaction''| +---- * Actions: +|''time is now''|2004/05/08 08:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''reject'''|''rent''|4||coffee dispenser|''for''|2 hours| +|''complete transaction''| +---- * Checks: +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|8|2004/05/08 09:01|2004/05/08 11:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestRentalClashesWithBooking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestRentalClashesWithBooking/properties.xml new file mode 100644 index 0000000000..59dc44cd69 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/TestRentalClashesWithBooking/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114335 + + + + + + + + 1146959015530 + 5649543856121680891 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/content.txt new file mode 100644 index 0000000000..76fd4f5ef9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/content.txt @@ -0,0 +1,12 @@ +^TestNoBookings +^TestMakeBooking +^TestMakeMultiBooking +^TestCollectBooking +^TestCollectBookingEarly +^TestCancelBooking +^TestChangeBooking + +^TestBookingUnavailable +^TestBookingClashes +^TestRentalClashesWithBooking +^TestBookingsDoNotClash \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/properties.xml new file mode 100644 index 0000000000..99115708fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookedRentals/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085050 + + + + + + + + 1124319777996 + -3734934627653952544 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/TestBookingClashesWithBooking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/TestBookingClashesWithBooking/content.txt new file mode 100644 index 0000000000..2ad38b8e94 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/TestBookingClashesWithBooking/content.txt @@ -0,0 +1,13 @@ +!2 A second booking for the future clashes with one already made + +|''begin transaction for client''| Joanna |''staff''| Bill | +|'''check'''|''book''| 19 || coffee pot |''on''| 2004/05/13 09:01 |''for''|3 days|684.00| +|''pay with cash $''|684.00 | +|''complete transaction''| + + * Xiaosong can't book as there is a clash +|''begin transaction for client''| Xiaosong |''staff''| Bill | +|'''not'''|''book''| 5 || coffee pot |''on''| 2004/05/12 09:01 |''for''|2 days| +|'''check'''|''book''| 1 || coffee pot |''on''| 2004/05/12 09:01 |''for''| 2 days| 24.00 | +|''pay with cash $''| 24.00 | +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/TestBookingClashesWithBooking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/TestBookingClashesWithBooking/properties.xml new file mode 100644 index 0000000000..fd4681dff3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/TestBookingClashesWithBooking/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085049 + + + + + + + + 1124664263588 + 6019700872472668557 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/content.txt new file mode 100644 index 0000000000..e91933a724 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/content.txt @@ -0,0 +1 @@ +^TestBookingClashesWithBooking \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/properties.xml new file mode 100644 index 0000000000..10178a336c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingClash/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085049 + + + + + + + + 1127690179463 + -1578898670864684617 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplatePartialFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplatePartialFails/content.txt new file mode 100644 index 0000000000..06ce8e51c9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplatePartialFails/content.txt @@ -0,0 +1,29 @@ + * Setup template +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|1|''people''| + +|''create template''|21st party| +|''one''|yardie glass|''for''|1000|''people''| +|''one''|balloon|''for''|10|''people''| +|''one''|cup|''for''|1|''people''| + + * Client fills 2 templates, 1st one pass, 2nd fails due to the lack of available items +|''begin transaction for client''|Joanna|''staff''|Bill| +|'''check'''|''fill book template''|coffee break|''for''|21|''people on''|2004/05/08 09:01|''for''|1 day|91.85| +|'''not'''|''fill book template''|21st party|''for''|480|''people on''|2004/05/08 09:01|''for''|1 day| +|''pay with cash $''|91.85| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/08 09:01|2004/05/09 09:01| +|hot water dispenser|2|2004/05/08 09:01|2004/05/09 09:01| +|coffee table|1|2004/05/08 09:01|2004/05/09 09:01| +|cup|21|2004/05/08 09:01|2004/05/09 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplatePartialFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplatePartialFails/properties.xml new file mode 100644 index 0000000000..318046697e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplatePartialFails/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1127949732645 + 2355995513846777375 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplateSimple/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplateSimple/content.txt new file mode 100644 index 0000000000..06f81bbbe0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplateSimple/content.txt @@ -0,0 +1,23 @@ + * Setup template +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|1|''people''| + + * Begin transaction for client +|''begin transaction for client''|Joanna|''staff''|Bill| +|'''check'''|''fill book template''|coffee break|''for''|20|''people on''|2004/05/08 09:01|''for''|2 hours|28.00| +|''pay with cash $''|28.00| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|1|2004/05/08 09:01|2004/05/08 11:01| +|hot water dispenser|1|2004/05/08 09:01|2004/05/08 11:01| +|coffee table|1|2004/05/08 09:01|2004/05/08 11:01| +|cup|20|2004/05/08 09:01|2004/05/08 11:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplateSimple/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplateSimple/properties.xml new file mode 100644 index 0000000000..78651283ce --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/BookingTemplateSimple/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1127949119213 + -7107344577837088101 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/SetUp/content.txt new file mode 100644 index 0000000000..1e8c080789 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/SetUp/content.txt @@ -0,0 +1,20 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|20|1.50|8.20|60.00|0.00| +|hot water dispenser|22|1.50|8.00|50.00|0.00| +|coffee table|10|10.00|50.00|200.00|0.00| +|cup|500|0.05|0.45|2.00|0.00| +|yardie glass|20|0.20|1.00|5.00|0.00| +|balloon|100|0.10|1.20|6.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/SetUp/properties.xml new file mode 100644 index 0000000000..21d7d3fb1d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1127943733955 + -178125153998253466 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/content.txt new file mode 100644 index 0000000000..1e50cf4029 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/content.txt @@ -0,0 +1,4 @@ +^SetUp + +^BookingTemplateSimple +^BookingTemplatePartialFails \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/properties.xml new file mode 100644 index 0000000000..925d1eeefe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/BookingTemplates/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1127949474002 + 6074905962354427033 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransaction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransaction/content.txt new file mode 100644 index 0000000000..344ba0d0c9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransaction/content.txt @@ -0,0 +1,9 @@ +!3 Check that we can start a transaction, hire something, and then cancel the transaction without making payment +|''begin transaction for client''| Joanna |''staff''| Bill | +|'''check'''|''rent''| 5 || coffee pot |''for''|5 hours|37.50| +|''cancel transaction''| + + * Check the client's hires in progress: +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransaction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransaction/properties.xml new file mode 100644 index 0000000000..d61aaacda0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransaction/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1124317127596 + -6155904171351038256 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransactionAfterPaid/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransactionAfterPaid/content.txt new file mode 100644 index 0000000000..c71bbd8948 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransactionAfterPaid/content.txt @@ -0,0 +1,14 @@ +!3 Check that we can start a transaction, hire something, and then cancel the transaction without making payment + + * Can't cancel until any paid money has been refunded +|''begin transaction for client''| Joanna |''staff''| Bill | +|'''check'''|''rent''| 5 || coffee pot |''for''|5 hours|37.50| +|''pay with cash $''|37.50 | +|not|''cancel transaction''| +|''refund cash $''|37.50 | +|''cancel transaction''| + + + * Check the client's hires in progress: +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransactionAfterPaid/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransactionAfterPaid/properties.xml new file mode 100644 index 0000000000..5641d94b98 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/TestCancelTransactionAfterPaid/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1124319605935 + -9019472426929648810 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/content.txt new file mode 100644 index 0000000000..cef1ad6dca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/content.txt @@ -0,0 +1,2 @@ +^TestCancelTransaction +^TestCancelTransactionAfterPaid diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/properties.xml new file mode 100644 index 0000000000..61c6e773f7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CannotPay/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1124315120267 + 2537977706190668004 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestDamagedItems/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestDamagedItems/content.txt new file mode 100644 index 0000000000..4b95e3d4f7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestDamagedItems/content.txt @@ -0,0 +1,15 @@ +|''given rentals''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/05 09:01|2004/05/06 09:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|100||cup|''cost to fix''|1.00| +|''refund cash $''|9.00| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''| + +|''rental item subset''| +|''name''|''free count''| +|cup|500| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestDamagedItems/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestDamagedItems/properties.xml new file mode 100644 index 0000000000..d6a9867114 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestDamagedItems/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114450 + + + + + + + + 1146959090327 + 5113135753034407554 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestPartialReturn/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestPartialReturn/content.txt new file mode 100644 index 0000000000..591877207a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestPartialReturn/content.txt @@ -0,0 +1,16 @@ +|''given rentals''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/05 09:01|2004/05/06 09:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|50||cup| +|''refund cash $''|5.00| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''|''count''| +|cup|50| + +|''rental item subset''| +|''name''|''free count''| +|cup|450| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestPartialReturn/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestPartialReturn/properties.xml new file mode 100644 index 0000000000..5310ef30b5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestPartialReturn/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114438 + + + + + + + + 1146959078771 + -8330863985344664070 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestRentalWithDeposit/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestRentalWithDeposit/content.txt new file mode 100644 index 0000000000..1cde9431f9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestRentalWithDeposit/content.txt @@ -0,0 +1,15 @@ +!3 ''Rental with deposit'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|10||cup|''for''|3 hours| +|''pay with cash $''|2.50| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|10|2004/05/06 09:01|2004/05/06 12:01| + +|''rental item subset''| +|''name''|''free count''| +|cup|490| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestRentalWithDeposit/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestRentalWithDeposit/properties.xml new file mode 100644 index 0000000000..801cf88dba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestRentalWithDeposit/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114420 + + + + + + + + 1146959060064 + -5067304817102778374 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestReturnWithDeposit/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestReturnWithDeposit/content.txt new file mode 100644 index 0000000000..33ebb8220f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestReturnWithDeposit/content.txt @@ -0,0 +1,15 @@ +|''given rentals''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/05 09:01|2004/05/06 09:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|100||cup| +|''refund cash $''|10.00| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''| + +|''rental item subset''| +|''name''|''free count''| +|cup|500| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestReturnWithDeposit/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestReturnWithDeposit/properties.xml new file mode 100644 index 0000000000..8df0713d7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/TestReturnWithDeposit/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114429 + + + + + + + + 1146959069377 + 3931342581956169131 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/content.txt new file mode 100644 index 0000000000..f4588702db --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/content.txt @@ -0,0 +1,4 @@ +^TestRentalWithDeposit +^TestReturnWithDeposit +^TestPartialReturn +^TestDamagedItems diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/properties.xml new file mode 100644 index 0000000000..25e60037df --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashDeposits/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085049 + + + + + + + + 1123055345296 + -4112351788427093412 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/SetUp/content.txt new file mode 100644 index 0000000000..66187be5a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/SetUp/content.txt @@ -0,0 +1,17 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/SetUp/properties.xml new file mode 100644 index 0000000000..5fbe5e03d7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201807 + + + + + + + 1124056025122 + -7221692038117924883 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailable/content.txt new file mode 100644 index 0000000000..0f982cfc99 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailable/content.txt @@ -0,0 +1,12 @@ +!3 ''Rental of coffee dispensers for 3 days:'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''not'''|''rent''|100||coffee dispenser|''for''|3 days| +|''complete transaction''| + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailable/properties.xml new file mode 100644 index 0000000000..c85c306c4d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114557 + + + + + + + + 1146959157924 + -8556730570932080861 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailableNow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailableNow/content.txt new file mode 100644 index 0000000000..1f36fc2682 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailableNow/content.txt @@ -0,0 +1,15 @@ +!3 ''Previous rentals within a transaction limit what can be rented.'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|5||coffee dispenser|''for''|1 week| +|'''not'''|''rent''|6||coffee dispenser|''for''|1 week| +|''pay with cash $''|287.00| +|''complete transaction''| + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''| +|coffee dispenser|5| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|5| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailableNow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailableNow/properties.xml new file mode 100644 index 0000000000..a11deca1bb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestRentalsUnavailableNow/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114605 + + + + + + + + 1146959165625 + 4858213235084918395 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRental/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRental/content.txt new file mode 100644 index 0000000000..e81c38c4e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRental/content.txt @@ -0,0 +1,15 @@ +!3 ''Rental of coffee dispensers for 3 days:'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''pay with cash $''|49.20| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/06 09:01|2004/05/09 09:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|8| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRental/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRental/properties.xml new file mode 100644 index 0000000000..6354e2c9c8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRental/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101114132 + + + + + + + + 1225492892078 + 5943658845762199343 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRentalWithDeposit/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRentalWithDeposit/content.txt new file mode 100644 index 0000000000..1c6519192a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRentalWithDeposit/content.txt @@ -0,0 +1,14 @@ +!3 ''Rental of cups for 2 weeks:'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|100||cup|''for''|2 weeks| +|''pay with cash $''|410.00| +|''complete transaction''| + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|cup|100|2004/05/06 09:01|2004/05/20 09:01| + +|''rental item subset''| +|''name''|''free count''| +|cup|400| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRentalWithDeposit/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRentalWithDeposit/properties.xml new file mode 100644 index 0000000000..cf3c124d8f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestSingleRentalWithDeposit/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114550 + + + + + + + + 1146959150323 + -4067380434229506882 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentals/content.txt new file mode 100644 index 0000000000..4e6b0fbf54 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentals/content.txt @@ -0,0 +1,18 @@ +!3 ''Two rentals in the same transaction'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''rent''|1||hot water dispenser|''for''|3 days| +|''pay with cash $''|73.20| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/06 09:01|2004/05/09 09:01| +|hot water dispenser|1|2004/05/06 09:01|2004/05/09 09:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|8| +|hot water dispenser|11| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentals/properties.xml new file mode 100644 index 0000000000..733772b537 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentals/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114536 + + + + + + + + 1146959136053 + -1508570300563838289 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentalsInSeparateTransactions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentalsInSeparateTransactions/content.txt new file mode 100644 index 0000000000..539c30dd96 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentalsInSeparateTransactions/content.txt @@ -0,0 +1,22 @@ +!3 ''Two rentals in separate transactions'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''pay with cash $''|49.20| +|''complete transaction''| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|1||hot water dispenser|''for''|3 days| +|''pay with cash $''|24.00| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/06 09:01|2004/05/09 09:01| +|hot water dispenser|1|2004/05/06 09:01|2004/05/09 09:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|8| +|hot water dispenser|11| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentalsInSeparateTransactions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentalsInSeparateTransactions/properties.xml new file mode 100644 index 0000000000..7b58e7fbdd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/TestTwoRentalsInSeparateTransactions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114542 + + + + + + + + 1146959142883 + -6156620931036921081 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/content.txt new file mode 100644 index 0000000000..6fd3dc9738 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/content.txt @@ -0,0 +1,10 @@ +^TestSingleRental +^TestTwoRentals +^TestTwoRentalsInSeparateTransactions + +^TestSingleRentalWithDeposit + +^TestRentalsUnavailable +^TestRentalsUnavailableNow + +^SetUp diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/properties.xml new file mode 100644 index 0000000000..4f1b152f5a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashRentals/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085048 + + + + + + + + 1124062304641 + -8118677779400427785 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/SetUp/content.txt new file mode 100644 index 0000000000..59b38fdd0d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/SetUp/content.txt @@ -0,0 +1,5 @@ +!include .FitLibrary.RentEz.SetUp +|''given rentals''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|5|2004/05/05 09:01|2004/05/06 09:01| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/SetUp/properties.xml new file mode 100644 index 0000000000..5690751b49 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081101143349 + + + + + + + 1225503229640 + -5645950100525943123 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestOneHourEarlyisNotRefunded/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestOneHourEarlyisNotRefunded/content.txt new file mode 100644 index 0000000000..1cd13b73fb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestOneHourEarlyisNotRefunded/content.txt @@ -0,0 +1,10 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|5||coffee dispenser| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''| + +|''rental item subset''| +|''name''|''free count''| +|cup|500| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestOneHourEarlyisNotRefunded/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestOneHourEarlyisNotRefunded/properties.xml new file mode 100644 index 0000000000..d75f2d623f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestOneHourEarlyisNotRefunded/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114724 + + + + + + + + 1146959244659 + -1496720857616493109 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestPartialReturn/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestPartialReturn/content.txt new file mode 100644 index 0000000000..2f7457574f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestPartialReturn/content.txt @@ -0,0 +1,11 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|2||coffee dispenser| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''|''count''| +|coffee dispenser|3| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|7| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestPartialReturn/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestPartialReturn/properties.xml new file mode 100644 index 0000000000..1058d9d22f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestPartialReturn/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114701 + + + + + + + + 1146959221105 + -9221478996276246706 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturn/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturn/content.txt new file mode 100644 index 0000000000..f3f06fe640 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturn/content.txt @@ -0,0 +1,10 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|5||coffee dispenser| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturn/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturn/properties.xml new file mode 100644 index 0000000000..d92e1997aa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturn/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114653 + + + + + + + + 1146959213965 + -9065343095590607708 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturnItemsDueSooner/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturnItemsDueSooner/content.txt new file mode 100644 index 0000000000..99e718f579 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturnItemsDueSooner/content.txt @@ -0,0 +1,13 @@ +|''time is now''|2004/05/05 12:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|5||coffee dispenser| +|''refund cash $''|18.50| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''|''count''|''end date''| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturnItemsDueSooner/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturnItemsDueSooner/properties.xml new file mode 100644 index 0000000000..385006f9ad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestReturnItemsDueSooner/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114739 + + + + + + + + 1146959259530 + -1367072707195129704 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestSeveralReturns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestSeveralReturns/content.txt new file mode 100644 index 0000000000..6d597b0a61 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestSeveralReturns/content.txt @@ -0,0 +1,14 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|3||coffee dispenser| +|''complete transaction''| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''return items''|2||coffee dispenser| +|''complete transaction''| + +|''rentals of client''|Joanna| +|''rental item''| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|10| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestSeveralReturns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestSeveralReturns/properties.xml new file mode 100644 index 0000000000..451a3c81d0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/TestSeveralReturns/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114716 + + + + + + + + 1146959236617 + 1605202279518521676 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/content.txt new file mode 100644 index 0000000000..53200ef115 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/content.txt @@ -0,0 +1,8 @@ +^TestReturn +^TestPartialReturn +^TestReturnItemsDueSooner +^TestSeveralReturns + +^TestOneHourEarlyisNotRefunded + +^SetUp diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/properties.xml new file mode 100644 index 0000000000..3c7592c098 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CashReturns/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085045 + + + + + + + + 1127703596141 + -2329114810920043864 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ChargeFairly/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ChargeFairly/content.txt new file mode 100644 index 0000000000..335577860c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ChargeFairly/content.txt @@ -0,0 +1,42 @@ +!3 Charge for a larger time period if it's better for the customer +''Eg, Charge for one week instead of 6 days if it's less.'' + +''We assume a single item rented here:'' + +|''calculate fair charges''| +|''$/hour''|''$/day''|''hours''|''days''||''cost in $''| +| 1.00 | 5.00 | 3 | 0 || 3.00 | +| 1.00 | 5.00 | 4 | 0 || 4.00 | +| 1.00 | 5.00 | 5 | 0 || 5.00 | +| 1.00 | 5.00 | 6 | 0 || 5.00 | +| 1.00 | 5.00 | 11 | 0 || 5.00 | +| 1.00 | 5.00 | 3 | 1 || 8.00 | +| 1.00 | 5.00 | 4 | 1 || 9.00 | +| 1.00 | 5.00 | 5 | 1 ||10.00 | +| 1.00 | 5.00 | 6 | 1 ||10.00 | +| 1.00 | 5.00 | 11 | 1 ||10.00 | +| 0.50 | 10.00 | 18 | 0 || 9.00| +| 0.50 | 10.00 | 18 | 1 || 19.00| +| 0.50 | 10.00 | 21 | 0 || 10.00| +| 0.50 | 10.00 | 4 | 2 || 22.00| +| 0.50 | 14.00 | 22 | 0 || 11.00| +| 0.50 | 14.00 | 0 | 4 || 48.00| + + + +|!-CalculateChargeFairly-!| +|''$/hour'' |''$/day'' |''hours''|''days''||''cost in $''| +| 1.00 | 2.00 | 1 | 0 || 1.00 | +| 1.00 | 2.00 | 3 | 0 || 2.00 | + +|!-CalculateChargeFairly-!| +|''$/hour''|''$/day'' |''$/week'' |''hours''|''days''|''weeks''||''cost in $''| +|0.10| 1.00 | 5.00 |0| 3 | 0 || 3.00 | +|0.10| 1.00 | 5.00 |0| 4 | 0 || 4.00 | +|0.10| 1.00 | 5.00 |0| 5 | 0 || 5.00 | +|0.10| 1.00 | 5.00 |0| 6 | 0 || 5.00 | +|0.10| 1.00 | 5.00 |0| 3 | 1 || 8.00 | +|0.10| 1.00 | 5.00 |0| 4 | 1 || 9.00 | +|0.10| 1.00 | 5.00 |0| 5 | 1 ||10.00 | +|0.10| 1.00 | 5.00 |0| 6 | 1 ||10.00 | +''Also need to use this fair charging approach when calculating how much extra to charge or what to refund, so both parties are treated fairly.'' \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ChargeFairly/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ChargeFairly/properties.xml new file mode 100644 index 0000000000..7246237aa0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ChargeFairly/properties.xml @@ -0,0 +1,16 @@ + + + + + 20081101113957 + + + + + + + + + 1225492797000 + 679667130437540364 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateClientConflict/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateClientConflict/content.txt new file mode 100644 index 0000000000..807a5b36c9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateClientConflict/content.txt @@ -0,0 +1,17 @@ + * Create an initial client Fred, and another client called Fred inside the same transaction + +|''begin admin transaction''| Bill | +|'''ensure'''|''create client''|Fred|''with phone number''|379 5055|''in city''|Auckland|''in zone''|South|''at address''|93 Carbine Rd| +|'''reject'''|''create client''|Fred|''with phone number''|912 3050|''in city''|Auckland|''in zone''|CBD|''at address''|72 Symonds St| +|''complete transaction''| + + * Try creating another client Fred in a different transaction + +|''begin admin transaction''| Bill | +|'''reject'''|''create client''|Fred|''with phone number''|864 9078|''in city''|Auckland|''in zone''|East|''at address''|22 Howick Rd| +|''complete transaction''| + + +|''client list''| +|''name''|''phone''|''city''|''zone''|''address''| +|Fred|379 5055|Auckland|South|93 Carbine Rd| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateClientConflict/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateClientConflict/properties.xml new file mode 100644 index 0000000000..748a56b29a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateClientConflict/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1127342832728 + 1273954295580246487 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateNewClients/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateNewClients/content.txt new file mode 100644 index 0000000000..6c3056e49d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateNewClients/content.txt @@ -0,0 +1,10 @@ +A staff member needs to be able to add a new client into the system. + +|''begin admin transaction''| Bill | +|''create client''|Fred|''with phone number''|379 5055|''with email''|bill@corktown.com|''in city''|Auckland|''in zone''|South|''at address''|93 Carbine Rd| +|''complete transaction''| + + +|''client list''| +|''name''|''email''|''phone''|''city''|''zone''|''address''| +|Fred|bill@corktown.com|379 5055|Auckland|South|93 Carbine Rd| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateNewClients/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateNewClients/properties.xml new file mode 100644 index 0000000000..28d194e59e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/CreateNewClients/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1127345323440 + 3218035466412514885 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClient/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClient/content.txt new file mode 100644 index 0000000000..ecdc4fa4da --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClient/content.txt @@ -0,0 +1,29 @@ +Start by creating our clients. + +|''setup''| +|''client name''|''phone''|''city''|''zone''|''delivery address''| +|Joanna|373 7599|Auckland|CBD|10 Princes St| + + +|''begin admin transaction''| Bill | +|''create client''|Fred|''with phone number''|379 5055|''in city''|Auckland|''in zone''|South|''at address''|93 Carbine Rd| +|''complete transaction''| + +We should have two clients in our client list. + +|''client list''| +|''name''|''phone''|''city''|''zone''|''address''| +|Joanna|373 7599|Auckland|CBD|10 Princes St| +|Fred|379 5055|Auckland|South|93 Carbine Rd| + +Now delete a client. + +|''begin admin transaction''| Bill | +|''delete client''|Joanna| +|''complete transaction''| + +Should now only have one client. + +|''client list''| +|''name''|''phone''|''city''|''zone''|''address''| +|Fred|379 5055|Auckland|South|93 Carbine Rd| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClient/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClient/properties.xml new file mode 100644 index 0000000000..6541f58139 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClient/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1127086233429 + -8998238012689904208 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClientWithBookings/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClientWithBookings/content.txt new file mode 100644 index 0000000000..c9159e0609 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClientWithBookings/content.txt @@ -0,0 +1,52 @@ +This tests deleting a client that has bookings. Deleting a client that has current bookings should fail, we should have to cancel any bookings first. + + * Let's set up our items first. + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| +|coffee pot|20|1.50|12.00|60.00|0.00| +| coffee urn | 20| 1.50| 12.00|60.00| 50.00| +| table | 20 | 6.00 | 48.00| 200.00| 80.00| + + + +|''begin admin transaction''| Bill | +|''create client''|Fred|''with phone number''|379 5055|''in city''|Auckland|''in zone''|South|''at address''|93 Carbine Rd| +|''complete transaction''| + + +|''begin transaction for client''| Fred |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''pay with cash $''|6.00| +|''complete transaction''| + + + ---- * Actions: +|''time is now''|2004/05/08 09:02| + + * Now delete our client. This should fail because we have outstanding bookings. + +|''begin admin transaction''| Bill | +|'''reject'''|''delete client''|Fred| +|''complete transaction''| + + * Now we can cancel the booking + + +|''begin transaction for client''| Fred |''staff''| Bill| +|''cancel booking of''|2||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 hours| +|''refund cash $''|6.00| +|''complete transaction''| + + * Now we should be able to delete our client. + +|''begin admin transaction''| Bill | +|'''ensure'''|''delete client''|Fred| +|''complete transaction''| + + +|''client list''| +|''name''|''phone''|''city''|''zone''|''address''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClientWithBookings/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClientWithBookings/properties.xml new file mode 100644 index 0000000000..7365a71662 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/DeleteClientWithBookings/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081124201806 + + + + + + + + 1127684341212 + -6328138082943184508 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ModifyClientDetails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ModifyClientDetails/content.txt new file mode 100644 index 0000000000..9d42e2b7d4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ModifyClientDetails/content.txt @@ -0,0 +1,14 @@ +A staff member needs to be able to add a new client into the system. + +|''begin admin transaction''| Bill | +|''create client''|Fred|''with phone number''|379 5055|''in city''|Auckland|''in zone''|South|''at address''|93 Carbine Rd| +|''complete transaction''| + + +|''begin admin transaction''| Bill | +|''modify client''|Fred|''set phone number''|912 5055|''in city''|Auckland|''in zone''|South|''at address''|93 Carbine Rd| +|''complete transaction''| + +|''client list''| +|''name''|''phone''|''city''|''zone''|''address''| +|Fred|912 5055|Auckland|South|93 Carbine Rd| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ModifyClientDetails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ModifyClientDetails/properties.xml new file mode 100644 index 0000000000..87548c90f8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ModifyClientDetails/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1127086080760 + 5129933632005533680 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/SetUp/content.txt new file mode 100644 index 0000000000..6c7aabd361 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/SetUp/content.txt @@ -0,0 +1,8 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2005/05/06 09:01| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/SetUp/properties.xml new file mode 100644 index 0000000000..607b4de393 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085047 + + + + + + + 1127085491749 + -2277410545980177471 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ValidateEmails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ValidateEmails/content.txt new file mode 100644 index 0000000000..cdf5828838 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ValidateEmails/content.txt @@ -0,0 +1,22 @@ +Checking whether the system can pick up invalid email formats. + +Take a look at the [[java.util.regex][http://www.cs.auckland.ac.nz/references/java/java1.5/api/java/util/regex/package-summary.html]] package for information on how to use regular expressions. + + * Here are some valid emails. + +|''Validate Email''| +|''Email''||''Valid''| +|john@yahoo.com||true| +|john.smith@yahoo.com||true| +|apple_craig@hotmail.com||true| +|nikky@auckland.ac.nz||true| + + * Here are some invalid emails + +|''Validate Email''| +|''Email''||''Valid''| +|john||false| +|craig@@mail.com||false| +|http://www.google.com||false| +|rick@fit..org||false| +|rick@fit||false| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ValidateEmails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ValidateEmails/properties.xml new file mode 100644 index 0000000000..d3969e3aef --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/ValidateEmails/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1127684788592 + 7440658464469990167 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/content.txt new file mode 100644 index 0000000000..d23d0e270e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/content.txt @@ -0,0 +1,8 @@ +^SetUp + +^CreateNewClients +^CreateClientConflict +^ModifyClientDetails +^DeleteClient +^DeleteClientWithBookings +^ValidateEmails \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/properties.xml new file mode 100644 index 0000000000..7d9ec78313 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ClientManagement/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1127345596018 + -569278542100962413 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/SetUp/content.txt new file mode 100644 index 0000000000..a734129245 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/SetUp/content.txt @@ -0,0 +1,23 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|1|3.00|20.00|80.00|0.00| +|Bike|1|30.00|200.00|800.00|0.00| +|Truck|1|300.00|2000.00|8000.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| +|Bob|352 2353| +|Joe|334 2433| +|Bill|555 9876| +|John|554 2362| + +|''setup''| +|''staff name''|''phone''|''Commission %''| +|Bill|555 9876|0| +|John|554 2362|10| +|Pual|232 2356|20.01| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/SetUp/properties.xml new file mode 100644 index 0000000000..48225de0b0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085039 + + + + + + + 1124058791032 + -4321244618566510886 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromIncompleteTransaction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromIncompleteTransaction/content.txt new file mode 100644 index 0000000000..c2a0584f21 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromIncompleteTransaction/content.txt @@ -0,0 +1,12 @@ +|''begin transaction for client''| Bob |''staff''| Pual | +|''rent''|1||Tricycle|''for''|1 day| +|''pay with cash $''|20.00| + +|''total commission''| +|''staff''|''total''| +|Bill|0.00| +|Pual|0.00| +|John|0.00| + +|''resume transaction for client''| Bob| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromIncompleteTransaction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromIncompleteTransaction/properties.xml new file mode 100644 index 0000000000..2e9c2af2ef --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromIncompleteTransaction/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085039 + + + + + + + + 1123459121515 + 7373247470576549515 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransaction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransaction/content.txt new file mode 100644 index 0000000000..ad028c6f4a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransaction/content.txt @@ -0,0 +1,11 @@ +|''begin transaction for client''| Bob |''staff''| John | +|''rent''|1||Truck|''for''|1 day| +|''pay with cash $''|2000.00| +|''complete transaction''| + +|''total commission''| +|''staff''|''total''| +|Bill|0.00| +|Pual|0.00| +|John|200.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransaction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransaction/properties.xml new file mode 100644 index 0000000000..74dbc31b74 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransaction/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085039 + + + + + + + + 1123458826965 + -5512725327204996867 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransactionWithRounding/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransactionWithRounding/content.txt new file mode 100644 index 0000000000..c43688cf11 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransactionWithRounding/content.txt @@ -0,0 +1,11 @@ +|''begin transaction for client''| Bob |''staff''| Pual | +|''rent''|1||Tricycle|''for''|1 day| +|''pay with cash $''|20.00| +|''complete transaction''| + +|''total commission''| +|''staff''|''total''| +|Bill|0.00| +|Pual|4.00| +|John|0.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransactionWithRounding/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransactionWithRounding/properties.xml new file mode 100644 index 0000000000..6dc0bc59a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestCommissionFromTransactionWithRounding/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085039 + + + + + + + + 1123459080465 + -3346987739638143485 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionFromTransaction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionFromTransaction/content.txt new file mode 100644 index 0000000000..44e9720243 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionFromTransaction/content.txt @@ -0,0 +1,11 @@ +|''begin transaction for client''| Bob |''staff''| Bill| +|''rent''|1||Truck|''for''|1 day| +|''pay with cash $''|2000.00| +|''complete transaction''| + +|''total commission''| +|''staff''|''total''| +|Bill|0.00| +|Pual|0.00| +|John|0.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionFromTransaction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionFromTransaction/properties.xml new file mode 100644 index 0000000000..21a7515bf2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionFromTransaction/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085039 + + + + + + + + 1123458792685 + 6470109607477625546 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionToStaffForHireByStaff/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionToStaffForHireByStaff/content.txt new file mode 100644 index 0000000000..37076ae3c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionToStaffForHireByStaff/content.txt @@ -0,0 +1,15 @@ +|''begin transaction for client''| John |''staff''| Pual | +|''rent''|1||Tricycle|''for''|1 day| +|''pay with cash $''|20.00| +|''complete transaction''| + +|''begin transaction for client''| Bill |''staff''| Pual | +|''rent''|1||Bike|''for''|1 day| +|''pay with cash $''|200.00| +|''complete transaction''| + +|''total commission''| +|''staff''|''total''| +|Bill|0.00| +|Pual|0.00| +|John|0.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionToStaffForHireByStaff/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionToStaffForHireByStaff/properties.xml new file mode 100644 index 0000000000..e1be50dccb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionToStaffForHireByStaff/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085039 + + + + + + + + 1124058693101 + -5733272877473134370 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionYet/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionYet/content.txt new file mode 100644 index 0000000000..53c3548016 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionYet/content.txt @@ -0,0 +1,6 @@ +|''total commission''| +|''staff''|''total''| +|Bill|0.00| +|Pual|0.00| +|John|0.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionYet/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionYet/properties.xml new file mode 100644 index 0000000000..3f3bb2e70e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/TestNoCommissionYet/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085039 + + + + + + + + 1123458528425 + -4649596172648887448 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/content.txt new file mode 100644 index 0000000000..807c70623c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/content.txt @@ -0,0 +1,7 @@ +^SetUp +^TestNoCommissionYet +^TestNoCommissionFromTransaction +^TestCommissionFromTransaction +^TestCommissionFromTransactionWithRounding +^TestCommissionFromIncompleteTransaction +^TestNoCommissionToStaffForHireByStaff \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/properties.xml new file mode 100644 index 0000000000..f2c73d2c65 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CommissionForStaffMembers/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085039 + + + + + + + + 1123715140247 + -4086798026841168403 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/BookingAndSalesTemplate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/BookingAndSalesTemplate/content.txt new file mode 100644 index 0000000000..75ffcf462c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/BookingAndSalesTemplate/content.txt @@ -0,0 +1,37 @@ +!3 Set up template +* A template can contain rental items as well as sale goods +|''create template''|21st party| +|''one''|yardie glass|''for''|booking or renting|''for''|1000|''people''| +|''one''|balloon|''for''|booking or renting|''for''|10|''people''| +|''one''|cup|''for''|booking or renting|''for''|1|''people''| +|''one''|coke|''for''|sale|''for''|5|''people''| +|''one''|cake|''for''|sale|''for''|10|''people''| +|''one''|chips|''for''|sale|''for''|5|''people''| +---- +!3 Transaction + * Begin transaction for client - she'll pickup these items. +|''begin transaction for client''|Joanna|''staff''|Bill| +|''fill book template''|21st party|''for''|100|''people on''|2004/06/06 09:02|''for''|1 day| +|''pay with cash $''|518.00| +|''complete transaction''| + +---- +!3 Checking +* Checking sales sales goods left + +|''salesGoodsSubset''| +| name| count | +|cake|40| +|coke|30| +|chips|30| + +* No rental items yet for Joanna +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| + +* Check Joanna's booking list +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|yardie glass|1|2004/06/06 09:02|2004/06/07 09:02| +|balloon|10|2004/06/06 09:02|2004/06/07 09:02| +|cup|100|2004/06/06 09:02|2004/06/07 09:02| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/BookingAndSalesTemplate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/BookingAndSalesTemplate/properties.xml new file mode 100644 index 0000000000..9e5e8146af --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/BookingAndSalesTemplate/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1128549238833 + 1688296192676788984 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/SetUp/content.txt new file mode 100644 index 0000000000..aa156c2969 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/SetUp/content.txt @@ -0,0 +1,27 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|20|1.50|8.20|60.00|0.00| +|hot water dispenser|22|1.50|8.00|50.00|0.00| +|coffee table|10|10.00|50.00|200.00|0.00| +|cup|500|0.05|0.45|2.00|0.00| +|yardie glass|20|0.20|1.00|5.00|0.00| +|balloon|100|0.10|1.20|6.00|0.00| + +|''setup''| +|''sales item name''|''count''|''selling price''| +|coke|50|3.00| +|chips|50|5.00| +|cake|50|30.00| + +|''setup''| +|''client name''|''phone''|''city''|''zone''|''delivery address''| +|Joanna|373 7599|Auckland|CBD|10 Princes St| +|Xiaosong|555 1225|Auckland|CBD|12 Princes St| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/SetUp/properties.xml new file mode 100644 index 0000000000..84be2ef9fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1128290844793 + 4815817110007217121 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/UsingTwoTemplates/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/UsingTwoTemplates/content.txt new file mode 100644 index 0000000000..f8f90ed699 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/UsingTwoTemplates/content.txt @@ -0,0 +1,42 @@ +!3 Setup template +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|booking or renting|''for''|20|''people''| +|''one''|hot water dispenser|''for''|booking or renting|''for''|20|''people''| +|''one''|coffee table|''for''|booking or renting|''for''|40|''people''| +|''one''|cup|''for''|booking or renting|''for''|1|''people''| + +|''create template''|21st party| +|''one''|yardie glass|''for''|booking or renting|''for''|1000|''people''| +|''one''|balloon|''for''|booking or renting|''for''|10|''people''| +|''one''|cup|''for''|booking or renting|''for''|1|''people''| +|''one''|coke|''for''|sale|''for''|5|''people''| +|''one''|cake|''for''|sale|''for''|10|''people''| +|''one''|chips|''for''|sale|''for''|5|''people''| + +!3 Transaction + * Begin transaction for client - she'll pickup these items. +|''begin transaction for client''|Joanna|''staff''|Bill| +|''fill rent template''|coffee break|''for''|20|''people for''|1 day| +|''fill book template''|21st party|''for''|100|''people on''|2004/05/06 09:02|''for''|1 day| +|''pay with cash $''|593.20| +|''complete transaction''| + +!3 Checking +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|1|2004/05/06 09:01|2004/05/07 09:01| +|hot water dispenser|1|2004/05/06 09:01|2004/05/07 09:01| +|coffee table|1|2004/05/06 09:01|2004/05/07 09:01| +|cup|20|2004/05/06 09:01|2004/05/07 09:01| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|yardie glass|1|2004/05/06 09:02|2004/05/07 09:02| +|balloon|10|2004/05/06 09:02|2004/05/07 09:02| +|cup|100|2004/05/06 09:02|2004/05/07 09:02| + +|''salesGoodsSubset''| +| name| count | +|cake|40| +|coke|30| +|chips|30| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/UsingTwoTemplates/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/UsingTwoTemplates/properties.xml new file mode 100644 index 0000000000..b4d8014f2e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/UsingTwoTemplates/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1128549295785 + 3762771146061289988 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/content.txt new file mode 100644 index 0000000000..38d3d30c1d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/content.txt @@ -0,0 +1,4 @@ +^SetUp + +^BookingAndSalesTemplate +^UsingTwoTemplates \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/properties.xml new file mode 100644 index 0000000000..5a64a4dcbd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CompositeTemplate/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1127951467314 + -4582243428224894424 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/ImportantInformation/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/ImportantInformation/content.txt new file mode 100644 index 0000000000..18a3d737c8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/ImportantInformation/content.txt @@ -0,0 +1,77 @@ +The methods to validate credit cards can be found at http://www.beachnet.com/~hstiles/cardtype.html + +The numbers have been checked through http://javascript.internet.com/forms/val-credit-card.html - look at their code for more explanation. + +I've duplicated the document below, however the original is simpler for formatting reasons. + + + +This document outlines procedures and algorithms for Verifying the accuracy and validity of credit card numbers. Most credit card numbers are encoded with a "Check Digit". A check digit is a digit added to a number (either at the end or the beginning) that validates the authenticity of the number. A simple algorithm is applied to the other digits of the number which yields the check digit. By running the algorithm, and comparing the check digit you get from the algorithm with the check digit encoded with the credit card number, you can verify that you have correctly read all of the digits and that they make a valid combination. + +Possible uses for this information: + + * When a user has keyed in a credit card number (or scanned it) and you want to validate it before sending it our for debit authorization. + * When issuing cards, say an affinity card, you might want to add a check digit using the MOD 10 method. + +1.Prefix, Length, and Check Digit Criteria + +Here is a table outlining the major credit cards that you might want to validate. + +|CARD TYPE|Prefix|Length|Check digit algorithm| +|MASTERCARD|51-55|16|mod 10| +|VISA|4|13, 16|mod 10| +|AMEX|34, 37|15|mod 10| +|Diners Club/Carte Blanche|300-305, 36, 38|14|mod 10| +|Discover|6011|16|mod 10| +|enRoute|2014, 2149|15|any| +|JCB|3|16|mod 10| +|JCB|2131, 1800|15|mod 10| + + +2. LUHN Formula (Mod 10) for Validation of Primary Account Number + +The following steps are required to validate the primary account number: + +Step 1: Double the value of alternate digits of the primary account number beginning with the second digit from the right (the first right-hand digit is the check digit.) + +Step 2: Add the individual digits comprising the products obtained in Step 1 to each of the unaffected digits in the original number. + +Step 3: The total obtained in Step 2 must be a number ending in zero (30, 40, 50, etc.) for the account number to be validated. + +For example, to validate the primary account number 49927398716: + +Step 1: +{{{ + 4 9 9 2 7 3 9 8 7 1 6 + x2 x2 x2 x2 x2 + ------------------------------ + 18 4 6 16 2 +}}} + + + + +Step 2: 4 +(1+8)+ 9 + (4) + 7 + (6) + 9 +(1+6) + 7 + (2) + 6 + +Step 3: Sum = 70 : Card number is validated + +Note: Card is valid because the 70/10 yields no remainder. + +The great folks at ICVERIFY are the original source of this data, I only formatted it in HTML. + +If you are in the market, I wrote a set of FoxPro modules for Windows/Dos that interface nicely with ICVERIFY in a multi-user LAN setup. You just set up ICVERIFY on a single station, and all stations on the LAN can authorize credit cards with a single FOXBASE function call. Of course, you have to license ICVERIFY by the node, but it is very reasonable. I also wrote a couple of simple functions to perform pre-authorization, card screening, etc. + +Here is a Microsoft Excel worksheet that will validate a number for you (useful for understanding the algorithm, it is in a .ZIP compressed format) + +Horace Vallas made a NeoWebScript (Tcl really) procedure that implements it. +Check it out at https://enterprise.neosoft.com/secureforms/hav/ + +Because I get at least a letter a week regarding this routine, here are some additional helpful notes: + +Make sure that you: + + 1. have started with the rightmost digit (including the check digit) (figure odd and even based upon the rightmost digit being odd, regardless of the length of the Credit Card.) ALWAYS work right to left. + 2. the check digit counts as digit #1 (assuming that the rightmost digit is the check digit) and is not doubled + 3. double every second digit (starting with digit # 2 from the right) + 4. remember that when you double a number over 4, (6 for example) you don't add the result to your total, but rather the sum of the digits of the result (in the above example 6*2=12 so you would add 1+2 to your total (not 12). + 5. always include the Visa or M/C/ prefix. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/ImportantInformation/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/ImportantInformation/properties.xml new file mode 100644 index 0000000000..d2574c4a40 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/ImportantInformation/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1127945057993 + 7875612958499913286 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/SetUp/content.txt new file mode 100644 index 0000000000..a06be8be90 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/SetUp/content.txt @@ -0,0 +1,23 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|1|3.00|20.00|80.00|0.00| +|Bike|1|30.00|200.00|800.00|0.00| +|Truck|1|300.00|2000.00|8000.00|0.00| +|coffee dispenser|20|1.50|8.20|60.00|0.00| +|hot water dispenser|20|1.50|8.00|50.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| +|Bob|352 2353| +|Joe|334 2433| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| +|John|554 2362| +|Pual|232 2356| + +|''time is now''| 2005/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/SetUp/properties.xml new file mode 100644 index 0000000000..2a95684439 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085045 + + + + + + + 1127686636741 + 6655470202917382396 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardBonusPoints/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardBonusPoints/content.txt new file mode 100644 index 0000000000..7fc26f5033 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardBonusPoints/content.txt @@ -0,0 +1,10 @@ +!3 ''10% Rentez Dollar (point) is awarded'' + * ''More Rentez Dollar (point) is awarded for transaction more than $500.00'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|8||coffee dispenser|''for''|5 days| +|''rent''|8||hot water dispenser|''for''|5 days| +|'''ensure'''|''pay with credit card $''|648.00|''card type''|Visa|''expires''|10/05|''number''|4485891284549100| +|''complete transaction''| + + * ''The point balance for a client changes'' +|'''check'''|point balance for client|Joanna|34.80| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardBonusPoints/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardBonusPoints/properties.xml new file mode 100644 index 0000000000..221083d99c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardBonusPoints/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085045 + + + + + + + + 1127346190348 + 8727211038214331837 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardValidation/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardValidation/content.txt new file mode 100644 index 0000000000..776fe12294 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardValidation/content.txt @@ -0,0 +1,107 @@ +This tests your credit card validation routines. +View the ImportantInformation page for more details on implementing this. + + * Note that credit card expiry dates are in the format (month / year) + +!3 Valid cards +# +|''Valid Credit Cards''| +|''Credit Card No''|''Card Type''|''Expires''| +|5169961933224494|Mastercard|04/12| +|4485891284549100|Visa|01/12| +|378238305872855|American Express|12/11| +|30328219479275|Diners Club|11/11| +# +!3 Incorrect card types +# +|''Invalid Credit Cards''| +|''Credit Card No''|''Card Type''|''Expires''| +|5420218419129712|American Express|12/12| +|4532236754255544|Visar|12/11| +# +!3 Expired +|''Invalid Credit Cards''| +|''Credit Card No''|''Card Type''|''Expires''| +|4024007154824048|Visa|02/10| +# +!3 Invalid card numbers +# +|''Invalid Credit Cards''| +|''Credit Card No''|''Card Type''|''Expires''| +|5169961983244414|Mastercard|02/13| +|xxxxxxxxxxxxxxxx|Visa|02/12| + + + + +|''Validate Credit Card''| +|''Credit Card No''|''Card Type''|''Expires''|''Valid Number''| +|5169961933224494|Mastercard|12/05||true| +|5379884413318972|Mastercard|12/05||true| +|5243914958172676|Mastercard|12/05||true| +|5139937872916099|Mastercard|12/05||true| +|5500400191544291|Mastercard|12/05||true| +|5390600729532980|Mastercard|12/05||true| +|5188239259404827|Mastercard|12/05||true| +|5551559755184006|Mastercard|12/05||true| +|4485891284549100|Visa|12/05||true| +|4024007135429073|Visa|12/05||true| +|4052577022845271|Visa|12/05||true| +|4024007125032481|Visa|12/05||true| +|4916628240163678|Visa|12/05||true| +|4916559188232060|Visa|12/05||true| +|4916061680920094|Visa|12/05||true| +|4556422493178|Visa|12/05||true| +|4556050997607|Visa|12/05||true| +|4367400659073|Visa|12/05||true| +|4929879540090|Visa|12/05||true| +|4024007190677|Visa|12/05||true| +|378238305872855|American Express|12/05||true| +|372730553483969|American Express|12/05||true| +|342572497211925|American Express|12/05||true| +|379397670726069|American Express|12/05||true| +|30328219479275|Diners Club|12/05||true| +|30181250802842|Diners Club|12/05||true| +|6011404643081688|Discover|12/05||true| + + +!3 The following are all valid numbers, but should return false due to incorrect card types. + +|''Validate Credit Card''| +|''Credit Card No''|''Card Type''|''Expires''||''Valid Number''| +|5420218419129712|American Express|12/05||false| +|4532236754255544|Visar|12/05||false| +|4532686278150474|Mastercard|12/05||false| +|348148246050767|American Express|03/05||false| + + +!3 Test expiry date validation. + +|''Validate Credit Card''| +|''Credit Card No''|''Card Type''|''Expires''||''Valid Number''| +|4024007154824048|Visa|02/05||false| +|4024007154824048|Visa|04/05||false| +|4024007154824048|Visa|05/04||false| +|4024007154824048|Visa|05/05||true| +|4024007154824048|Visa|06/04||false| +|4024007154824048|Visa|04/06||true| + +!3 Here are some invalid card numbers... + +|''Validate Credit Card''| +|''Credit Card No''|''Card Type''|''Expires''||''Valid Number''| +|5169961983244414|Mastercard|02/06||false| +|5972884413418972|Mastercard|02/06||false| +|5643914958172676|Mastercard|02/06||false| +|4085891484739100|Visa|02/06||false| +|xxxxxxxxxxxxxxxx|Visa|02/06||false| +|102938475693892|Visa|02/06||false| +|405257702284527|Mastercard|02/06||false| +|4024007125632481|American Express|02/06||false| +|4256050997607|Mastercard|02/06||false| +|436740o659073|Diners Club|02/06||false| +|378238357872855|American Express|02/06||false| +|347148346051767|American Express|02/06||false| +|30328554553609|American Express|02/06||false| +|30291266636411|Discover|02/06||false| +|6011404643082688|Discover|12/05||false| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardValidation/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardValidation/properties.xml new file mode 100644 index 0000000000..cf9bf8c3b4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestCreditCardValidation/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085045 + + + + + + + + 1127688147743 + 3513864218416779719 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestPaywithCreditCard/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestPaywithCreditCard/content.txt new file mode 100644 index 0000000000..444ad137e5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestPaywithCreditCard/content.txt @@ -0,0 +1,9 @@ +|''begin transaction for client''| Bob |''staff''| Bill | +|''rent''|1||Tricycle|''for''|1 day| +|'''ensure'''|''pay with credit card $''|20.00|''card type''|Visa|''expires''|11/05|''number''|4485891284549100| +|''complete transaction''| + +|''begin transaction for client''| Bob |''staff''| Bill | +|''rent''|1||Bike|''for''|1 day| +|'''reject'''|''pay with credit card $''|200.00|''card type''|Visa|''expires''|12/05|''number''|49937395716| +|'''not'''|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestPaywithCreditCard/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestPaywithCreditCard/properties.xml new file mode 100644 index 0000000000..2ddc553d5f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/TestPaywithCreditCard/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085045 + + + + + + + + 1127345852518 + -6183716031861573633 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/content.txt new file mode 100644 index 0000000000..9eecc86d92 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/content.txt @@ -0,0 +1,5 @@ +^SetUp +^ImportantInformation +^TestCreditCardValidation +^TestPaywithCreditCard +^TestCreditCardBonusPoints \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/properties.xml new file mode 100644 index 0000000000..962992cec8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/CreditCard/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085045 + + + + + + + + 1127295137879 + -1990129420554244676 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DefinedActions/content.txt new file mode 100644 index 0000000000..429d71a07e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DefinedActions/content.txt @@ -0,0 +1 @@ +!contents diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/CreateDeliveryCost/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/CreateDeliveryCost/content.txt new file mode 100644 index 0000000000..a396467358 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/CreateDeliveryCost/content.txt @@ -0,0 +1,14 @@ +Create + +|''begin admin transaction''| Bill | +|''add delivery city''|Auckland|''zone''|CBD|''flat rate''|6.00|''delivery rate %''|3| +|''add delivery city''|Auckland|''zone''|North Shore|''flat rate''|10.00|''delivery rate %''|4| +|''complete transaction''| + +----Check +|''delivery cost list''| +|''city'' | ''zone'' | ''delivery rate flat fee'' | ''delivery rate %'' | +|Auckland| West|12.00|4| +|Auckland| East|12.00|4| +| Auckland | CBD | 6.00 | 3 | +| Auckland | North Shore | 10.00 | 4 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/CreateDeliveryCost/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/CreateDeliveryCost/properties.xml new file mode 100644 index 0000000000..827f83b2a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/CreateDeliveryCost/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1127688736061 + -4082485841909960133 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/DeleteDeliveryCost/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/DeleteDeliveryCost/content.txt new file mode 100644 index 0000000000..d24bec082e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/DeleteDeliveryCost/content.txt @@ -0,0 +1,10 @@ +Delete + +|''begin admin transaction''| Bill | +|''remove delivery city''|Auckland|''zone''|East| +|''complete transaction''| + +----Check +|''delivery cost list''| +|''city'' | ''zone'' | ''delivery rate flat fee'' | ''delivery rate %'' | +|Auckland| West|12.00|4| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/DeleteDeliveryCost/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/DeleteDeliveryCost/properties.xml new file mode 100644 index 0000000000..92f91beade --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/DeleteDeliveryCost/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1127689024761 + -5740803940103072485 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/ModifyDeliveryCost/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/ModifyDeliveryCost/content.txt new file mode 100644 index 0000000000..345e1d8c30 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/ModifyDeliveryCost/content.txt @@ -0,0 +1,11 @@ +Change + +|''begin admin transaction''| Bill | +|''change delivery city''|Auckland|''zone''|East|''flat rate''|12.00|''delivery rate %''|4|''to flat rate''|15.00| +|''complete transaction''| + +----Check +|''delivery cost list''| +|''city'' | ''zone'' | ''delivery rate flat fee'' | ''delivery rate %'' | +|Auckland| West|12.00|4| +|Auckland| East|15.00|4| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/ModifyDeliveryCost/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/ModifyDeliveryCost/properties.xml new file mode 100644 index 0000000000..7ea51bc0ca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/ModifyDeliveryCost/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1127689177261 + -5473768527558669466 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/SetUp/content.txt new file mode 100644 index 0000000000..f9e75caa6a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/SetUp/content.txt @@ -0,0 +1,26 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| +|coffee pot|20|1.50|12.00|60.00|0.00| +| coffee urn | 20| 1.50| 12.00|60.00| 50.00| +| table | 20 | 6.00 | 48.00| 200.00| 80.00| + +|''setup''| +|''client name''|''phone''|''city''|''zone''|''delivery address''| +|Joanna|373 7599|Auckland|CBD|10 Princes St| +|Xiaosong|555 1225|Auckland|CBD|12 Princes St| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''setup''| +|''city''|''zone''|''delivery rate flat fee''|''delivery rate %''| +|Auckland| West|12.00|4| +|Auckland| East|12.00|4| + +|''time is now''| 2005/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/SetUp/properties.xml new file mode 100644 index 0000000000..09c18d4f06 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1127688119641 + 7907704057733690684 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/content.txt new file mode 100644 index 0000000000..021aea2fcc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/content.txt @@ -0,0 +1,5 @@ +^SetUp + +^CreateDeliveryCost +^DeleteDeliveryCost +^ModifyDeliveryCost \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/properties.xml new file mode 100644 index 0000000000..0fcdb7e4e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryAdminFunction/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1127683387803 + -4954682700511192905 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryConfirmation/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryConfirmation/content.txt new file mode 100644 index 0000000000..7c3810a8d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryConfirmation/content.txt @@ -0,0 +1 @@ +* Ignore this please \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryConfirmation/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryConfirmation/properties.xml new file mode 100644 index 0000000000..622f365e20 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryConfirmation/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085040 + + + + + + + 1127942083112 + 5704484322402923520 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryScheduleForDay/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryScheduleForDay/content.txt new file mode 100644 index 0000000000..0962455a4b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryScheduleForDay/content.txt @@ -0,0 +1,15 @@ +|''setup delivery transaction for client''| Joanna |''on''|2005/05/08 09:01|''staff''| Bill| +|''book''|2||coffee dispenser|''for''|2 hours| +|''book''|3||coffee urn|''for''|3 hours| + +|''setup delivery transaction for client''| Joanna |''on''|2005/05/08 15:01|''staff''| Bill| +|''book''|2||table|''for''|0.5 day| +|''book''|3||cup|''for''|2.5 hours| + + +|''begin delivery transaction for client''| Joanna |''on''|2005/05/08 09:01|''city''|Auckland|''zone''|North Shore|''|''staff''| Bill| +|''book''|10||coffee dispenser| + +|''delivery schedule for''|2005/05/08 09:01| +|''date''|''city''|''zone''|''delivery address''| +|2005/05/08 09:01|Auckland|CBD|10 Princes St| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryScheduleForDay/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryScheduleForDay/properties.xml new file mode 100644 index 0000000000..9a630228cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/DeliveryScheduleForDay/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085040 + + + + + + + 1127707128742 + 7794079552074241319 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/SetUp/content.txt new file mode 100644 index 0000000000..d26e148255 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/SetUp/content.txt @@ -0,0 +1,30 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| +|coffee pot|20|1.50|12.00|60.00|0.00| +| coffee urn | 20| 1.50| 12.00|60.00| 50.00| +| table | 20 | 6.00 | 48.00| 200.00| 80.00| + +|''setup''| +|''client name''|''phone''|''city''|''zone''|''delivery address''| +|Joanna|373 7599|Auckland|CBD|10 Princes St| +|Xiaosong|555 1225|Auckland|CBD|12 Princes St| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''setup''| +|''city''|''zone''|''delivery rate flat fee''|''delivery rate %''| +|Auckland| CBD|8.00|3| +|Auckland| Central|8.00|3| +|Auckland| South|6.00|2| +|Auckland| North Shore|15.00|5| +|Auckland| West|12.00|4| +|Auckland| East|12.00|4| + +|''time is now''| 2005/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/SetUp/properties.xml new file mode 100644 index 0000000000..8eccdda6cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1127704282062 + -6456610963689212860 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/content.txt new file mode 100644 index 0000000000..eab7e8efaf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/content.txt @@ -0,0 +1,5 @@ +^SetUp + +^DeliveryScheduleForDay + +^DeliveryConfirmation \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/properties.xml new file mode 100644 index 0000000000..b265111db2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DeliveryManagement/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1127942171832 + -3138589915991970232 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemFail/content.txt new file mode 100644 index 0000000000..5d53b95764 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemFail/content.txt @@ -0,0 +1,7 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|1||Truck|''for''|1 day| +|'''reject'''|''drop rent''|1||Bike|''for''|1 day| +|'''reject'''|''drop rent''|2||Truck|''for''|1 day| +|'''reject'''|''drop rent''|1||Truck|''for''|3 day| +|''pay with cash $''|2000.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemFail/properties.xml new file mode 100644 index 0000000000..1f9ac679f4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemFail/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085043 + + + + + + + + 1121903250093 + 3737413385356459930 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemPass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemPass/content.txt new file mode 100644 index 0000000000..482d26204e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemPass/content.txt @@ -0,0 +1,8 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|1||Truck|''for''|1 day| +|''drop rent''|1||Truck|''for''|1 day| +|''complete transaction''| + +|''rental item subset''| +|''name''|''free count''| +|Truck|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemPass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemPass/properties.xml new file mode 100644 index 0000000000..23e897fff7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/DroppingOneTransactionItemPass/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114821 + + + + + + + + 1146959301200 + 312055382319136523 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/SetUp/content.txt new file mode 100644 index 0000000000..a4cc3f8a0c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/SetUp/content.txt @@ -0,0 +1,17 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|1|3.00|20.00|80.00|0.00| +|Bike|1|30.00|200.00|800.00|0.00| +|Truck|1|300.00|2000.00|8000.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/SetUp/properties.xml new file mode 100644 index 0000000000..02444ffd1c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085043 + + + + + + + 1123110209723 + -2500012797165160781 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestDroppingMultipleItemsPass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestDroppingMultipleItemsPass/content.txt new file mode 100644 index 0000000000..5c18970fb0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestDroppingMultipleItemsPass/content.txt @@ -0,0 +1,14 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|1||Truck|''for''|1 day| +|''rent''|1||Bike|''for''|1 day| +|''rent''|1||Tricycle|''for''|1 day| +|''drop rent''|1||Bike|''for''|1 day| +|''drop rent''|1||Tricycle|''for''|1 day| +|''pay with cash $''|2000.00| +|''complete transaction''| + +|''rental item''| +|''name''|''free count''| +|Truck|0| +|Bike|1| +|Tricycle|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestDroppingMultipleItemsPass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestDroppingMultipleItemsPass/properties.xml new file mode 100644 index 0000000000..44e64c97ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestDroppingMultipleItemsPass/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114833 + + + + + + + + 1146959313598 + -4760754117749097648 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropMultipleItems/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropMultipleItems/content.txt new file mode 100644 index 0000000000..f06286731b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropMultipleItems/content.txt @@ -0,0 +1,11 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|1||Truck|''for''|1 day| +|''drop rent''|1||Truck|''for''|1 day| +|''rent''|1||Bike|''for''|1 day| +|''rent''|1||Tricycle|''for''|1 day| +|''drop rent''|1||Tricycle|''for''|1 day| +|''drop rent''|1||Bike|''for''|1 day| +|''undrop rent''|1||Tricycle|''for''|1 day| +|''undrop rent''|1||Truck|''for''|1 day| +|''pay with cash $''|2020.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropMultipleItems/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropMultipleItems/properties.xml new file mode 100644 index 0000000000..8117fc7a5f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropMultipleItems/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085043 + + + + + + + + 1122242835975 + -2409510226637208664 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemFail/content.txt new file mode 100644 index 0000000000..e4562afa32 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemFail/content.txt @@ -0,0 +1,9 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''reject'''|''undrop rent''|1||Truck|''for''|1 day| +|''rent''|1||Truck|''for''|1 day| +|'''reject'''|''undrop rent''|1||Truck|''for''|1 day| +|''drop rent''|1||Truck|''for''|1 day| +|''undrop rent''|1||Truck|''for''|1 day| +|'''reject'''|''undrop rent''|1||Truck|''for''|1 day| +|''pay with cash $''|2000.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemFail/properties.xml new file mode 100644 index 0000000000..31fe481d80 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemFail/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085043 + + + + + + + + 1122242673846 + -326701274177864695 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemPass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemPass/content.txt new file mode 100644 index 0000000000..935bd1bd99 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemPass/content.txt @@ -0,0 +1,6 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|1||Truck|''for''|1 day| +|''drop rent''|1||Truck|''for''|1 day| +|''undrop rent''|1||Truck|''for''|1 day| +|''pay with cash $''|2000.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemPass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemPass/properties.xml new file mode 100644 index 0000000000..5473254ce1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/TestUnDropOneItemPass/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085043 + + + + + + + + 1121903617792 + 542379014026896057 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/content.txt new file mode 100644 index 0000000000..570247d389 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/content.txt @@ -0,0 +1,7 @@ +^SetUp +^DroppingOneTransactionItemPass +^DroppingOneTransactionItemFail +^TestDroppingMultipleItemsPass +^TestUnDropOneItemPass +^TestUnDropOneItemFail +^TestUnDropMultipleItems \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/properties.xml new file mode 100644 index 0000000000..25b8794e65 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/DroppingTransactionItem/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085043 + + + + + + + + 1122242718465 + -5803969022604877395 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/SetUp/content.txt new file mode 100644 index 0000000000..edfcb5bc0e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/SetUp/content.txt @@ -0,0 +1,21 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|2|3.00|20.00|80.00|0.00| +|Bike|2|30.00|200.00|800.00|0.00| +|Truck|2|300.00|2000.00|8000.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| +|Bob|352 2353| +|Joe|334 2433| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| +|John|554 2362| +|Pual|232 2356| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/SetUp/properties.xml new file mode 100644 index 0000000000..aaf5ea03a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085052 + + + + + + + 1126737788454 + 8494743839043064369 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountFail/content.txt new file mode 100644 index 0000000000..e26f5a42ea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountFail/content.txt @@ -0,0 +1,17 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|2||Truck|''on''|2004/05/08 09:01|''for''|2 days| +|''pay with cash $''|8000.00| +|''complete transaction''| + +|''begin transaction for client''| Joanna |''staff''| Bill | +|''rent''|1||Truck|''for''|1 day| +|'''reject'''|''modify amount on rent''|1||Truck|''for''|1 day|''to''|4| +|'''reject'''|''modify amount on rent''|2||Truck|''for''|1 day|''to''|1| +|'''reject'''|''modify amount on rent''|1||Bike|''for''|1 day|''to''|1| +|'''reject'''|''modify amount on rent''|1||Truck|''for''|3 days|''to''|1| +|''pay with cash $''|2000.00| +|''complete transaction''| + +|''rental item subset''| +|''name''|''free count''| +|Truck|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountFail/properties.xml new file mode 100644 index 0000000000..8ab5e19af1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountFail/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114946 + + + + + + + + 1146959386393 + 4236490623409649939 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountPass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountPass/content.txt new file mode 100644 index 0000000000..1e173fe8a8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountPass/content.txt @@ -0,0 +1,9 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''rent''|1||Truck|''for''|1 day| +|''modify amount on rent''|1||Truck|''for''|1 day|''to''|2| +|''pay with cash $''|4000.00| +|''complete transaction''| + +|''rental item subset''| +|''name''|''free count''| +|Truck|0| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountPass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountPass/properties.xml new file mode 100644 index 0000000000..9d0e99fa75 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemCountPass/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114938 + + + + + + + + 1146959378842 + 7625605793705019934 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDateFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDateFail/content.txt new file mode 100644 index 0000000000..489a081d21 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDateFail/content.txt @@ -0,0 +1,10 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''book''|2||Truck|''on''|2004/05/08 09:01|''for''|2 days| +|''rent''|1||Truck|''for''|1 day| +|'''reject'''|''modify duration on rent''|1||Truck|''for''|1 day|''to''|4 days| +|''pay with cash $''|10000.00| +|''complete transaction''| + +|''rental item subset''| +|''name''|''free count''| +|Truck|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDateFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDateFail/properties.xml new file mode 100644 index 0000000000..c4d8420941 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDateFail/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114930 + + + + + + + + 1146959370620 + -215623697443892948 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDatePass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDatePass/content.txt new file mode 100644 index 0000000000..077bfd681f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDatePass/content.txt @@ -0,0 +1,9 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''rent''|1||Truck|''for''|1 day| +|''modify duration on rent''|1||Truck|''for''|1 day|''to''|2 days| +|''pay with cash $''|4000.00| +|''complete transaction''| + +|''rental item subset''| +|''name''|''free count''| +|Truck|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDatePass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDatePass/properties.xml new file mode 100644 index 0000000000..466f760292 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/TestEditItemDatePass/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507114920 + + + + + + + + 1146959360476 + -637271447011225986 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/content.txt new file mode 100644 index 0000000000..09b9dd8b0f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/content.txt @@ -0,0 +1,6 @@ +^SetUp +^TestEditItemDatePass +^TestEditItemDateFail +^TestEditItemCountPass +^TestEditItemCountFail + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/properties.xml new file mode 100644 index 0000000000..0982ee62f7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/EditingTransactionItem/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085052 + + + + + + + + 1123715361865 + -254687347617421471 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/SetUp/content.txt new file mode 100644 index 0000000000..7593b5463d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/SetUp/content.txt @@ -0,0 +1,29 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|1|3.00|20.00|80.00|0.00| +|Bike|1|30.00|200.00|800.00|0.00| +|Truck|1|300.00|2000.00|8000.00|0.00| + +|''setup''| +|''restriction id''|''Constraint''| +|1|Must be over the age of 5| +|2|Must be over the age of 20| +|3|Must have heavy traffic license| + +|''Apply Restrictions''| +|''rental item name''|''restriction id''| +|Bike|1| +|Truck|2| +|Truck|3| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/SetUp/properties.xml new file mode 100644 index 0000000000..2465fafa38 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085045 + + + + + + + 1123713813114 + 8891417968262461403 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsFail/content.txt new file mode 100644 index 0000000000..39609bc883 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsFail/content.txt @@ -0,0 +1,5 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''reject'''|''rent''|1||Truck|''for''|1 day|''with restriction''|3|''satisfied''| +|'''reject'''|''rent''|1||Truck|''for''|1 day|''with restriction''|2|''satisfied''| +|'''reject'''|''rent''|1||Truck|''for''|1 day| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsFail/properties.xml new file mode 100644 index 0000000000..9946813a29 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsFail/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085045 + + + + + + + + 1121902396782 + -3580125001161635281 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsPass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsPass/content.txt new file mode 100644 index 0000000000..f019e1e3f1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsPass/content.txt @@ -0,0 +1,4 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|1||Truck|''for''|1 day|''with restriction''|2,3|''satisfied''| +|''pay with cash $''|2000.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsPass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsPass/properties.xml new file mode 100644 index 0000000000..b40b44d9d6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithMultipleRestrictionsPass/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1121902319825 + 5818040598932333790 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithNoRestrictions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithNoRestrictions/content.txt new file mode 100644 index 0000000000..93283395ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithNoRestrictions/content.txt @@ -0,0 +1,5 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|1||Tricycle|''for''|1 day| +|''pay with cash $''|20.00| +|''complete transaction''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithNoRestrictions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithNoRestrictions/properties.xml new file mode 100644 index 0000000000..a6a210f1ae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithNoRestrictions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085045 + + + + + + + + 1121901424751 + -7853775243411871024 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionFail/content.txt new file mode 100644 index 0000000000..41d751155a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionFail/content.txt @@ -0,0 +1,3 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''reject'''|''rent''|1||Bike|''for''|1 day| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionFail/properties.xml new file mode 100644 index 0000000000..3f9242797c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionFail/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085045 + + + + + + + + 1121902188903 + 373635002352504611 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionPass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionPass/content.txt new file mode 100644 index 0000000000..91fcde0390 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionPass/content.txt @@ -0,0 +1,4 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|1||Bike|''for''|1 day|''with restriction''|1|''satisfied''| +|''pay with cash $''|200.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionPass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionPass/properties.xml new file mode 100644 index 0000000000..a69ec1ca58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/TestWithOneRestrictionPass/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1121902229301 + -3991188104545952509 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/content.txt new file mode 100644 index 0000000000..91843fed5e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/content.txt @@ -0,0 +1,6 @@ +^SetUp +^TestWithNoRestrictions +^TestWithOneRestrictionPass +^TestWithOneRestrictionFail +^TestWithMultipleRestrictionsPass +^TestWithMultipleRestrictionsFail \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/properties.xml new file mode 100644 index 0000000000..bb307af885 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GeneralizedRentalRestrictions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1121902259031 + -8120584546053569162 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/BookingWithDelivery/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/BookingWithDelivery/content.txt new file mode 100644 index 0000000000..72498f7a50 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/BookingWithDelivery/content.txt @@ -0,0 +1,12 @@ +|''begin delivery transaction for client''| Joanna |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2005/05/08 09:01|''for''|2 hours| +|''pay with cash $''|14.18| +|''complete transaction''| + +|''deliveries for client''| Joanna | +|''date''|''city''|''zone''|''delivery address''|''item''|''item count''| +|2005/05/08 09:01|Auckland|CBD|10 Princes St|coffee dispenser|2| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2005/05/08 09:01|2005/05/08 11:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/BookingWithDelivery/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/BookingWithDelivery/properties.xml new file mode 100644 index 0000000000..04e183e6d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/BookingWithDelivery/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060314185505 + + + + + + + + 1142315705609 + 5604812604300400932 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CalculateDeliveryRate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CalculateDeliveryRate/content.txt new file mode 100644 index 0000000000..c4931fcb10 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CalculateDeliveryRate/content.txt @@ -0,0 +1,12 @@ + +The delivery rate is the flat fee plus the percentage of the total cost of the booking. + +|''calculated delivery rate''| +|''Actual $ spent''|''city''|''zone''||''delivery fee $''| +|100.00|Auckland|CBD||11.00| +|100.00|Auckland|West||16.00| +|100.00|Auckland|East||16.00| +|100.00|Auckland|Central||11.00| +|100.00|Auckland|South||8.00| +|100.00|Auckland|North Shore||20.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CalculateDeliveryRate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CalculateDeliveryRate/properties.xml new file mode 100644 index 0000000000..e95ac091e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CalculateDeliveryRate/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1127292234620 + 950296031877403521 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelBookingsWithDelivery/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelBookingsWithDelivery/content.txt new file mode 100644 index 0000000000..8a9038904a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelBookingsWithDelivery/content.txt @@ -0,0 +1,34 @@ +---- * Given: +|''begin delivery transaction for client''| Joanna |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2005/05/08 09:01|''for''|2 hours| +|''book''|2||coffee dispenser|''on''|2005/05/09 09:01|''for''|2 hours| +|''pay with cash $''|28.36| +|''complete transaction''| + +---- * Checks +|''deliveries for client''| Joanna | +|''date''|''city''|''zone''|''delivery address''|''item''|''item count''| +|2005/05/08 09:01|Auckland|CBD|10 Princes St|coffee dispenser|2| +|2005/05/09 09:01|Auckland|CBD|10 Princes St|coffee dispenser|2| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2005/05/08 09:01|2005/05/08 11:01| +|coffee dispenser|2|2005/05/09 09:01|2005/05/09 11:01| +---- * Actions +|''time is now''|2005/05/07 09:02| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''cancel booking of''|2||coffee dispenser|''on''|2005/05/08 09:01|''for''|2 hours| +|''refund cash $''|14.18| +|''complete transaction''| + +---- * Checks +If all the bookings in a delivery is cancelled, the delivery should be cancelled as well. +|''deliveries for client''| Joanna | +|''date''|''city''|''zone''|''delivery address''|''item''|''item count''| +|2005/05/09 09:01|Auckland|CBD|10 Princes St|coffee dispenser|2| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2005/05/09 09:01|2005/05/09 11:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelBookingsWithDelivery/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelBookingsWithDelivery/properties.xml new file mode 100644 index 0000000000..bad7effb6a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelBookingsWithDelivery/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1128895573099 + 388961725052263006 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelDelivery/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelDelivery/content.txt new file mode 100644 index 0000000000..4955f3d365 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelDelivery/content.txt @@ -0,0 +1,22 @@ +---- * Given: +|''begin delivery transaction for client''| Joanna |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2005/05/08 09:01|''for''|2 hours| +|''pay with cash $''|14.18| +|''complete transaction''| + +---- * Actions +|''time is now''|2005/05/08 09:02| + + * Partial delivery cancellations are not allowed. +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''not'''|''cancel delivery''|2005/05/08 09:01|''city''|Auckland|''zone''|CBD|''address''|10 Princes St|''item''|coffee dispenser|''item count''|1|''for''|2 hours| +|''cancel delivery''|2005/05/08 09:01|''city''|Auckland|''zone''|CBD|''address''|10 Princes St|''item''|coffee dispenser|''item count''|2|''for''|2 hours| +|''refund cash $''|14.18| +|''complete transaction''| + +---- * Checks +|''deliveries for client''| Joanna | +|''date''|''city''|''zone''|''delivery address''|''item''|''item count''| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelDelivery/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelDelivery/properties.xml new file mode 100644 index 0000000000..f8b2d555a5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/CancelDelivery/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085042 + + + + + + + + 1128550802643 + 7232172103266406505 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/ChangeDelivery/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/ChangeDelivery/content.txt new file mode 100644 index 0000000000..fcc0b92a7e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/ChangeDelivery/content.txt @@ -0,0 +1,39 @@ +!3 Create a delivery +|''begin delivery transaction for client''| Joanna |''staff''| Bill| +|''book''|2||coffee dispenser|''on''|2005/05/08 09:01|''for''|2 hours| +|''pay with cash $''|14.18| +|''complete transaction''| + +!3 One day later + +|''time is now''| 2005/05/07 09:01| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''change delivery on''|2005/05/08 09:01|''item''|coffee dispenser|''item count''|2|''for''|2 hours|''city''|Auckland|''zone''|CBD|''delivery address''|10 Princes St|''to delivery address''|200 Queen St| +|''complete transaction''| + + * ''Checks'' +|''deliveries for client''| Joanna | +|''date''|''city''|''zone''|''delivery address''|''item''|''item count''| +|2005/05/08 09:01|Auckland|CBD|200 Queen St|coffee dispenser|2| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2005/05/08 09:01|2005/05/08 11:01| + +!3 Half an hour later +|''time is now''| 2005/05/07 09:31| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''change delivery on''|2005/05/08 09:01|''item''|coffee dispenser|''item count''|2|''for''|2 hours|''city''|Auckland|''zone''|CBD|''delivery address''|200 Queen St|''to zone''|East|''to delivery address''|200 Burswood Drive| +|''pay with cash $''|4.06| +|''complete transaction''| + + * ''Checks'' +|''deliveries for client''| Joanna | +|''date''|''city''|''zone''|''delivery address''|''item''|''item count''| +|2005/05/08 09:01|Auckland|East|200 Burswood Drive|coffee dispenser|2| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2005/05/08 09:01|2005/05/08 11:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/ChangeDelivery/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/ChangeDelivery/properties.xml new file mode 100644 index 0000000000..d043c96c68 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/ChangeDelivery/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1128490182020 + -1077560946022316506 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/DeliveryWithSpecifiedAddress/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/DeliveryWithSpecifiedAddress/content.txt new file mode 100644 index 0000000000..91ab895753 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/DeliveryWithSpecifiedAddress/content.txt @@ -0,0 +1,14 @@ +The client can specify a delivery address that's different from the recorded address in their account + +|''begin delivery transaction for client''| Joanna |''city''|Auckland|''zone''|North Shore|''address''|68 Glenfield Rd|''staff''| Bill| +|''book''|10||coffee dispenser|''on''|2005/05/08 09:01|''for''|2 hours| +|''pay with cash $''|46.50| +|''complete transaction''| + +|''deliveries for client''| Joanna | +|''date''|''city''|''zone''|''delivery address''|''item''|''item count''| +|2005/05/08 09:01|Auckland|North Shore|68 Glenfield Rd|coffee dispenser|10| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|10|2005/05/08 09:01|2005/05/08 11:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/DeliveryWithSpecifiedAddress/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/DeliveryWithSpecifiedAddress/properties.xml new file mode 100644 index 0000000000..fb1183af77 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/DeliveryWithSpecifiedAddress/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085042 + + + + + + + + 1128486722468 + -5340886131160026122 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/SetUp/content.txt new file mode 100644 index 0000000000..9c845ad562 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/SetUp/content.txt @@ -0,0 +1,24 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| + +|''setup''| +|''client name''|''phone''|''city''|''zone''|''delivery address''| +|Joanna|373 7599|Auckland|CBD|10 Princes St| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''setup''| +|''city''|''zone''|''delivery rate flat fee''|''delivery rate %''| +|Auckland| CBD|8.00|3| +|Auckland| Central|8.00|3| +|Auckland| South|6.00|2| +|Auckland| North Shore|15.00|5| +|Auckland| West|12.00|4| +|Auckland| East|12.00|4| + +|''time is now''| 2005/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/SetUp/properties.xml new file mode 100644 index 0000000000..3c601acd7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1142293775267 + 7188785243661327674 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/content.txt new file mode 100644 index 0000000000..1a90c91222 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/content.txt @@ -0,0 +1,8 @@ +^SetUp + +^CalculateDeliveryRate +^BookingWithDelivery +^DeliveryWithSpecifiedAddress +^CancelDelivery +^CancelBookingsWithDelivery +^ChangeDelivery \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/properties.xml new file mode 100644 index 0000000000..0bea30e770 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/GoodsDelivery/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085042 + + + + + + + + 1127683279979 + -646703654091808772 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsDetails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsDetails/content.txt new file mode 100644 index 0000000000..5a791831e0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsDetails/content.txt @@ -0,0 +1,9 @@ +A late fee may be charged if equipment is expected to be returned by a certain time. The fee depends on: + * How long the item was hired for. There is usually one hour's grace. However, the longer the time, the longer the grace period. + * If the return is beyond the grace period, the late fee is based either on the extra time or on the extra time minus the grace period. The choice of approach is defined in a database configuration table that's set up specifically for a hire company and is not likely to change. + * The late fee is simply the extra time, as defined above, charged at the usual rate for that item. + * However, when the item is in high demand, there is a reduced grace period and an extra late fee is charged. This is especially important for hire items that have been booked out, as the hire company staff would need to source replacement equipment from elsewhere at some cost. The extra late fee may be associated with each hire item. + +Note: + * This is more detailed than you'd expect to see in an XP project. + * More tests are needed for this story. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsDetails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsDetails/properties.xml new file mode 100644 index 0000000000..03ef8d723d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsDetails/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085044 + + + + + + + 1127944831913 + 8064688948330887945 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsPenalties/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsPenalties/content.txt new file mode 100644 index 0000000000..a6c3978765 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsPenalties/content.txt @@ -0,0 +1,17 @@ +|!-hire.TestLate-!| +|hoursLate|grace|countGrace|highDemand|extraHours()| +|0|1|true|0|0| +|0.9|1|false|0|0| +|1|1|true|0|1| +|1|1|false|0|0| +|9|1|true|0|9| +|19|2|false|0|17| + +|!-hire.TestLate-!| +|hoursLate|grace|countGrace|highDemand|extraHours()| +|0|1|true|10|0| +|0.9|1|false|10|0| +|1|1|true|5|6| +|1|1|false|12|0| +|9|1|true|10|19| +|19|2|false|100|117| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsPenalties/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsPenalties/properties.xml new file mode 100644 index 0000000000..f493cdccf5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/LateReturnsPenalties/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1127945169943 + -1269463302974916097 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/TestLateReturns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/TestLateReturns/content.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/TestLateReturns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/TestLateReturns/properties.xml new file mode 100644 index 0000000000..61a92b5f98 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/TestLateReturns/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085044 + + + + + + + + 1127950830735 + 8921406688787438715 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/content.txt new file mode 100644 index 0000000000..7f0a024f13 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/content.txt @@ -0,0 +1,5 @@ +^LateReturnsDetails + +^LateReturnsPenalties + +^TestLateReturns \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/properties.xml new file mode 100644 index 0000000000..b5dce0b76c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/LateReturns/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085044 + + + + + + + + 1127950825424 + -5669197370439761222 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/MixNormalTransactionWithAdminTransaction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/MixNormalTransactionWithAdminTransaction/content.txt new file mode 100644 index 0000000000..0a224c2d58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/MixNormalTransactionWithAdminTransaction/content.txt @@ -0,0 +1,24 @@ +Joanna tries to hire out coffee dispensers, but they have just received a new shipment. + +!3 ''Rental of coffee dispensers for 3 days:'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''reject'''|''rent''|2||coffee dispenser|''for''|3 days| + +Bill adds the new shipment to the system, while Joanna waits. + +|''begin admin transaction''| Bill | +|''add''|2|''of type''|coffee dispenser|''costing''|20.00|''/hour''|50.00|''/day''|500.00|''/week''|0.00|''bond''| +|''complete transaction''| + +|''rental item subset''| +| ''name'' | ''free count'' |''hourly rate''|''daily rate''|''weekly rate''|''bond'' | +| coffee dispenser | 2 | 20.00 | 50.00 | 500.00 | 0.00 | + +|''resume transaction for client''| Joanna | +|''rent''|2||coffee dispenser|''for''|3 days| +|''pay with cash $''|300.00| +|''complete transaction''| + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/MixNormalTransactionWithAdminTransaction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/MixNormalTransactionWithAdminTransaction/properties.xml new file mode 100644 index 0000000000..270f6d4471 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/MixNormalTransactionWithAdminTransaction/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115100 + + + + + + + + 1146959460559 + 7444766581851254631 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/SetUp/content.txt new file mode 100644 index 0000000000..fc8fdd55a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/SetUp/content.txt @@ -0,0 +1,21 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|1|3.00|20.00|80.00|0.00| +|Bike|1|30.00|200.00|800.00|0.00| +|Truck|1|300.00|2000.00|8000.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| +|Bob|352 2353| +|Joe|334 2433| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| +|John|554 2362| +|Pual|232 2356| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/SetUp/properties.xml new file mode 100644 index 0000000000..8238e17bf6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085053 + + + + + + + 1124056593619 + 545838939401271187 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddIdentifiedRentalItem/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddIdentifiedRentalItem/content.txt new file mode 100644 index 0000000000..9eb1c46839 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddIdentifiedRentalItem/content.txt @@ -0,0 +1,21 @@ +|''begin admin transaction''| Bill | +|''add''|0|''of type''|barbeque|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| + +|''begin admin transaction''| John | +|''add''|2|''of type''|party tent|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''complete transaction''| + +|''resume admin transaction for''| Bill | +|''add identified''|bbq001|''of type''|barbeque|''last maintained''|2004/4/15 11:34|''period of''|3|''months''| +|''complete transaction''| + +|''rental item subset''| +| ''name''| ''free count'' |''hourly rate''|''daily rate''|''weekly rate''|''bond'' | +|barbeque | 1 | 20.00 | 100.00 | 500.00 | 200.00 | +| party tent | 2 | 20.00 | 100.00 | 500.00 | 200.00 | + +|''identified rental item subset''| +|''identifier''|''last maintained''| +|bbq001|2004/4/15 11:34| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddIdentifiedRentalItem/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddIdentifiedRentalItem/properties.xml new file mode 100644 index 0000000000..08817d4768 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddIdentifiedRentalItem/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115045 + + + + + + + + 1146959445057 + -587347583788712108 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddRentalItem/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddRentalItem/content.txt new file mode 100644 index 0000000000..0ce238c877 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddRentalItem/content.txt @@ -0,0 +1,14 @@ +|''begin admin transaction''| Bill | +|''add''|2|''of type''|party tent|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| + +|''begin admin transaction''| John | +|''add''|3|''of type''|karaoke machine|''costing''|15.00|''/hour''|60.00|''/day''|300.00|''/week''|200.00|''bond''| +|''complete transaction''| + +|''resume admin transaction for''| Bill | +|''complete transaction''| + +|''rental item subset''| +| ''name'' | ''free count'' |''hourly rate''|''daily rate''|''weekly rate''|''bond'' | +| party tent | 2 | 20.00 | 100.00 | 500.00 | 200.00 | +| karaoke machine | 3 | 15.00 | 60.00 | 300.00 | 200.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddRentalItem/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddRentalItem/properties.xml new file mode 100644 index 0000000000..efe7a3ee9f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelAddRentalItem/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115034 + + + + + + + + 1146959434202 + 2089691211225266930 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelDuplicateTransactions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelDuplicateTransactions/content.txt new file mode 100644 index 0000000000..bcd78c7b0f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelDuplicateTransactions/content.txt @@ -0,0 +1,13 @@ +|''begin admin transaction''| Bill | +|''add''|2|''of type''|party tent|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| + +|''begin admin transaction''| John | +|'''reject'''|''add''|2|''of type''|party tent|''costing''|20.00|''/hour''|100.00|''/day''|500.00|''/week''|200.00|''bond''| +|''complete transaction''| + +|''resume admin transaction for''| Bill | +|''complete transaction''| + +|''rental item subset''| +| ''name'' | ''free count'' |''hourly rate''|''daily rate''|''weekly rate''|''bond'' | +| party tent | 2 | 20.00 | 100.00 | 500.00 | 200.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelDuplicateTransactions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelDuplicateTransactions/properties.xml new file mode 100644 index 0000000000..b9d08f789f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/TestParallelDuplicateTransactions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115052 + + + + + + + + 1146959452077 + 2634182232663169630 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/content.txt new file mode 100644 index 0000000000..693513c2c0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/content.txt @@ -0,0 +1,7 @@ +^TestParallelAddRentalItem +^TestParallelAddIdentifiedRentalItem +^TestParallelDuplicateTransactions +^MixNormalTransactionWithAdminTransaction + + +^SetUp \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/properties.xml new file mode 100644 index 0000000000..89a6a441fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelAdminTransactions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085053 + + + + + + + + 1124057015401 + 435744203405309768 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/SetUp/content.txt new file mode 100644 index 0000000000..fc8fdd55a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/SetUp/content.txt @@ -0,0 +1,21 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|1|3.00|20.00|80.00|0.00| +|Bike|1|30.00|200.00|800.00|0.00| +|Truck|1|300.00|2000.00|8000.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| +|Bob|352 2353| +|Joe|334 2433| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| +|John|554 2362| +|Pual|232 2356| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/SetUp/properties.xml new file mode 100644 index 0000000000..f254d63a0f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085051 + + + + + + + 1124056587361 + -7379369548627625530 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsAndRentalClash/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsAndRentalClash/content.txt new file mode 100644 index 0000000000..555b318fe1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsAndRentalClash/content.txt @@ -0,0 +1,20 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''book''|1||Truck|''on''|2004/05/06 11:01|''for''|2 days| + * Actions +|''begin transaction for client''| Bob |''staff''| Bill | +|'''reject'''|''rent''|1||Truck|''for''|1 day| +|''complete transaction''| + +|''resume transaction for client''| Joanna | +|''pay with cash $''|4000.00| +|''complete transaction''| + * Checks +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|Truck|1|2004/05/06 11:01|2004/05/08 11:01| + +|''rental item subset''| +|''name''|''free count''| +|Truck|1| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsAndRentalClash/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsAndRentalClash/properties.xml new file mode 100644 index 0000000000..5d2238acab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsAndRentalClash/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115143 + + + + + + + + 1146959503291 + -2743482036594223561 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsClash/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsClash/content.txt new file mode 100644 index 0000000000..6164511397 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsClash/content.txt @@ -0,0 +1,20 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''book''|1||Truck|''on''|2004/05/08 09:01|''for''|2 days| + * Actions +|''begin transaction for client''| Bob |''staff''| Bill | +|'''reject'''|''book''|1||Truck|''on''|2004/05/08 07:01|''for''|1 days| +|''complete transaction''| + +|''resume transaction for client''| Joanna | +|''pay with cash $''|4000.00| +|''complete transaction''| + * Checks +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|Truck|1|2004/05/08 09:01|2004/05/10 09:01| + +|''rental item subset''| +|''name''|''free count''| +|Truck|1| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsClash/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsClash/properties.xml new file mode 100644 index 0000000000..0ef387d463 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsClash/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115159 + + + + + + + + 1146959519424 + -5417048204418484120 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsDoNotClash/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsDoNotClash/content.txt new file mode 100644 index 0000000000..f1f334ec63 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsDoNotClash/content.txt @@ -0,0 +1,25 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''book''|1||Truck|''on''|2004/05/08 09:01|''for''|2 days| + * Actions +|''begin transaction for client''| Bob |''staff''| Bill | +|''book''|1||Truck|''on''|2004/05/11 07:01|''for''|1 days| +|''pay with cash $''|2000.00| +|''complete transaction''| + +|''resume transaction for client''| Joanna | +|''pay with cash $''|4000.00| +|''complete transaction''| + * Checks +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|Truck|1|2004/05/08 09:01|2004/05/10 09:01| + +|''client booking list''|Bob| +|''rental item''|''count''|''start date''|''end date''| +|Truck|1|2004/05/11 07:01|2004/05/12 07:01| + +|''rental item subset''| +|''name''|''free count''| +|Truck|1| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsDoNotClash/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsDoNotClash/properties.xml new file mode 100644 index 0000000000..9a5d06c2d2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestBookingsDoNotClash/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115213 + + + + + + + + 1146959533204 + 642714091152647655 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestCannotResumeNonExistentTransaction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestCannotResumeNonExistentTransaction/content.txt new file mode 100644 index 0000000000..610d34e3cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestCannotResumeNonExistentTransaction/content.txt @@ -0,0 +1 @@ +|'''reject'''|''resume transaction for client''| Joanna | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestCannotResumeNonExistentTransaction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestCannotResumeNonExistentTransaction/properties.xml new file mode 100644 index 0000000000..c600243edd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestCannotResumeNonExistentTransaction/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085051 + + + + + + + + 1123454015617 + -7715338520777980212 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestItemHireClashing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestItemHireClashing/content.txt new file mode 100644 index 0000000000..00fc633ca4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestItemHireClashing/content.txt @@ -0,0 +1,16 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''rent''|1||Truck|''for''|1 day| + +|''begin transaction for client''| Bob |''staff''| Bill | +|'''reject'''|''rent''|1||Truck|''for''|1 hour| +|''complete transaction''| + +|''resume transaction for client''| Joanna | +|''pay with cash $''|2000.00| +|''complete transaction''| + +|''rental item subset''| +|''name''|''free count''| +|Truck|0| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestItemHireClashing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestItemHireClashing/properties.xml new file mode 100644 index 0000000000..63cbcca9cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestItemHireClashing/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115229 + + + + + + + + 1146959549798 + -4666256668822510406 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestOnlyOneClientTransactionAtOnce/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestOnlyOneClientTransactionAtOnce/content.txt new file mode 100644 index 0000000000..dfea86accd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestOnlyOneClientTransactionAtOnce/content.txt @@ -0,0 +1,3 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| + +|'''reject'''|''begin transaction for client''| Joanna |''staff''| Bill| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestOnlyOneClientTransactionAtOnce/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestOnlyOneClientTransactionAtOnce/properties.xml new file mode 100644 index 0000000000..955061234a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestOnlyOneClientTransactionAtOnce/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085051 + + + + + + + + 1123454091035 + 3474772392101148115 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestParallelTransactionStart/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestParallelTransactionStart/content.txt new file mode 100644 index 0000000000..c51e13c309 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestParallelTransactionStart/content.txt @@ -0,0 +1,7 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| + +|''begin transaction for client''| Bob |''staff''| John | +|''complete transaction''| + +|''resume transaction for client''| Joanna | +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestParallelTransactionStart/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestParallelTransactionStart/properties.xml new file mode 100644 index 0000000000..dd64375752 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestParallelTransactionStart/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085052 + + + + + + + + 1123453565935 + -4593633431735828515 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingClash/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingClash/content.txt new file mode 100644 index 0000000000..e04e979093 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingClash/content.txt @@ -0,0 +1,21 @@ +|''begin transaction for client''| Bob |''staff''| Bill | +|''rent''|1||Truck|''for''|1 day| + * Actions + +|''begin transaction for client''| Joanna |''staff''| Bill | +|'''reject'''|''book''|1||Truck|''on''|2004/05/06 11:01|''for''|2 days| +|''complete transaction''| + +|''resume transaction for client''| Bob| +|''pay with cash $''|2000.00| +|''complete transaction''| + * Checks +|''rentals of client''|Bob| +|''rental item''|''count''|''start date''|''end date''| +|Truck|1|2004/05/06 09:01|2004/05/07 09:01| + +|''rental item subset''| +|''name''|''free count''| +|Truck|0| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingClash/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingClash/properties.xml new file mode 100644 index 0000000000..d73b29d7ca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingClash/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115244 + + + + + + + + 1146959564088 + -4978136332255779480 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingDoNotClash/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingDoNotClash/content.txt new file mode 100644 index 0000000000..e46943d219 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingDoNotClash/content.txt @@ -0,0 +1,26 @@ +|''begin transaction for client''| Bob |''staff''| Bill | +|''rent''|1||Truck|''for''|1 day| + * Actions + +|''begin transaction for client''| Joanna |''staff''| Bill | +|''book''|1||Truck|''on''|2004/05/08 11:01|''for''|2 days| +|''pay with cash $''|4000.00| +|''complete transaction''| + +|''resume transaction for client''| Bob| +|''pay with cash $''|2000.00| +|''complete transaction''| + * Checks +|''rentals of client''|Bob| +|''rental item''|''count''|''start date''|''end date''| +|Truck|1|2004/05/06 09:01|2004/05/07 09:01| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|Truck|1|2004/05/08 11:01|2004/05/10 11:01| + +|''rental item subset''| +|''name''|''free count''| +|Truck|0| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingDoNotClash/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingDoNotClash/properties.xml new file mode 100644 index 0000000000..3d769c91c3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestRentalAndBookingDoNotClash/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115256 + + + + + + + + 1146959576406 + -5895580522867590272 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestSeveralTransactionsPending/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestSeveralTransactionsPending/content.txt new file mode 100644 index 0000000000..ff0b042215 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestSeveralTransactionsPending/content.txt @@ -0,0 +1,13 @@ + * actions +|''begin transaction for client''| Joanna |''staff''| Bill| + +|''begin transaction for client''| Bob|''staff''| Pual| + +|''begin transaction for client''| Joe |''staff''| Bill| + * checks +|''transactions pending''| +|''client''|''staff''|''owing''| +|Joanna|Bill|0.00| +|Bob|Pual|0.00| +|Joe |Bill|0.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestSeveralTransactionsPending/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestSeveralTransactionsPending/properties.xml new file mode 100644 index 0000000000..c19d1ced29 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestSeveralTransactionsPending/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085051 + + + + + + + + 1123455404835 + -8365012030188945240 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionPending/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionPending/content.txt new file mode 100644 index 0000000000..ac20734d42 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionPending/content.txt @@ -0,0 +1,6 @@ +|''begin transaction for client''| Joanna |''staff''| Bill| + +|''transactions pending''| +|''client''|''staff''|''owing''| +|Joanna|Bill|0.00| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionPending/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionPending/properties.xml new file mode 100644 index 0000000000..da6b6cc8bc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionPending/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085051 + + + + + + + + 1123454862056 + -6273813595378271712 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionResume/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionResume/content.txt new file mode 100644 index 0000000000..135bfc365c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionResume/content.txt @@ -0,0 +1,9 @@ + * setup +|''begin transaction for client''| Joanna |''staff''| Bill| + * action +|''resume transaction for client''|Joanna| +|''complete transaction''| + * checks +|''transactions pending''| +|''client''|''staff''|''owing''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionResume/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionResume/properties.xml new file mode 100644 index 0000000000..89aeec27d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionResume/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085051 + + + + + + + + 1123455155756 + -3450783296165569753 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionsWithItemHire/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionsWithItemHire/content.txt new file mode 100644 index 0000000000..e26f8509e0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionsWithItemHire/content.txt @@ -0,0 +1,17 @@ +|''begin transaction for client''| Joanna |''staff''| Bill | +|''rent''|1||Truck|''for''|1 day| + +|''begin transaction for client''| Bob |''staff''| Bill | +|''rent''|1||Tricycle|''for''|1 day| +|''pay with cash $''|20.00| +|''complete transaction''| + +|''resume transaction for client''| Joanna | +|''pay with cash $''|2000.00| +|''complete transaction''| + +|''rental item subset''| +|''name''|''free count''| +|Truck|0| +|Tricycle|0| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionsWithItemHire/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionsWithItemHire/properties.xml new file mode 100644 index 0000000000..b6d6a7ffd9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/TestTransactionsWithItemHire/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115310 + + + + + + + + 1146959590737 + 5122277937013188827 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/content.txt new file mode 100644 index 0000000000..c377974232 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/content.txt @@ -0,0 +1,21 @@ +!3 Parallel Rentals +^TestTransactionPending +^TestSeveralTransactionsPending +^TestTransactionResume +^TestParallelTransactionStart +^TestTransactionsWithItemHire +^TestItemHireClashing + +^TestCannotResumeNonExistentTransaction +^TestOnlyOneClientTransactionAtOnce + +!3 Parallel Bookings + +^TestBookingsClash +^TestBookingsDoNotClash +^TestBookingsAndRentalClash +^TestRentalAndBookingClash +^TestRentalAndBookingDoNotClash + +!3 Parallel Sales + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/properties.xml new file mode 100644 index 0000000000..1c50851f87 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/ParallelTransactions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085052 + + + + + + + + 1124057703002 + 6074358922314555070 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/PaymentMixtureTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/PaymentMixtureTable/content.txt new file mode 100644 index 0000000000..fd2d6f9559 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/PaymentMixtureTable/content.txt @@ -0,0 +1,6 @@ +|''permitted combination of payments''| +||''cash''|''account''|''voucher''|''bonus''| +|''cash''|yes|yes|yes|yes| +|''account''|yes|yes|yes|yes| +|''voucher''|yes|yes|yes|no| +|''bonus''|yes|yes|no|yes| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/PaymentMixtureTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/PaymentMixtureTable/properties.xml new file mode 100644 index 0000000000..3d18089135 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/PaymentMixtureTable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1127691253691 + 1036577844218963107 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/SplitPaymentWithDifferentPaymentMode/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/SplitPaymentWithDifferentPaymentMode/content.txt new file mode 100644 index 0000000000..00a65cd0e2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/SplitPaymentWithDifferentPaymentMode/content.txt @@ -0,0 +1,50 @@ +!3 ''Additional Setup'' + * ''Bill tops up point balance to 25.00'' +|''begin admin transaction''|Bill| +|''topup''|25.00|''points for client''|Joanna| +|''complete transaction''| + + * ''Checks the initial point balance'' +|'''check'''|point balance for client|Joanna|25.00| + +!3 ''Try to pay with points & voucher and pay with cash instead.'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''rent''|1||hot water dispenser|''for''|3 days| +|''pay with points $''|25.00| +|'''reject'''|''pay with voucher $''|50.00| +|''pay with cash $''|48.20| +|''complete transaction''| + +|'''check'''|point balance for client|Joanna|0.00| + +!3 ''Try to pay with points & voucher and pay with account instead.'' + + * ''Bill tops up point balance to 25.00'' +|''begin admin transaction''|Bill| +|''topup''|25.00|''points for client''|Joanna| +|''complete transaction''| + +|check|''account owing for''| Joanna |''is''|0.00| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''rent''|1||hot water dispenser|''for''|3 days| +|''pay with points $''|25.00| +|'''reject'''|''pay with voucher $''|50.00| +|''pay with account $''|48.20| +|''complete transaction''| + +|check|''account owing for''| Joanna |''is''|48.20| + +!3 ''Pay with cash & account.'' +|check|''account owing for''| Joanna |''is''|48.20| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''rent''|1||hot water dispenser|''for''|3 days| +|''pay with account $''|25.00| +|''pay with cash $''|48.20| +|''complete transaction''| + +|check|''account owing for''| Joanna |''is''|73.20| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/SplitPaymentWithDifferentPaymentMode/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/SplitPaymentWithDifferentPaymentMode/properties.xml new file mode 100644 index 0000000000..e116d922bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/SplitPaymentWithDifferentPaymentMode/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1127944529893 + 4824259076770175521 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/content.txt new file mode 100644 index 0000000000..82e47dc3bb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/content.txt @@ -0,0 +1,2 @@ +^PaymentMixtureTable +^SplitPaymentWithDifferentPaymentMode \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/properties.xml new file mode 100644 index 0000000000..c04ed439a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PaymentMixture/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085040 + + + + + + + 1127690723552 + 71763154492947376 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AddPointSystemToAccount/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AddPointSystemToAccount/content.txt new file mode 100644 index 0000000000..9c93a5290d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AddPointSystemToAccount/content.txt @@ -0,0 +1,9 @@ +!3 ''The initial point balance for a client is 0.00'' +|'''check'''|point balance for client|Joanna|0.00| + +!3 ''Bill tops up point balance to 10.00'' +|''begin admin transaction''|Bill| +|''topup''|10.00|''points for client''|Joanna| +|''complete transaction''| + +|'''check'''|point balance for client|Joanna|10.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AddPointSystemToAccount/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AddPointSystemToAccount/properties.xml new file mode 100644 index 0000000000..ead547171c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AddPointSystemToAccount/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085049 + + + + + + + + 1123457191607 + 2331140634222955064 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AwardBonusPointToCustomer/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AwardBonusPointToCustomer/content.txt new file mode 100644 index 0000000000..e0a98b3b1f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AwardBonusPointToCustomer/content.txt @@ -0,0 +1,37 @@ +!3 ''No Rentez Dollar (point) is awarded'' + * ''The initial point balance for a client is 0.00'' +|'''check'''|point balance for client|Joanna|0.00| + + * ''No Rentez Dollar (point) is awarded for transaction less than $100.00'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''rent''|1||hot water dispenser|''for''|3 days| +|''pay with cash $''|73.20| +|''complete transaction''| + + * ''The point balance for a client remains 0.00'' +|'''check'''|point balance for client|Joanna|0.00| + +---- +!3 ''5% Rentez Dollar (point) is awarded'' + * ''Rentez Dollar (point) is awarded for transaction more than $100.00'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|4||coffee dispenser|''for''|3 days| +|''rent''|2||hot water dispenser|''for''|3 days| +|''pay with cash $''|146.40| +|''complete transaction''| + + * ''The point balance for a client changes'' +|'''check'''|point balance for client|Joanna|2.32| + +---- +!3 ''10% Rentez Dollar (point) is awarded'' + * ''More Rentez Dollar (point) is awarded for transaction more than $500.00'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|8||coffee dispenser|''for''|5 days| +|''rent''|8||hot water dispenser|''for''|5 days| +|''pay with cash $''|648.00| +|''complete transaction''| + + * ''The point balance for a client changes'' +|'''check'''|point balance for client|Joanna|37.12| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AwardBonusPointToCustomer/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AwardBonusPointToCustomer/properties.xml new file mode 100644 index 0000000000..a2c357c584 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/AwardBonusPointToCustomer/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085049 + + + + + + + + 1123716893504 + -8150539952829562050 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointCalculationSystem/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointCalculationSystem/content.txt new file mode 100644 index 0000000000..5207be4f26 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointCalculationSystem/content.txt @@ -0,0 +1,11 @@ + * For every dollar over $100 spent, 5 Rentnz cents are awarded; and for every dollor over $500 spent, 10 Rentnz cents are awarded. + * Note: the points will be round up to the nearest cent (e.g. 0.001 -> 0.01) +|calculated discount| +|''Actual $ spent''||''Rentnz $''| +|100.00||0.00| +|100.01||0.01| +|100.10||0.01| +|101.00||0.05| +|380.00||14.00| +|500.00||20.00| +|725.00||42.50| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointCalculationSystem/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointCalculationSystem/properties.xml new file mode 100644 index 0000000000..025bb4e94e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointCalculationSystem/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1127076107972 + -5075833404469614498 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForCancelledBookings/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForCancelledBookings/content.txt new file mode 100644 index 0000000000..5641ce6db7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForCancelledBookings/content.txt @@ -0,0 +1,27 @@ +---- * Given: +|''begin transaction for client''| Joanna |''staff''| Bill| +|''book''|8||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 days| +|''pay with cash $''|131.20| +|''complete transaction''| + + * Check: +''The point balance for a client changes:'' +|'''check'''|point balance for client|Joanna|1.56| + +---- * Actions: +|''time is now''|2004/05/08 09:02| + +|''begin transaction for client''| Joanna |''staff''| Bill| +|''cancel booking of''|8||coffee dispenser|''on''|2004/05/08 09:01|''for''|2 days| +|''refund cash $''|131.20| +|''complete transaction''| +---- * Checks: +''The point balance for a client changes:'' +|'''check'''|point balance for client|Joanna|0.00| + +|''client booking list''|Joanna| +|''rental item''|''count''|''start date''|''end date''| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|20| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForCancelledBookings/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForCancelledBookings/properties.xml new file mode 100644 index 0000000000..4088963bc6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForCancelledBookings/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115343 + + + + + + + + 1146959623524 + -7645251835151600991 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForDroppedTransasctions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForDroppedTransasctions/content.txt new file mode 100644 index 0000000000..baa83a8ea9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForDroppedTransasctions/content.txt @@ -0,0 +1,11 @@ +!3 ''Rentez Dollar (point) is awarded correctly'' + * ''Rentez Dollar (point) is awarded for transaction more than $100.00'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|5||coffee dispenser|''for''|3 days| +|''rent''|2||hot water dispenser|''for''|3 days| +|''drop rent''|2||hot water dispenser|''for''|3 days| +|''pay with cash $''|123.00| +|''complete transaction''| + + * ''The point balance for a client changes'' +|'''check'''|point balance for client|Joanna|1.15| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForDroppedTransasctions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForDroppedTransasctions/properties.xml new file mode 100644 index 0000000000..41a6882971 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/BonusPointsRemovedForDroppedTransasctions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085049 + + + + + + + + 1123717205836 + -7173203756661545675 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/NotEnoughBonusPoint/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/NotEnoughBonusPoint/content.txt new file mode 100644 index 0000000000..39740124a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/NotEnoughBonusPoint/content.txt @@ -0,0 +1,17 @@ +!3 ''Not Enough Points'' + * ''Bill tops up point balance to 10.00'' +|''begin admin transaction''|Bill| +|''topup''|10.00|''points for client''|Joanna| +|''complete transaction''| + +|'''check'''|point balance for client|Joanna|10.00| + +!3 ''Try to pay with points, but fails because not enough points avaiable'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''rent''|1||hot water dispenser|''for''|3 days| +|'''reject'''|''pay with points $''|73.20| +|''pay with cash $''|73.20| +|''complete transaction''| + +|'''check'''|point balance for client|Joanna|10.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/NotEnoughBonusPoint/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/NotEnoughBonusPoint/properties.xml new file mode 100644 index 0000000000..bc3e06767b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/NotEnoughBonusPoint/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085048 + + + + + + + + 1123458269176 + -4016581221828267043 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/PaymentByBonusPoint/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/PaymentByBonusPoint/content.txt new file mode 100644 index 0000000000..867db9d95f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/PaymentByBonusPoint/content.txt @@ -0,0 +1,17 @@ +!3 ''Additional Setup'' + * ''Bill tops up point balance to 100.00'' +|''begin admin transaction''|Bill| +|''topup''|100.00|''points for client''|Joanna| +|''complete transaction''| + +|'''check'''|point balance for client|Joanna|100.00| + +!3 ''Pay with points'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''rent''|1||hot water dispenser|''for''|3 days| +|''pay with points $''|73.20| +|''complete transaction''| + + * ''No bonus points awarded, because paid by points'' +|'''check'''|point balance for client|Joanna|26.80| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/PaymentByBonusPoint/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/PaymentByBonusPoint/properties.xml new file mode 100644 index 0000000000..a0207ae639 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/PaymentByBonusPoint/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085048 + + + + + + + + 1127294100389 + -6626700564417375040 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/SetUp/content.txt new file mode 100644 index 0000000000..30dfa985ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/SetUp/content.txt @@ -0,0 +1,17 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|20|1.50|8.20|60.00|0.00| +|hot water dispenser|20|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/SetUp/properties.xml new file mode 100644 index 0000000000..f344450e25 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1124061071781 + -2155371130004510200 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/content.txt new file mode 100644 index 0000000000..1206bb372e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/content.txt @@ -0,0 +1,9 @@ +^AddPointSystemToAccount +^BonusPointCalculationSystem +^AwardBonusPointToCustomer +^PaymentByBonusPoint +^NotEnoughBonusPoint +^BonusPointsRemovedForDroppedTransasctions +^BonusPointsRemovedForCancelledBookings + +^SetUp \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/properties.xml new file mode 100644 index 0000000000..4a8b817edb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/PromotionsBonusPointSystem/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085049 + + + + + + + + 1123716607685 + 8212283464856226775 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/AlteringTemplateAfterSetup/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/AlteringTemplateAfterSetup/content.txt new file mode 100644 index 0000000000..baeabea569 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/AlteringTemplateAfterSetup/content.txt @@ -0,0 +1,27 @@ +!3 Bill created the coffee break template, but then decided to make some changes, so he adjusts the template accordingly. + + * Setup template +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|1|''people''| + + * Begin transaction for client +|''begin transaction for client''|Joanna|''staff''|Bill| +|''fill template''|coffee break|''for''|30|''people for''|1 day| +|''pay with cash $''|95.90| +|''complete transaction''| + + * Alter coffee break +|''begin admin transaction''| Bill | +|''alter template''|coffee break| +|''one''|coffee table|''for''|20|''people''| +|''delete''|hot water dispenser| +|''complete transaction''| + + * Begin transaction for client +|''begin transaction for client''|Joanna|''staff''|Bill| +|''fill template''|coffee break|''for''|30|''people for''|1 day| +|''pay with cash $''|129.90| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/AlteringTemplateAfterSetup/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/AlteringTemplateAfterSetup/properties.xml new file mode 100644 index 0000000000..d64ed8fe9e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/AlteringTemplateAfterSetup/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1123715144924 + 6567447996653104337 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplate/content.txt new file mode 100644 index 0000000000..c0243a8a5c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplate/content.txt @@ -0,0 +1,6 @@ + * Setup simple template +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|1|''people''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplate/properties.xml new file mode 100644 index 0000000000..cd77c6242d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplate/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1122243846815 + -2884221405142426777 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplateWithItemLessThanOne/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplateWithItemLessThanOne/content.txt new file mode 100644 index 0000000000..1690d2b163 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplateWithItemLessThanOne/content.txt @@ -0,0 +1,24 @@ +!3 Previous experience has shown that more cups than people are needed at a coffee break. + + * Setup template with less than one item +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|0.9|''people''| + + * Begin transaction for client +|''begin transaction for client''|Joanna|''staff''|Bill| +|'''check'''|''fill template''|coffee break|''for''|20|''people for''|1 day|76.55| +|''pay with cash $''|76.55| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|1|2004/05/06 09:01|2004/05/07 09:01| +|hot water dispenser|1|2004/05/06 09:01|2004/05/07 09:01| +|coffee table|1|2004/05/06 09:01|2004/05/07 09:01| +|cup|23|2004/05/06 09:01|2004/05/07 09:01| + +Note: The number is rounded up. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplateWithItemLessThanOne/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplateWithItemLessThanOne/properties.xml new file mode 100644 index 0000000000..4488845482 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/CreateTemplateWithItemLessThanOne/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1122247260766 + -3909100611861689481 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateMorePeopleThanDivider/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateMorePeopleThanDivider/content.txt new file mode 100644 index 0000000000..44f9e9e08d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateMorePeopleThanDivider/content.txt @@ -0,0 +1,20 @@ + * Setup template +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|1|''people''| + + * Begin transaction for client +|''begin transaction for client''|Joanna|''staff''|Bill| +|''fill template''|coffee break|''for''|21|''people for''|1 day| +|''pay with cash $''|91.85| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|hot water dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|coffee table|1|2004/05/06 09:01|2004/05/07 09:01| +|cup|21|2004/05/06 09:01|2004/05/07 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateMorePeopleThanDivider/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateMorePeopleThanDivider/properties.xml new file mode 100644 index 0000000000..d4afac746d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateMorePeopleThanDivider/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1123456269264 + 1280872565368254037 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateNotEnoughItems/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateNotEnoughItems/content.txt new file mode 100644 index 0000000000..9fd9042637 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateNotEnoughItems/content.txt @@ -0,0 +1,16 @@ +!2 Not enough cups + * Setup template with less than one item +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|1|''people''| + + * Begin transaction for client +|''begin transaction for client''|Joanna|''staff''|Bill| +|'''not'''|''fill template''|coffee break|''for''|501|''people for''|1 day| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateNotEnoughItems/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateNotEnoughItems/properties.xml new file mode 100644 index 0000000000..cb026e1fe6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateNotEnoughItems/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1123456446885 + 6336855863071070817 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplatePartialFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplatePartialFails/content.txt new file mode 100644 index 0000000000..d204988bd2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplatePartialFails/content.txt @@ -0,0 +1,26 @@ + * Setup template +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|1|''people''| + +|''create template''|21st party| +|''one''|yardie glass|''for''|1000|''people''| +|''one''|balloon|''for''|10|''people''| +|''one''|cup|''for''|1|''people''| + + * Client fills 2 templates, 1st one pass, 2nd fails due to the lack of available items +|''begin transaction for client''|Joanna|''staff''|Bill| +|'''check'''|''fill template''|coffee break|''for''|21|''people for''|1 day|91.85| +|'''not'''|''fill template''|21st party|''for''|480|''people for''|1 day| +|''pay with cash $''|91.85| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|hot water dispenser|2|2004/05/06 09:01|2004/05/07 09:01| +|coffee table|1|2004/05/06 09:01|2004/05/07 09:01| +|cup|21|2004/05/06 09:01|2004/05/07 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplatePartialFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplatePartialFails/properties.xml new file mode 100644 index 0000000000..51bf82e9bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplatePartialFails/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1127949461713 + 4284801261666505147 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateSimple/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateSimple/content.txt new file mode 100644 index 0000000000..e945ad8340 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateSimple/content.txt @@ -0,0 +1,20 @@ + * Setup template +|''create template''|coffee break| +|''one''|coffee dispenser|''for''|20|''people''| +|''one''|hot water dispenser|''for''|20|''people''| +|''one''|coffee table|''for''|40|''people''| +|''one''|cup|''for''|1|''people''| + + * Begin transaction for client +|''begin transaction for client''|Joanna|''staff''|Bill| +|''fill template''|coffee break|''for''|20|''people for''|1 day| +|''pay with cash $''|75.20| +|''complete transaction''| + + * ''Checks'' +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|1|2004/05/06 09:01|2004/05/07 09:01| +|hot water dispenser|1|2004/05/06 09:01|2004/05/07 09:01| +|coffee table|1|2004/05/06 09:01|2004/05/07 09:01| +|cup|20|2004/05/06 09:01|2004/05/07 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateSimple/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateSimple/properties.xml new file mode 100644 index 0000000000..a3ef80859f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/RentalTemplateSimple/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1127943745083 + 8195695593662063839 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/SetUp/content.txt new file mode 100644 index 0000000000..1e8c080789 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/SetUp/content.txt @@ -0,0 +1,20 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|20|1.50|8.20|60.00|0.00| +|hot water dispenser|22|1.50|8.00|50.00|0.00| +|coffee table|10|10.00|50.00|200.00|0.00| +|cup|500|0.05|0.45|2.00|0.00| +|yardie glass|20|0.20|1.00|5.00|0.00| +|balloon|100|0.10|1.20|6.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/SetUp/properties.xml new file mode 100644 index 0000000000..6c438b8e61 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1123454626316 + -8904070440126407585 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/content.txt new file mode 100644 index 0000000000..a3343860ac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/content.txt @@ -0,0 +1,11 @@ +^CreateTemplate +^CreateTemplateWithItemLessThanOne +^AlteringTemplateAfterSetup + +^RentalTemplateSimple +^RentalTemplateMorePeopleThanDivider +^RentalTemplateNotEnoughItems +^RentalTemplatePartialFails + + +^SetUp diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/properties.xml new file mode 100644 index 0000000000..66fd9e928f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/RentalTemplates/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1122848531578 + 1363376450786306541 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/SetUp/content.txt new file mode 100644 index 0000000000..75ccd7921b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/SetUp/content.txt @@ -0,0 +1,21 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''sales item name''|''count''|''selling price''| +|coke|10|3.00| +|chips|10|5.00| +|cake|10|30.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| +|Bob|352 2353| +|Joe|334 2433| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| +|John|554 2362| +|Pual|232 2356| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/SetUp/properties.xml new file mode 100644 index 0000000000..915128997e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085050 + + + + + + + 1127339501566 + 738575812289962569 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyCancelled/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyCancelled/content.txt new file mode 100644 index 0000000000..472fb97422 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyCancelled/content.txt @@ -0,0 +1,7 @@ +|''begin transaction for client''| Bob |''staff''| Bill | +|''buy''| 5 || chips | +|''cancel transaction''| + +|sales goods subset| +| name | count | +| chips | 10 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyCancelled/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyCancelled/properties.xml new file mode 100644 index 0000000000..c4d824a340 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyCancelled/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1124315390055 + 8747604303187870007 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyFails/content.txt new file mode 100644 index 0000000000..7ed3a9c025 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyFails/content.txt @@ -0,0 +1,7 @@ +|''begin transaction for client''| Bob |''staff''| Bill | +|'''reject'''|''buy''| 15 || chips | +|''complete transaction''| + +|sales goods subset| +| name | count | +| chips | 10 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyFails/properties.xml new file mode 100644 index 0000000000..749f75d315 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuyFails/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1124315342245 + -8562502935259846100 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuys/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuys/content.txt new file mode 100644 index 0000000000..e6d8431d92 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuys/content.txt @@ -0,0 +1,8 @@ +|''begin transaction for client''| Bob |''staff''| Bill | +|''buy''| 5 || chips | +|''pay with cash $''|25.00| +|''complete transaction''| + +|sales goods subset| +| name | count | +| chips | 5 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuys/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuys/properties.xml new file mode 100644 index 0000000000..48e70f3605 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/TestBuys/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1124315266445 + 7725241645403930982 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/content.txt new file mode 100644 index 0000000000..349e2d3bf3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/content.txt @@ -0,0 +1,5 @@ +^SetUp +^TestBuys +^TestBuyFails +^TestBuyCancelled + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/properties.xml new file mode 100644 index 0000000000..804cd8aef1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoods/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085051 + + + + + + + + 1124314636877 + 5387087324381352973 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/AddSalesGoods/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/AddSalesGoods/content.txt new file mode 100644 index 0000000000..ee2b30b318 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/AddSalesGoods/content.txt @@ -0,0 +1,9 @@ +|''begin admin transaction''| Bill | +|''add sales item''|10|''of type''|cake|''costing''|3.00|''each''| +|''add sales item''|10|''of type''|chips|''costing''|5.00|''each''| +|''complete transaction''| + +|''sales item list''| +| ''name''| ''count'' |''selling price''| +| cake | 10 | 3.00 | +| chips | 10 | 5.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/AddSalesGoods/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/AddSalesGoods/properties.xml new file mode 100644 index 0000000000..1c036bcbaa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/AddSalesGoods/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085042 + + + + + + + + 1127342138258 + -27426084509133440 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/ModifySalesGoods/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/ModifySalesGoods/content.txt new file mode 100644 index 0000000000..9fbac0a4c6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/ModifySalesGoods/content.txt @@ -0,0 +1,18 @@ +---- Add Sales Goods +|''begin admin transaction''| Bill | +|''add sales item''|5|''of type''|cake|''costing''|3.00|''each''| +|''complete transaction''| + +|''sales item list''| +| ''name''| ''count'' |''selling price''| +| cake | 5 | 3.00 | + +---- Increase count +|''begin admin transaction''| Bill | +|''add ''|10|''to sales item of type''|cake| +|''complete transaction''| + +---- Check +|''sales item list''| +| ''name''| ''count'' |''selling price''| +| cake | 15 | 3.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/ModifySalesGoods/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/ModifySalesGoods/properties.xml new file mode 100644 index 0000000000..bb19d5b8a2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/ModifySalesGoods/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085042 + + + + + + + + 1128286347893 + -5925977281299936014 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectDuplicateTypes/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectDuplicateTypes/content.txt new file mode 100644 index 0000000000..a1a408b9ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectDuplicateTypes/content.txt @@ -0,0 +1,10 @@ +!3 ''The type of the sales goods cannot be duplicated'' + +|''begin admin transaction''| Bill | +|''add sales item''|10|''of type''|cake|''costing''|3.00|''each''| +|'''reject'''|''add sales item''|10|''of type''|cake|''costing''|3.00|''each''| +|''complete transaction''| + +|''sales item list''| +| ''name''| ''count'' |''selling price''| +| cake | 10 | 3.00 | diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectDuplicateTypes/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectDuplicateTypes/properties.xml new file mode 100644 index 0000000000..adab98816c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectDuplicateTypes/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085042 + + + + + + + + 1127342674259 + -6954409061839604336 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectModifySalesGoods/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectModifySalesGoods/content.txt new file mode 100644 index 0000000000..f27d863885 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectModifySalesGoods/content.txt @@ -0,0 +1,8 @@ +Can't modify sales goods that have not been added + +|''begin admin transaction''| Bill | +|''reject''|''add ''|10|''to sales item of type''|cake| +|''complete transaction''| + +|''sales item list''| +| ''name''| ''count'' |''selling price''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectModifySalesGoods/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectModifySalesGoods/properties.xml new file mode 100644 index 0000000000..3da86c6593 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/RejectModifySalesGoods/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081124201806 + + + + + + + + 1127343640338 + 7558316780233174125 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/SetUp/content.txt new file mode 100644 index 0000000000..e9837c65a5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/SetUp/content.txt @@ -0,0 +1,7 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2005/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/SetUp/properties.xml new file mode 100644 index 0000000000..e99ee1f970 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1127341717488 + -3212761090543971730 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/content.txt new file mode 100644 index 0000000000..c313655431 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/content.txt @@ -0,0 +1,6 @@ +^SetUp + +^AddSalesGoods +^RejectDuplicateTypes +^ModifySalesGoods +^RejectModifySalesGoods \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/properties.xml new file mode 100644 index 0000000000..690218909d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SalesGoodsAdminFunction/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085042 + + + + + + + + 1127343496988 + 7691377940742326689 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SetUp/content.txt new file mode 100644 index 0000000000..d5809316c2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SetUp/content.txt @@ -0,0 +1,21 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| +|coffee pot|20|1.50|12.00|60.00|0.00| +| coffee urn | 20| 1.50| 12.00|60.00| 50.00| +| table | 20 | 6.00 | 48.00| 200.00| 80.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| +|Xiaosong|555 1225| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SetUp/properties.xml new file mode 100644 index 0000000000..3512be3992 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1127291629359 + 288632049529454254 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/SetUp/content.txt new file mode 100644 index 0000000000..25b02529b2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/SetUp/content.txt @@ -0,0 +1,24 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|1|3.00|20.00|80.00|0.00| +|Bike|1|30.00|200.00|800.00|0.00| +|Truck|1|300.00|2000.00|8000.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| +|Bob|352 2353| +|Joe|334 2433| +|Bill|555 9876| +|John|554 2362| +|Pual|232 2356| + +|''setup''| +|''staff name''|''phone''|''Commission %''|''Discount %''| +|Bill|555 9876|0|0| +|John|554 2362|10|12.5| +|Pual|232 2356|20.01|30| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/SetUp/properties.xml new file mode 100644 index 0000000000..f093809d26 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085041 + + + + + + + 1124059772041 + 2620517932125232120 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithDiscount/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithDiscount/content.txt new file mode 100644 index 0000000000..9a7c027555 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithDiscount/content.txt @@ -0,0 +1,5 @@ +|''begin transaction for client''| John|''staff''| Bill| +|''rent''|1||Truck|''for''|1 day| +|''rent''|1||Tricycle|''for''|1 day| +|''pay with cash $''|1767.50| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithDiscount/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithDiscount/properties.xml new file mode 100644 index 0000000000..7be471c530 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithDiscount/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1124059752651 + 5098649713180579054 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithNoDiscount/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithNoDiscount/content.txt new file mode 100644 index 0000000000..8733d16d26 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithNoDiscount/content.txt @@ -0,0 +1,4 @@ +|''begin transaction for client''| Bill|''staff''| John| +|''rent''|1||Truck|''for''|1 day| +|''pay with cash $''|2000.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithNoDiscount/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithNoDiscount/properties.xml new file mode 100644 index 0000000000..e4c94c665e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/TestHireWithNoDiscount/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1124059510340 + -1329995170029507925 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/content.txt new file mode 100644 index 0000000000..44fb2d3b9e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/content.txt @@ -0,0 +1,3 @@ +^SetUp +^TestHireWithNoDiscount +^TestHireWithDiscount \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/properties.xml new file mode 100644 index 0000000000..9028698e0e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffDiscount/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085041 + + + + + + + + 1124059492871 + -7226320349744098275 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/SetUp/content.txt new file mode 100644 index 0000000000..768b30ddda --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/SetUp/content.txt @@ -0,0 +1,24 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|Tricycle|1|3.00|20.00|80.00|0.00| +|Bike|1|30.00|200.00|800.00|0.00| +|Truck|1|300.00|2000.00|8000.00|0.00| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| +|Bob|352 2353| +|Joe|334 2433| +|Bill|555 9876| +|John|554 2362| +|Pual|232 2356| + +|''setup''| +|''staff name''|''phone''|''Commission %''| +|Bill|555 9876|0| +|John|554 2362|10| +|Pual|232 2356|20.01| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/SetUp/properties.xml new file mode 100644 index 0000000000..20e7b24366 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060209085040 + + + + + + + 1124059073221 + 7099307065010799096 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/TestNoTransactionForStaffByTheSameStaff/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/TestNoTransactionForStaffByTheSameStaff/content.txt new file mode 100644 index 0000000000..4f5f6cd46d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/TestNoTransactionForStaffByTheSameStaff/content.txt @@ -0,0 +1,4 @@ +|'''reject'''|''begin transaction for client''| Pual|''staff''| Pual | + +|''begin transaction for client''| Bill|''staff''| Pual | +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/TestNoTransactionForStaffByTheSameStaff/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/TestNoTransactionForStaffByTheSameStaff/properties.xml new file mode 100644 index 0000000000..28f66c59d4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/TestNoTransactionForStaffByTheSameStaff/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1124059052651 + -1320614614892393127 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/content.txt new file mode 100644 index 0000000000..80fe141ae2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/content.txt @@ -0,0 +1,3 @@ +^SetUp +^TestNoTransactionForStaffByTheSameStaff + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/properties.xml new file mode 100644 index 0000000000..5c793c00b9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StaffHire/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1124058937551 + 9132459071083915069 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/NoRewardPoint/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/NoRewardPoint/content.txt new file mode 100644 index 0000000000..a3fdd09492 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/NoRewardPoint/content.txt @@ -0,0 +1,11 @@ +!3 ''Check the initial point balance for a client is zero'' +|'''check'''|point balance for client|Joanna|0.00| + +!3 ''Pay using a voucher. No award is given no matter what.'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|6||coffee dispenser|''for''|3 days| +|''pay with voucher $''|150.00| +|''complete transaction''| + +!3 ''Check the point balance for a client is still zero'' +|'''check'''|point balance for client|Joanna|0.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/NoRewardPoint/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/NoRewardPoint/properties.xml new file mode 100644 index 0000000000..a58b847559 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/NoRewardPoint/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085043 + + + + + + + + 1127087805290 + -5798641895033807559 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PayByVouchers/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PayByVouchers/content.txt new file mode 100644 index 0000000000..b073e1ec00 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PayByVouchers/content.txt @@ -0,0 +1,16 @@ +!3 ''Pay using a voucher. No change is given.'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''pay with voucher $''|50.00| +|''complete transaction''| + +!3 ''Check the point balance for a client is still zero'' +|'''check'''|point balance for client|Joanna|0.00| + +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee dispenser|2|2004/05/06 09:01|2004/05/09 09:01| + +|''rental item subset''| +|''name''|''free count''| +|coffee dispenser|8| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PayByVouchers/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PayByVouchers/properties.xml new file mode 100644 index 0000000000..b99d1714d2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PayByVouchers/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060507115412 + + + + + + + + 1146959652145 + -4781579671928585866 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PurchaseVouchers/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PurchaseVouchers/content.txt new file mode 100644 index 0000000000..45eead40f4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PurchaseVouchers/content.txt @@ -0,0 +1,8 @@ +!3 ''Purchase a voucher.'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''ensure'''|''purchase voucher $''|150.00| +|''complete transaction''| + + +!3 ''Check the point balance for a client has increased'' +|'''check'''|point balance for client|Joanna|2.50| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PurchaseVouchers/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PurchaseVouchers/properties.xml new file mode 100644 index 0000000000..cfd54863bb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/PurchaseVouchers/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085043 + + + + + + + + 1127347123888 + -184914508412706904 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/SetUp/content.txt new file mode 100644 index 0000000000..66187be5a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/SetUp/content.txt @@ -0,0 +1,17 @@ +|!-rent.StartApplication-!| + +|''setup''| +|''rental item name''|''count''|''$/hour''|''$/day''|''$/week''|''deposit''| +|coffee dispenser|10|1.50|8.20|60.00|0.00| +|hot water dispenser|12|1.50|8.00|50.00|0.00| +|cup|500|0.05|0.45|2.00|0.10| + +|''setup''| +|''client name''|''phone''| +|Joanna|373 7599| + +|''setup''| +|''staff name''|''phone''| +|Bill|555 9876| + +|''time is now''| 2004/05/06 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/SetUp/properties.xml new file mode 100644 index 0000000000..50983d5d04 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/SetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201806 + + + + + + + 1123458686813 + 1869858536434922108 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/TestExpiryDate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/TestExpiryDate/content.txt new file mode 100644 index 0000000000..a01b6251ee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/TestExpiryDate/content.txt @@ -0,0 +1,6 @@ +!3 ''Pay using a voucher with expire date.'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|'''reject'''|''pay with voucher $''|50.00|''that expires after''|2004/05/05 17:00| +|''pay with voucher $''|50.00|''that expires after''|2004/05/06 17:00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/TestExpiryDate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/TestExpiryDate/properties.xml new file mode 100644 index 0000000000..2e82139586 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/TestExpiryDate/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085043 + + + + + + + + 1124056521271 + -3960653421468261999 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/content.txt new file mode 100644 index 0000000000..081ba30af5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/content.txt @@ -0,0 +1,6 @@ +^PayByVouchers +^NoRewardPoint +^TestExpiryDate +^PurchaseVouchers + +^SetUp \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/properties.xml new file mode 100644 index 0000000000..09a7722223 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/StoreVouchers/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085043 + + + + + + + + 1127087469980 + 1436819798953651318 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/TestCancelReturn/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/TestCancelReturn/content.txt new file mode 100644 index 0000000000..65c48552d9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/TestCancelReturn/content.txt @@ -0,0 +1,25 @@ +!2 Hire items with deposit and return them +|''begin transaction for client''| Joanna |''staff''| Bill | +|check|''rent''| 3 || coffee urn |''for''|2 days|222.00 | +|check|''rent''| 4 || coffee urn |''for''|3 days|344.00 | +|check|''rent''| 7 || table |''for''|3 days|1568.00 | +|''pay with cash $''| 2134.00 | +|''complete transaction''| +---- + * Two days later... +|''time is now''| 2004/05/08 08:30 | + * Joanna returns the items and Bob refunds the bond, but Joanna decides to not return them after all: +|''begin transaction for client''| Joanna |''staff''| Bill | +|check|''return items''| 3 || coffee urn | -150.00 | +|''refund cash $''| 150.00 | +|not|''cancel transaction''| +|''pay with cash $''| 150.00 | +|''cancel transaction''| + * But she needs to pay Bob back the refunded money first, before it can be cancelled + + * The client's hires are unaltered: +|''rentals of client''|Joanna| +|''rental item''|''count''|''start date''|''end date''| +|coffee urn|3|2004/05/06 09:01|2004/05/08 09:01| +|coffee urn|4|2004/05/06 09:01|2004/05/09 09:01| +|table|7|2004/05/06 09:01|2004/05/09 09:01| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/TestCancelReturn/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/TestCancelReturn/properties.xml new file mode 100644 index 0000000000..ba9a68123f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/TestCancelReturn/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085039 + + + + + + + + 1124320529445 + 4713910613908832228 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/content.txt new file mode 100644 index 0000000000..cfabf7117e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/content.txt @@ -0,0 +1 @@ +^TestCancelReturn \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/properties.xml new file mode 100644 index 0000000000..2dda54eec1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionCancel/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085040 + + + + + + + + 1124319758193 + -8355419423773655913 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestOverpaidRejects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestOverpaidRejects/content.txt new file mode 100644 index 0000000000..9d3c7de928 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestOverpaidRejects/content.txt @@ -0,0 +1,7 @@ +!3 ''Transactions actions that fail, as too much paid'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''pay with cash $''|149.20| +|'''not'''|''complete transaction''| +|''refund cash $''|100.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestOverpaidRejects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestOverpaidRejects/properties.xml new file mode 100644 index 0000000000..891442218f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestOverpaidRejects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085046 + + + + + + + + 1124318777074 + -6274053839642995730 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionCompleteRejects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionCompleteRejects/content.txt new file mode 100644 index 0000000000..82d345b36f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionCompleteRejects/content.txt @@ -0,0 +1,3 @@ +!3 Transaction complete fails as it is not yet started: + +|not|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionCompleteRejects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionCompleteRejects/properties.xml new file mode 100644 index 0000000000..b5248a6964 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionCompleteRejects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1124318084845 + -3534797280629177394 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionStartRejects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionStartRejects/content.txt new file mode 100644 index 0000000000..854778a4a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionStartRejects/content.txt @@ -0,0 +1,5 @@ +!3 Transaction starts that fail to work: + +|'''not'''|''begin transaction for client''|Unknown Client|''staff''|Bill| + +|'''not'''|''begin transaction for client''|Joanna|''staff''|Unknown Staff| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionStartRejects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionStartRejects/properties.xml new file mode 100644 index 0000000000..2bbdf23ae9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestTransactionStartRejects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1124317527674 + 2511078850611527843 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnavailableHireItems/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnavailableHireItems/content.txt new file mode 100644 index 0000000000..85d6f609a8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnavailableHireItems/content.txt @@ -0,0 +1,5 @@ +!3 ''Transactions actions that fail, as hire items unavailable'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|'''not'''|''rent''|500||coffee dispenser|''for''|3 days| +|'''not'''|''rent''|500||hot water dispenser|''for''|3 days| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnavailableHireItems/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnavailableHireItems/properties.xml new file mode 100644 index 0000000000..3e802059a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnavailableHireItems/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1124318289594 + -707840927161267017 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnderpaidRejects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnderpaidRejects/content.txt new file mode 100644 index 0000000000..29737ab800 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnderpaidRejects/content.txt @@ -0,0 +1,7 @@ +!3 ''Transactions actions that fail, as under paid'' +|''begin transaction for client''| Joanna |''staff''| Bill| +|''rent''|2||coffee dispenser|''for''|3 days| +|''pay with cash $''|29.20| +|'''not'''|''complete transaction''| +|''pay with cash $''|20.00| +|''complete transaction''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnderpaidRejects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnderpaidRejects/properties.xml new file mode 100644 index 0000000000..bffd5fef6a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/TestUnderpaidRejects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1127343931048 + 8467915733330866999 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/content.txt new file mode 100644 index 0000000000..88a4f9617a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/content.txt @@ -0,0 +1,5 @@ +^TestTransactionStartRejects +^TestTransactionCompleteRejects +^TestUnavailableHireItems +^TestOverpaidRejects +^TestUnderpaidRejects diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/properties.xml new file mode 100644 index 0000000000..a47ed7b4c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/TransactionReject/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060209085047 + + + + + + + + 1124316930729 + -1236657470764853998 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/content.txt b/fitnesse/FitNesseRoot/FitLibrary/RentEz/content.txt new file mode 100644 index 0000000000..a56d87c814 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/content.txt @@ -0,0 +1,56 @@ +!3 Example Storytests +These storytests and associated code were developed in 2004 and 2005 at the University of Auckland, New Zealand. + +Rick Mugridge wrote these initial storytests in 2004 for a Software Engineering year 3 project course he taught in agile software development. The storytests were used in 2004 by 70 students, in teams of 6, to develop the software for RentEz in a storytest driven manner. + +An earlier version of these storytests served as examples in the ${fitBook}. + +In 2005, the best code from 2004 was distributed to 80 students in the next year's version of the project course. Six year 4 students acted as customers and project managers under Rick's supervision, and were responsible for writing new stories and adding considerably to the set of storytests from 2004. These extra storytests served to drive further development work on RentEz by the year 3 students. + +In both years, the students met for 6 hours a week for one semester to do their project work. They were discouraged from working on the project outside those times. They practiced all of the XP practices, although only some teams were proficient at TDD. + +The storytests distributed here are from the end of the 2005 project course. The code supplied here was from one of the best teams from that year. All the students involved from 2005 have given permission to make these examples available. + +|!contents| + +^SetUp +!2 Storytests +^CashRentals +^CashReturns +^CashDeposits +^AdminFunctions +^AdminFunctions2 +^BookedRentals +^SalesGoods +^ChargeFairly +^CannotPay +^AccountHire +^BookingClash +^TransactionReject +^TransactionCancel +^DroppingTransactionItem +^RentalTemplates +^BookingTemplates +^ParallelTransactions +^PromotionsBonusPointSystem +^StoreVouchers +^PaymentMixture +^GeneralizedRentalRestrictions +^CommissionForStaffMembers +^EditingTransactionItem +^StaffHire +^ParallelAdminTransactions +^StaffDiscount +^CreditCard +^GoodsDelivery +^ClientManagement +^SalesGoodsAdminFunction +^DeliveryAdminFunction +^DeliveryManagement ( ignore for now ) +^LateReturns +^CompositeTemplate + +!path lib/rentEz.jar +#!path C:\Documents and Settings\RimuResearch\My Documents\work\RentEz\classes +!define TEST_RUNNER {fitlibrary.suite.FitLibraryServer} + diff --git a/fitnesse/FitNesseRoot/FitLibrary/RentEz/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/RentEz/properties.xml new file mode 100644 index 0000000000..78e506d898 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/RentEz/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1228537761703 + -1163883315986998955 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AddingGlobalActionsObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AddingGlobalActionsObject/content.txt new file mode 100644 index 0000000000..53a19527a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AddingGlobalActionsObject/content.txt @@ -0,0 +1,20 @@ +A standard global object provides methods that correspond to standard ''global actions''. For example, the '''comment''' action (which means that the rest of the table is ignored) is a global action defined within the standard global object. + +It's possible to add custom global objects with ''global actions'' that can be used anywhere in a suite of storytests. + +These are useful for the following: + + * Avoiding the need to mention class and package names in tables + * including actions that are useful within a range of storytests. This avoids the need for specialised fixturing code for each such case. + +Such ''global objects'' are best added within the ''!-SuiteSetUp-!'' page so that they are available in all storytests in that suite. + +For example: + +|''add global''|!-fitlibrary.specify.global.ExtraGlobal-!| + +An object of the class !-fitlibrary.tutorial.Global-! is added as a global object. This includes a method ''withACalculator()'', which returns an object, so that a storytest can begin with: + +|''new global action''| + +For an example of using this with a suite, see .FitLibrary.BeginningTutorial.CalculatorBusinessProcessExample. You will need to runt the test to see it all. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AddingGlobalActionsObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AddingGlobalActionsObject/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AddingGlobalActionsObject/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessDirectlyToFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessDirectlyToFixture/content.txt new file mode 100644 index 0000000000..a758a4eadb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessDirectlyToFixture/content.txt @@ -0,0 +1,28 @@ +!3 Handle Fit fixtures as Alien Evaluators +!**< def +!define test {!|fit.specify.AlienEvaluator| + +|''!-fit.specify.MyColumnFixture-!''| +|x|x()| +|43|43| +|5|5| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fit.specify.AlienEvaluator
+
+ + + + + + + + + + + +
fit.specify.MyColumnFixture
xx()
4343
55
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessDirectlyToFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessDirectlyToFixture/properties.xml new file mode 100644 index 0000000000..f954ad57d6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessDirectlyToFixture/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1240528160483 + 1758090809632300227 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessThroughAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessThroughAction/content.txt new file mode 100644 index 0000000000..769ddc3b0c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessThroughAction/content.txt @@ -0,0 +1,28 @@ +!3 Handle Fit fixtures as Alien Evaluators +!**< def +!define test {!|fit.specify.AlienEvaluator| + +|''fixture''| +|x|x()| +|43|43| +|5|5| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fit.specify.AlienEvaluator
+
+ + + + + + + + + + + +
fixture
xx()
4343
55
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessThroughAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessThroughAction/properties.xml new file mode 100644 index 0000000000..0f26ffcce5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/AccessThroughAction/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1240528189405 + -7192460939695145151 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/DynamicVariablesSubstitutedForFit/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/DynamicVariablesSubstitutedForFit/content.txt new file mode 100644 index 0000000000..d0300557a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/DynamicVariablesSubstitutedForFit/content.txt @@ -0,0 +1,39 @@ +Just before Fit is run on a particular table, all dynamic variables are substituted in that table's cells. This allows Fit tables, used within the context of a ''!-DoFixture-!'' in flow, to make use of dynamic variables that are set from with ''!-FitLibrary-!'' tables/fixtures. + +!**< def +!define test (!|fitlibrary.DoFixture| + +|set|fortyThree|to|43| + +|!-fit.specify.MyColumnFixture-!| +|x|x?| +|43|@{fortyThree}| +|5|5| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.DoFixture
+
+ + + + + +
setfortyThreeto43
+
+ + + + + + + + + + + +
fit.specify.MyColumnFixture
xx?
4343
55
+-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/DynamicVariablesSubstitutedForFit/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/DynamicVariablesSubstitutedForFit/properties.xml new file mode 100644 index 0000000000..ad10e3629c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/DynamicVariablesSubstitutedForFit/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090424104046 + + + + + + + + + 1240526446731 + 3859788820036281684 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/content.txt new file mode 100644 index 0000000000..085d164fab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/content.txt @@ -0,0 +1,3 @@ +^AccessThroughAction +^AccessDirectlyToFixture +^DynamicVariablesSubstitutedForFit diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/properties.xml new file mode 100644 index 0000000000..fdc63fd735 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AlienEvaluator/properties.xml @@ -0,0 +1,16 @@ + + + + + 20090424103412 + + + + + + + + + 1240526052239 + -1782023709235554267 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInFirstTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInFirstTable/content.txt new file mode 100644 index 0000000000..68bc8fe27d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInFirstTable/content.txt @@ -0,0 +1,13 @@ +|fitlibrary.specify.autowrap.Pojo| + +|identity|1|is|1| + +|identity|1|becomes|1| + +|check|identity|1|1| + +|set|x|identity|2| + +|get|@{x}|is|2| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInFirstTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInFirstTable/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInFirstTable/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInLaterTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInLaterTable/content.txt new file mode 100644 index 0000000000..ccd1065c74 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInLaterTable/content.txt @@ -0,0 +1,12 @@ +!|fitlibrary.traverse.workflow.DoTraverse| + +|set|x|=|2| + +|get|@{x}|is|2| + +|fitlibrary.specify.autowrap.Pojo| +|identity|1|is|1| + +|identity|1|becomes|1| + +|check|identity|1|1| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInLaterTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInLaterTable/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/PojoInLaterTable/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/content.txt new file mode 100644 index 0000000000..6fc4902533 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/content.txt @@ -0,0 +1,2 @@ +^PojoInFirstTable +^PojoInLaterTable diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/properties.xml new file mode 100644 index 0000000000..5f567cb6b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/AutoWrapWithDo/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CamelNames/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CamelNames/content.txt new file mode 100644 index 0000000000..708ac9a7f5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CamelNames/content.txt @@ -0,0 +1,16 @@ +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
namegetCamelFieldget camel field+
twotwotwotwo+
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
namegetCamelFieldget camel field+
twotwotwotwo+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CamelNames/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CamelNames/properties.xml new file mode 100644 index 0000000000..fb2fbe4008 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CamelNames/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153270876600 + -7202746542643229937 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CannotParse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CannotParse/content.txt new file mode 100644 index 0000000000..447027c1f8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CannotParse/content.txt @@ -0,0 +1,18 @@ +!2 An exception is thrown if the input for a field, or the expected value of a method, is of a type that can't be parsed (as it's not defined). +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
calendaruse
24 Sept 200324 Sept 2003
-!| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
calendaruse
24 Sept 2003
24 Sept 2003
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CannotParse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CannotParse/properties.xml new file mode 100644 index 0000000000..dba15b58fd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/CannotParse/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1155961296726 + -7459886299716137658 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/DoubleUse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/DoubleUse/content.txt new file mode 100644 index 0000000000..eb9df653d9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/DoubleUse/content.txt @@ -0,0 +1,48 @@ +!2 One ''!-CalculateFixture-!'' object can be used more than once +!**< def +!define test ( +!|fitlibrary.specify.calculate.DoubleUse| + +|''calculating''| +|a|b||c| +|1|2||3| + +|''calculating''| +|a|b||c| +|1|2||3| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.calculate.DoubleUse
+
+ + + + + + + + + + + + +
calculating
ab c
12 3
+
+ + + + + + + + + + + + +
calculating
ab c
12 3
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/DoubleUse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/DoubleUse/properties.xml new file mode 100644 index 0000000000..97c2915485 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/DoubleUse/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225512253937 + 3174509219649923320 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyColumnMissing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyColumnMissing/content.txt new file mode 100644 index 0000000000..0f0ee7df78 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyColumnMissing/content.txt @@ -0,0 +1,15 @@ +!2 An exception is thrown if the empty column is missing. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + +
calculate
unknownField
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + +
calculate
unknownField
No calculated column
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyColumnMissing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyColumnMissing/properties.xml new file mode 100644 index 0000000000..812e6960cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyColumnMissing/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153270483334 + -7332085410180921673 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyGivenNames/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyGivenNames/content.txt new file mode 100644 index 0000000000..9804e77aa1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyGivenNames/content.txt @@ -0,0 +1,17 @@ +!2 Given columns don't need to be named. The expected columns appear to the right of the last empty column. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
 sum
10111
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
 sum
10111
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyGivenNames/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyGivenNames/properties.xml new file mode 100644 index 0000000000..ee1bde7c47 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/EmptyGivenNames/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271160518 + -2174666089145922395 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/MissingMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/MissingMethod/content.txt new file mode 100644 index 0000000000..7fc80b3cc7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/MissingMethod/content.txt @@ -0,0 +1,37 @@ +!2 An exception is thrown if a method doesn't exist. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
unknownMethod
2
+ + + + +
calculate
some argunknownMethod
21
+ + + + +
calculate
some arganotherunknownMethod
231
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
unknownMethod
Missing method
2
+ + + + +
calculate
some argunknownMethod
Missing method
21
+ + + + +
calculate
some arganotherunknownMethod
Missing method
231
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/MissingMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/MissingMethod/properties.xml new file mode 100644 index 0000000000..31d8778d2e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/MissingMethod/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153270234106 + 5958404264111027618 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoExpectedColumns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoExpectedColumns/content.txt new file mode 100644 index 0000000000..53cf6a499f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoExpectedColumns/content.txt @@ -0,0 +1,15 @@ +!2 An exception is thrown if there are no expected columns; ie, named columns after the last empty column. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + +
calculate
 
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + +
calculate
 
No calculated column
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoExpectedColumns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoExpectedColumns/properties.xml new file mode 100644 index 0000000000..bb56baa10e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoExpectedColumns/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271878861 + -8296631744714391578 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoteColumns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoteColumns/content.txt new file mode 100644 index 0000000000..5563a1d444 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoteColumns/content.txt @@ -0,0 +1,21 @@ +!2 All columns after a second empty column are ignored +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + + +
calculate
abplusnotesnotes
11213nn
-2107105n n
01213nn
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + + +
calculate
abplusnotesnotes
11213nn
-2107105n n
01213 expected
12 actual
nn
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoteColumns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoteColumns/properties.xml new file mode 100644 index 0000000000..742241a27e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/NoteColumns/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271184553 + 7144341541883464887 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/ResultingObjectIsSubType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/ResultingObjectIsSubType/content.txt new file mode 100644 index 0000000000..a4315730b3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/ResultingObjectIsSubType/content.txt @@ -0,0 +1,45 @@ +!2 If the method returns an object that's a subtype of the result type of the method, use a specialised Parser to parse the expected result and check it. +!**< def +!define test ( +!|fitlibrary.specify.calculate.ResultingObjectIsSubType| + +|''calculate''| +|''colour''||''superclass''| +|red||red| + +|''calculate''| +|''colour''||''interface''| +|red||red| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.calculate.ResultingObjectIsSubType
+
+ + + + + + + + + + +
calculate
colour superclass
red red
+
+ + + + + + + + + + +
calculate
colour interface
red red
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/ResultingObjectIsSubType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/ResultingObjectIsSubType/properties.xml new file mode 100644 index 0000000000..ba628e9fc7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/ResultingObjectIsSubType/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225512293390 + -1796944726981298897 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsLong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsLong/content.txt new file mode 100644 index 0000000000..3bb946953f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsLong/content.txt @@ -0,0 +1,17 @@ +!2 A row that's too long leads to an exception. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
ab plus
112 1314
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
ab plus
1
Row should be 4 cells wide
12 1314
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsLong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsLong/properties.xml new file mode 100644 index 0000000000..ae52134d78 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsLong/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271901534 + 519447056936584041 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsShort/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsShort/content.txt new file mode 100644 index 0000000000..7aae3133ba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsShort/content.txt @@ -0,0 +1,21 @@ +!2 Rows can be incomplete, with warning. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + + +
calculate
abplus
112
112
1121314
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + + +
calculate
abplus
1
Row should be 4 cells wide
12
1
Row should be 4 cells wide
12
1
Row should be 4 cells wide
121314
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsShort/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsShort/properties.xml new file mode 100644 index 0000000000..837d8cae64 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/RowsShort/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271125578 + -681375170080285182 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyBlank/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyBlank/content.txt new file mode 100644 index 0000000000..ad780acffc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyBlank/content.txt @@ -0,0 +1,23 @@ +!2 If a field cell contains a repeat string that has been defined by the fixture (here ''), the previous value is provided instead for that cell in the result. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest3
+ + + + + + + +
calc
abplus
000
11
-10
123
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest3
+ + + + + + + +
calc
abplus
000
11
-10
123
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyBlank/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyBlank/properties.xml new file mode 100644 index 0000000000..5cc0fe29d5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyBlank/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120414 + + + + + + + + 1153271807919 + -2671785944531637649 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyDoubleQuote/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyDoubleQuote/content.txt new file mode 100644 index 0000000000..7ed8696782 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyDoubleQuote/content.txt @@ -0,0 +1,23 @@ +!2 If a field cell contains a repeat string that has been defined by the fixture (here '"'), the previous value is provided instead for that cell in the result. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest2
+ + + + + + + +
calc
abplus
000
"11
-1"0
123
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest2
+ + + + + + + +
calc
abplus
000
"11
-1"0
123
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyDoubleQuote/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyDoubleQuote/properties.xml new file mode 100644 index 0000000000..5a247e5219 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialEmptyDoubleQuote/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271681828 + 5325393806818855466 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialError/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialError/content.txt new file mode 100644 index 0000000000..b9a24dc265 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialError/content.txt @@ -0,0 +1,20 @@ +!3 Exceptions are expected when a special string is supplied by the fixture, such as "exception". If the cell is blank and an exception is thrown, "error" is reported. The exception is reported if something else was expected. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest2
+ + + + + +
calc
exception method
exception
no exception
-!| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest2
+ + + + + +
calc
exception method
exception
no exception
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialError/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialError/properties.xml new file mode 100644 index 0000000000..9c9cefbf5b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialError/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081124201810 + + + + + + + + 1153271566572 + -4735813490533137686 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialErrorWrong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialErrorWrong/content.txt new file mode 100644 index 0000000000..e0f88b49ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialErrorWrong/content.txt @@ -0,0 +1,17 @@ +!3 It's wrong if an exception is not thrown when it's expected. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest2
+ + + + +
calc
abplus
12exception
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest2
+ + + + +
calc
abplus
12exception
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialErrorWrong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialErrorWrong/properties.xml new file mode 100644 index 0000000000..bf80d689e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/SpecialErrorWrong/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271649571 + -5046131970428573945 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestDifferingResults/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestDifferingResults/content.txt new file mode 100644 index 0000000000..fc706f9557 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestDifferingResults/content.txt @@ -0,0 +1,31 @@ +!2 A method need not take any arguments and may return different results on each call. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + +
calculate
increment
1
2
+ + + + + +
calculate
incrementincrement
34
56
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + +
calculate
increment
1
2
+ + + + + +
calculate
incrementincrement
34
56
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestDifferingResults/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestDifferingResults/properties.xml new file mode 100644 index 0000000000..b644c48f73 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestDifferingResults/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120414 + + + + + + + + 1153271096947 + -5409011952379006936 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestGraphics/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestGraphics/content.txt new file mode 100644 index 0000000000..dc6864c4df --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestGraphics/content.txt @@ -0,0 +1,19 @@ +!2 The values can be graphic +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + +
calculate
12 +
ab 
  • a
  • b
A
  • a
B
  • b
 
  • A
    • a
  • B
    • b
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + +
calculate
12 +
ab 
  • a
  • b
A
  • a
B
  • b
 
  • A
    • a
  • B
    • b
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestGraphics/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestGraphics/properties.xml new file mode 100644 index 0000000000..17b73bbc32 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestGraphics/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271841938 + 5615900195206853262 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestLeftToRight/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestLeftToRight/content.txt new file mode 100644 index 0000000000..849daf1eb4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestLeftToRight/content.txt @@ -0,0 +1,19 @@ +!2 Inputs and outputs are processed from left to right. Processing continues across a row even if an earlier method call was wrong. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + +
calculate
aplusplus
111
202
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + +
calculate
aplusplus
111
20 expected
2 actual
2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestLeftToRight/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestLeftToRight/properties.xml new file mode 100644 index 0000000000..a2b0a921c2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestLeftToRight/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271070509 + -914929711703074092 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUp/content.txt new file mode 100644 index 0000000000..38e1db5aff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUp/content.txt @@ -0,0 +1,16 @@ +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.DoCalculateFixtureSetUp
+ + + + +
calc set up
aresult
12
-!|!- + +
fitlibrary.specify.DoCalculateFixtureSetUp
+ + + + +
calc set up
aresult
12
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUp/properties.xml new file mode 100644 index 0000000000..2122a872f2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUp/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120414 + + + + + + + + 1137289414450 + 4293143767444376966 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUpException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUpException/content.txt new file mode 100644 index 0000000000..e53358514e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUpException/content.txt @@ -0,0 +1,17 @@ +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.DoCalculateFixtureSetUp
+ + + + +
calculate set up with exception
aresult
12
-!|!- + +
fitlibrary.specify.DoCalculateFixtureSetUp
+ + + + +
calculate set up with exception
aresult
12
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUpException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUpException/properties.xml new file mode 100644 index 0000000000..8dbe2cae80 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestNonFlowSetUpException/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120414 + + + + + + + + 1137289949409 + -7050689884185405336 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUp/content.txt new file mode 100644 index 0000000000..ac722f1c46 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUp/content.txt @@ -0,0 +1,10 @@ +!|fitlibrary.spec.SpecifyFixture| +|!- + + + +
fitlibrary.specify.CalculateFixtureSetUp
aresult
12
-!|!- + + + +
fitlibrary.specify.CalculateFixtureSetUp
aresult
12
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUp/properties.xml new file mode 100644 index 0000000000..c5779577a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUp/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120414 + + + + + + + + 1137287536609 + -5481750406729260815 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUpExceptionShown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUpExceptionShown/content.txt new file mode 100644 index 0000000000..222d2205f4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUpExceptionShown/content.txt @@ -0,0 +1,13 @@ + * setUp() is called once the fixture object has started running the table + * If it throws an exception inside setUp(), this is shown in the report (and it continues) +!|fitlibrary.spec.SpecifyFixture| +|!- + + + +
fitlibrary.specify.CalculateFixtureSetUpWithException
aresult
12
-!|!- + + + +
fitlibrary.specify.CalculateFixtureSetUpWithException
aresult
12
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUpExceptionShown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUpExceptionShown/properties.xml new file mode 100644 index 0000000000..f8e6ff2d7a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestSetUpExceptionShown/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101174653 + + + + + + + + 1225514813609 + 7102375403952097025 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestTearDown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestTearDown/content.txt new file mode 100644 index 0000000000..ae9b68db48 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestTearDown/content.txt @@ -0,0 +1,16 @@ + * tearDown() is called once the fixture object has finished running the table + * To check this has happened, the fixture here throws an exception inside tearDown() + * So we check that that has happened + * The calculation row also throws an exception, and we check that that's also reported, and that tearDown() is still called +!|fitlibrary.spec.SpecifyFixture| +|!- + + + +
fitlibrary.specify.CalculateFixtureTearDown
aresult
12
-!|!- + + + +
fitlibrary.specify.CalculateFixtureTearDown
aresult
12
+
Error in storytest tear down:
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestTearDown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestTearDown/properties.xml new file mode 100644 index 0000000000..09b9371f01 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/TestTearDown/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1166230161244 + -5245123654193388282 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/content.txt new file mode 100644 index 0000000000..53f7b3b1d6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/content.txt @@ -0,0 +1,6 @@ +^TestSetUp +^TestTearDown +^TestSetUpExceptionShown + +^TestNonFlowSetUp +^TestNonFlowSetUpException diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/properties.xml new file mode 100644 index 0000000000..1e1e95f538 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSetUpTearDown/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061216134957 + + + + + + + + 1166230197706 + 3992966996912218068 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSeveralMethods/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSeveralMethods/content.txt new file mode 100644 index 0000000000..a7cdc4ef53 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSeveralMethods/content.txt @@ -0,0 +1,17 @@ +!2 A table can include several methods. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
ab plusminus
112 13-11
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
ab plusminus
112 13-11
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSeveralMethods/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSeveralMethods/properties.xml new file mode 100644 index 0000000000..2e7ba1d73e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestSeveralMethods/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153271041617 + 8852517693796737060 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsExplicit/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsExplicit/content.txt new file mode 100644 index 0000000000..ca0aa504aa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsExplicit/content.txt @@ -0,0 +1,21 @@ +!2 Usual operation of ''!-CalculateFixture-!'' +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + + +
calculate
abplus
11213
-2107105
01213
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + + + +
calculate
abplus
11213
-2107105
01213 expected
12 actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsExplicit/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsExplicit/properties.xml new file mode 100644 index 0000000000..ee157708e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsExplicit/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153270912952 + 2914473109346436008 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsFail/content.txt new file mode 100644 index 0000000000..e2fa760c54 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsFail/content.txt @@ -0,0 +1,17 @@ +!2 Wrong values are reported +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
ab plus
012 13
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
ab plus
012 13 expected
12 actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsFail/properties.xml new file mode 100644 index 0000000000..8ce6ba63e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/TestsFail/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153270934643 + -926083599675418209 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/VoidMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/VoidMethod/content.txt new file mode 100644 index 0000000000..82b45bff81 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/VoidMethod/content.txt @@ -0,0 +1,17 @@ +!2 An exception is thrown if a method doesn't return a value (is void). +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
 voidMethod
 2
-!|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
 voidMethod
Method voidMethod is void.
 2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/VoidMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/VoidMethod/properties.xml new file mode 100644 index 0000000000..e98171e412 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/VoidMethod/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120415 + + + + + + + + 1153272002569 + 2060173600472208666 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/WrongType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/WrongType/content.txt new file mode 100644 index 0000000000..2c464545b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/WrongType/content.txt @@ -0,0 +1,18 @@ +!2 An exception is thrown if the input for a field, or the expected value of a method, is of the wrong type. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
aplus
oneone
-!| +|!- + +
fitlibrary.specify.CalculateFixtureUnderTest
+ + + + +
calculate
aplus
one
Invalid Number
one
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/WrongType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/WrongType/properties.xml new file mode 100644 index 0000000000..16cc888b33 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/WrongType/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120414 + + + + + + + + 1154132533894 + -2310023306340795232 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/content.txt new file mode 100644 index 0000000000..a92e03540b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/content.txt @@ -0,0 +1,28 @@ +^TestsExplicit +^TestsFail +^TestSeveralMethods +!3 Details of operation +^TestLeftToRight +^TestDifferingResults +^RowsShort +^CamelNames +^EmptyGivenNames +^NoteColumns +^DoubleUse +^TestSetUpTearDown +^ResultingObjectIsSubType +!3 Two special cell contents +^SpecialError +^SpecialErrorWrong +^SpecialEmptyDoubleQuote +^SpecialEmptyBlank +!3 Graphics +^TestGraphics +!3 Error Conditions +^EmptyColumnMissing +^NoExpectedColumns +^MissingMethod +^VoidMethod +^WrongType +^CannotParse +^RowsLong diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/properties.xml new file mode 100644 index 0000000000..26a6881a06 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CalculateTraverse/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118160717 + + + + + + + + 1232248037812 + -7021969304654782705 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/DirectSut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/DirectSut/content.txt new file mode 100644 index 0000000000..3b88c35d83 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/DirectSut/content.txt @@ -0,0 +1,14 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.DirectCombination
 123
1123
2246
33610
-!|!- + + + + + +
fitlibrary.specify.DirectCombination
 123
1123
2246
33610 expected
9 actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/DirectSut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/DirectSut/properties.xml new file mode 100644 index 0000000000..51cc77dc77 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/DirectSut/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120429 + + + + + + + + 1131874101671 + -6185663331303617540 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/MixedTypes/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/MixedTypes/content.txt new file mode 100644 index 0000000000..80e6e7f059 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/MixedTypes/content.txt @@ -0,0 +1,14 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.MixedCombination
 12
atruefalse
btruefalse
ctruetrue
-!|!- + + + + + +
fitlibrary.specify.MixedCombination
 12
atruefalse
btruefalse
ctruetrue expected
false actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/MixedTypes/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/MixedTypes/properties.xml new file mode 100644 index 0000000000..99dd8cfb97 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/MixedTypes/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120429 + + + + + + + + 1131874114406 + 3936507405268744385 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/SimpleExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/SimpleExample/content.txt new file mode 100644 index 0000000000..51892b831e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/SimpleExample/content.txt @@ -0,0 +1,14 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.TimesCombination
 123
1123
2246
330069
-!|!- + + + + + +
fitlibrary.specify.TimesCombination
 123
1123
2246
3300 expected
3 actual
69
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/SimpleExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/SimpleExample/properties.xml new file mode 100644 index 0000000000..178b2434a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/SimpleExample/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120429 + + + + + + + + 1131874126609 + 1709534520000666288 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/TestSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/TestSetUp/content.txt new file mode 100644 index 0000000000..1783612d75 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/TestSetUp/content.txt @@ -0,0 +1,34 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.TimesCombinationSetUp
+ + + + + + +
combine
 123
1123
2246
330069
+ + + + + + +
combine
 123
1123
2246
330069
-!|!- + +
fitlibrary.specify.TimesCombinationSetUp
+ + + + + + +
combine
 123
1123
2246
3300 expected
3 actual
69
+ + + + + + +
combine
 123
1123
2246
3300 expected
3 actual
69
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/TestSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/TestSetUp/properties.xml new file mode 100644 index 0000000000..02620ed77e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/TestSetUp/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120429 + + + + + + + + 1153272551198 + -626702659103543633 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongData/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongData/content.txt new file mode 100644 index 0000000000..c40b8796c6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongData/content.txt @@ -0,0 +1,13 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.specify.TimesCombination
 1x
112
2y4
-!| +|!- + + + + +
fitlibrary.specify.TimesCombination
 1x
Invalid Number
112
2y4
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongData/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongData/properties.xml new file mode 100644 index 0000000000..fc8e462846 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongData/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120429 + + + + + + + + 1154132626357 + -4472740515223178401 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongRows/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongRows/content.txt new file mode 100644 index 0000000000..cdcdf20dd9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongRows/content.txt @@ -0,0 +1,12 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.specify.TimesCombination
 123
112
22469
-!|!- + + + + +
fitlibrary.specify.TimesCombination
 123
1
Missing table cells
12
2
Extra table cells
2469
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongRows/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongRows/properties.xml new file mode 100644 index 0000000000..fb5b582f75 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/WrongRows/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120429 + + + + + + + + 1136088707968 + 2556322910046367180 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/content.txt new file mode 100644 index 0000000000..78f20026a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/content.txt @@ -0,0 +1,7 @@ +^SimpleExample +^MixedTypes +^DirectSut +^TestSetUp + +^WrongRows +^WrongData diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/properties.xml new file mode 100644 index 0000000000..2338c51bc6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/CombinationTraverse/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120429 + + + + + + + + 1137292422375 + -4437613548117244791 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToFail/content.txt new file mode 100644 index 0000000000..7f7696a689 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToFail/content.txt @@ -0,0 +1,34 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + + + + + + + + + + +
fitlibrary.specify.FailConstraint
ba
12
23
32
-!|!- + + + + + + + + + + + + + + + +
fitlibrary.specify.FailConstraint
ba
12
23
32
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToFail/properties.xml new file mode 100644 index 0000000000..4bd9aaa80e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToFail/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061217161434 + + + + + + + + 1131874155109 + -7332237174878055808 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToSucceed/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToSucceed/content.txt new file mode 100644 index 0000000000..b03aeeb757 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToSucceed/content.txt @@ -0,0 +1,33 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + + + + + + + + + + +
fitlibrary.specify.SucceedConstraint
ab
12
23
34
-!|!- + + + + + + + + + + + + + + +
fitlibrary.specify.SucceedConstraint
ab
12
23
34
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToSucceed/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToSucceed/properties.xml new file mode 100644 index 0000000000..8360e8653d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/ExpectedToSucceed/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120443 + + + + + + + + 1137291980229 + -8367835585082585488 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/NotBoolean/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/NotBoolean/content.txt new file mode 100644 index 0000000000..5fdb1e8ff2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/NotBoolean/content.txt @@ -0,0 +1,14 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.SucceedConstraint
bc
-!|!- + + + + + +
fitlibrary.specify.SucceedConstraint
b
Method bC does not return a boolean.
c
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/NotBoolean/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/NotBoolean/properties.xml new file mode 100644 index 0000000000..0766269dc2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/NotBoolean/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120443 + + + + + + + + 1131874177343 + -8918397053103756770 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/RowsWrong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/RowsWrong/content.txt new file mode 100644 index 0000000000..7388702ff4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/RowsWrong/content.txt @@ -0,0 +1,14 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.SucceedConstraint
ab
1
122
-!|!- + + + + + +
fitlibrary.specify.SucceedConstraint
ab
1
Row should be 2 cells wide
1
Row should be 2 cells wide
22
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/RowsWrong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/RowsWrong/properties.xml new file mode 100644 index 0000000000..eaab2b6c22 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/RowsWrong/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120443 + + + + + + + + 1131874186296 + 4849225216159713038 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/TestSetUpCall/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/TestSetUpCall/content.txt new file mode 100644 index 0000000000..c250cf5599 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/TestSetUpCall/content.txt @@ -0,0 +1,30 @@ +!3 Methods setUp() and tearDown() are both called +The class is defined so that the ''setUp()'' method has to be called for the first table to succeed. The ''tearDown()'' method throws an exception, which we check for. This is a round-about way to verify that the ''teardown()'' method has been called, because it's the last thing that happens. +!**< def +!define test (!|fitlibrary.specify.constraint.SetUpAndTearDownCalled| + +|''constraint''| +|''a''|''b''| +|1|2| +|2|3| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.constraint.SetUpAndTearDownCalled
+
+ + + + + + + + + + + +
constraint
ab
12
23
+
Error in storytest tear down:
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/TestSetUpCall/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/TestSetUpCall/properties.xml new file mode 100644 index 0000000000..ee67e1f2ea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/TestSetUpCall/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1254094714528 + -5296035122497097137 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/UnknownMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/UnknownMethod/content.txt new file mode 100644 index 0000000000..0b19e7e6f9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/UnknownMethod/content.txt @@ -0,0 +1,15 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.specify.SucceedConstraint
bm
12
-!|!- + + + + +
fitlibrary.specify.SucceedConstraint
b
Missing method
m
12
-!| + +extra +extra \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/UnknownMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/UnknownMethod/properties.xml new file mode 100644 index 0000000000..be1fc4a29a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/UnknownMethod/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080914173947 + + + + + + + + 1221370787062 + 409978401505493225 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/content.txt new file mode 100644 index 0000000000..caa78cee48 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/content.txt @@ -0,0 +1,7 @@ +^ExpectedToSucceed +^ExpectedToFail +^TestSetUpCall + +^UnknownMethod +^NotBoolean +^RowsWrong diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/properties.xml new file mode 100644 index 0000000000..c173a0f61c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/ConstraintTraverse/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120443 + + + + + + + + 1137291884561 + -4327327561887681010 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/GetterSetterUnknown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/GetterSetterUnknown/content.txt new file mode 100644 index 0000000000..83cb75381a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/GetterSetterUnknown/content.txt @@ -0,0 +1,26 @@ +!**< define +!define test (!|fitlibrary.specify.calculate.RuleTableExample| +|in|in3|out3?| +|1|1|2| +|2|2|4| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + + + + + + + + + + + + + +
fitlibrary.specify.calculate.RuleTableExample
inin3
Missing method, possibly:
  • public void setIn3(ArgType in3) { }

In:
  • fitlibrary.specify.calculate.RuleTableExample
  • fitlibrary.specify.calculate.RuleTableExample.Sut
out3?
Missing method, possibly:
  • public Rule getOut3() { }

In:
  • fitlibrary.specify.calculate.RuleTableExample
  • fitlibrary.specify.calculate.RuleTableExample.Sut
112
224
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/GetterSetterUnknown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/GetterSetterUnknown/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/GetterSetterUnknown/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/MethodsThrowExceptions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/MethodsThrowExceptions/content.txt new file mode 100644 index 0000000000..9f36274137 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/MethodsThrowExceptions/content.txt @@ -0,0 +1,83 @@ +!**< define +!define test (!|fitlibrary.specify.calculate.RuleTableMethodsThrowExceptions| +|in throws exception|in|out throws exception|out?|reset throws exception|execute throws exception| +| false |1 | false | 1 | false | false | +| true |1 | false | 1 | false | false | +| false |1 | true | 1 | false | false | +| false |1 | false | 1 | true | false | +| false |1 | false | 1 | false | false | +| false |1 | false | 1 | false | true | +| false |1 | false | 1 | false | true | +| false |1 | false | 1 | false | false | +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fitlibrary.specify.calculate.RuleTableMethodsThrowExceptions
in throws exceptioninout throws exceptionout?reset throws exceptionexecute throws exception
false1false1falsefalse
true1
in exception
false1falsefalse
false1true1
out exception
falsefalse
false1false1truefalse
false
reset exception
1false1falsefalse
false1false1falsetrue
false1false1
execute exception
falsetrue
false1false1falsefalse
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/MethodsThrowExceptions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/MethodsThrowExceptions/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/MethodsThrowExceptions/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/OneInAndOneOut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/OneInAndOneOut/content.txt new file mode 100644 index 0000000000..f71c77c10f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/OneInAndOneOut/content.txt @@ -0,0 +1,35 @@ +!**< define +!define test (!|fitlibrary.specify.calculate.RuleTableExample| +|in|in2|out?| +|1|1|2| +|2|2|4| +|3|4|8| +|a|b|c| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + + + + + + + + + + + + + + + + + + + + +
fitlibrary.specify.calculate.RuleTableExample
inin2out?
112
224
348 expected
7 actual
a
Invalid Number
bc
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/OneInAndOneOut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/OneInAndOneOut/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/OneInAndOneOut/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/RowsVaryInWidth/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/RowsVaryInWidth/content.txt new file mode 100644 index 0000000000..f51b89c44e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/RowsVaryInWidth/content.txt @@ -0,0 +1,26 @@ +!**< define +!define test (!|fitlibrary.specify.calculate.RuleTableExample| +|in|in2|out?| +|1|1|2|4| +|2|2|4| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + + + + + + + + + + + + + +
fitlibrary.specify.calculate.RuleTableExample
inin2out?
1
Irregular shaped: This row differs in width from the header
124
224
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/RowsVaryInWidth/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/RowsVaryInWidth/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/RowsVaryInWidth/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/WithResetAndExecute/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/WithResetAndExecute/content.txt new file mode 100644 index 0000000000..5ff1a5f139 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/WithResetAndExecute/content.txt @@ -0,0 +1,51 @@ +!**< define +!define test (!|fitlibrary.specify.calculate.RuleTableWithResetAndExecute| +|expected resets|expected executes|resets?|executes?|expected resets|expected executes|resets?|executes?| +| 1 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | +| 2 | 1 | 2 | 2 | 2 | 2 | 2 | 2 | +| 3 | 2 | 3 | 3 | 3 | 3 | 3 | 3 | +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fitlibrary.specify.calculate.RuleTableWithResetAndExecute
expected resetsexpected executesresets?executes?expected resetsexpected executesresets?executes?
10111111
21222222
32333333
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/WithResetAndExecute/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/WithResetAndExecute/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/WithResetAndExecute/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/content.txt new file mode 100644 index 0000000000..6274e006c6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/content.txt @@ -0,0 +1,7 @@ +!3 This is like a !-ColumnFixture-! from Fit (and thus like a Decision Table from Slim) +^OneInAndOneOut +^WithResetAndExecute +!3 Errors: +^RowsVaryInWidth +^GetterSetterUnknown +^MethodsThrowExceptions diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/RuleTable/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/content.txt new file mode 100644 index 0000000000..ad4b54b5ae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/content.txt @@ -0,0 +1,2 @@ +|!contents| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/properties.xml new file mode 100644 index 0000000000..a7ebcc5243 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/BusinessRules/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232248022156 + -2826558134747803451 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestAll/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestAll/content.txt new file mode 100644 index 0000000000..5e967c5409 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestAll/content.txt @@ -0,0 +1,13 @@ +!2 All elements are in the correct order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
one
two
three
-!|!- + + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
one
two
three
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestAll/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestAll/properties.xml new file mode 100644 index 0000000000..be2217e48e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestAll/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153961939530 + -7749471095293258904 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestArray/content.txt new file mode 100644 index 0000000000..20254b2ec1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestArray/content.txt @@ -0,0 +1,13 @@ +!2 All elements are in the correct order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.specify.PrimitiveArrayFixtureUnderTest
1
2
3
-!|!- + + + + +
fitlibrary.specify.PrimitiveArrayFixtureUnderTest
1
2
3
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestArray/properties.xml new file mode 100644 index 0000000000..00a55c69d6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestArray/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153962180076 + -6678870793589080270 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestDeleteAtStart/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestDeleteAtStart/content.txt new file mode 100644 index 0000000000..3e35513010 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestDeleteAtStart/content.txt @@ -0,0 +1,16 @@ +!2 The first expected element is missing +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
two
three
-!|!- + + + + + + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
two missing
three missing
one surplus
two surplus
three surplus
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestDeleteAtStart/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestDeleteAtStart/properties.xml new file mode 100644 index 0000000000..792289daa8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestDeleteAtStart/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153961985366 + 3943444214575114651 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestInsertAtStart/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestInsertAtStart/content.txt new file mode 100644 index 0000000000..ecf27e131b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestInsertAtStart/content.txt @@ -0,0 +1,15 @@ +!2 All elements are in the correct order, except that an extra row is expected at the start +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
zero
one
two
three
-!|!- + + + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
zero missing
one
two
three
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestInsertAtStart/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestInsertAtStart/properties.xml new file mode 100644 index 0000000000..d94f0b3b8c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestInsertAtStart/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153961971325 + 5390239965959344480 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestMixedObjects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestMixedObjects/content.txt new file mode 100644 index 0000000000..579cfcf4cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestMixedObjects/content.txt @@ -0,0 +1,13 @@ +!2 All objects of mixed types are in the correct order. +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.specify.PrimitiveArrayFixtureUnderTestMixed
1
2.0
three
-!|!- + + + + +
fitlibrary.specify.PrimitiveArrayFixtureUnderTestMixed
1
2.0
three
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestMixedObjects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestMixedObjects/properties.xml new file mode 100644 index 0000000000..648953473d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestMixedObjects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153962067864 + -8049228565166549844 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActuals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActuals/content.txt new file mode 100644 index 0000000000..7c958b205e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActuals/content.txt @@ -0,0 +1,7 @@ +!2 No elements are expected or exist +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.PrimitiveArrayFixtureUnderTestEmpty
-!|!- + +
fitlibrary.specify.PrimitiveArrayFixtureUnderTestEmpty
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActuals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActuals/properties.xml new file mode 100644 index 0000000000..b0b656fec0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActuals/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153962102234 + -6544582772484690268 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActualsSoMissing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActualsSoMissing/content.txt new file mode 100644 index 0000000000..4895abe067 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActualsSoMissing/content.txt @@ -0,0 +1,9 @@ +!2 No elements exist +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + +
fitlibrary.specify.PrimitiveArrayFixtureUnderTestEmpty
one
-!|!- + + +
fitlibrary.specify.PrimitiveArrayFixtureUnderTestEmpty
one missing
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActualsSoMissing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActualsSoMissing/properties.xml new file mode 100644 index 0000000000..4e92538f74 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoActualsSoMissing/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153962129993 + 8356898782321357741 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoneExpected/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoneExpected/content.txt new file mode 100644 index 0000000000..b685493d01 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoneExpected/content.txt @@ -0,0 +1,12 @@ +!2 No elements are expected +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
-!|!- + + + + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
one surplus
two surplus
three surplus
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoneExpected/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoneExpected/properties.xml new file mode 100644 index 0000000000..189181bd8f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNoneExpected/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153962001779 + -5054118233780289358 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNullInCollection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNullInCollection/content.txt new file mode 100644 index 0000000000..223ee6043d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNullInCollection/content.txt @@ -0,0 +1,31 @@ +!**< def +!define list (|name| +|| +|fitlibrary| +) +!define test ( +!|fitlibrary.specify.collection.NullInCollection| + +|list|'''is'''|${list}| +) +*! +!2 An element of the collection may be null +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.collection.NullInCollection
+
+ + + + +
listis + + + + + + +
name
An element of the collection is null
 
fitlibrary
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNullInCollection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNullInCollection/properties.xml new file mode 100644 index 0000000000..2eda561144 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestNullInCollection/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1225512355328 + -3854692543375386066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestOutOfOrder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestOutOfOrder/content.txt new file mode 100644 index 0000000000..4ed237b214 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestOutOfOrder/content.txt @@ -0,0 +1,14 @@ +!2 Some elements are out of order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
one
three
two
-!|!- + + + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
one
three missing
two
three surplus
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestOutOfOrder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestOutOfOrder/properties.xml new file mode 100644 index 0000000000..6af57c2142 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestOutOfOrder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153961956093 + 8714593517426538146 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestSomeInOrder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestSomeInOrder/content.txt new file mode 100644 index 0000000000..deb1ea6838 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestSomeInOrder/content.txt @@ -0,0 +1,12 @@ +!2 Some elements are there and in the correct order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
one
two
-!|!- + + + + +
fitlibrary.specify.PrimitiveArrayFixtureWithCollection
one
two
three surplus
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestSomeInOrder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestSomeInOrder/properties.xml new file mode 100644 index 0000000000..8c6f92c1af --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/TestSomeInOrder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120214 + + + + + + + + 1153961913342 + -8256650686124427510 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/content.txt new file mode 100644 index 0000000000..f960d53eee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/content.txt @@ -0,0 +1,14 @@ +!2 ArrayTraverse is like ListTraverse, except that it handles arrays and doesn't have a header row. + * If the array elements are objects, it uses their ''toString()'' value + * If a collection is supplied, it's copied into an array and that's used +^TestArray +^TestAll +^TestSomeInOrder +^TestOutOfOrder +^TestInsertAtStart +^TestDeleteAtStart +^TestNoneExpected +^TestMixedObjects +^TestNoActuals +^TestNoActualsSoMissing +^TestNullInCollection \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/properties.xml new file mode 100644 index 0000000000..3e109112ba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ArrayTraverse/properties.xml @@ -0,0 +1,15 @@ + + + + + 20070224152706 + + + + + + + + 1172284026841 + -8800076351799326555 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateList/content.txt new file mode 100644 index 0000000000..c0e9810f69 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateList/content.txt @@ -0,0 +1,53 @@ +!3 A list is created +!**< def +!define ious (|''name''|''owe''| +|emma|130.00| +|james|120.00| +) +!define test ( +!|fitlibrary.specify.collectionSetUp.SetUpList| + +|''IOUs''|${ious}| +---- +---- +|''IOUs''|${ious}| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.collectionSetUp.SetUpList
+
+ + + +
IOUs + + + + + + + + + +
nameowe
emma130.00
james120.00
+
+



+ + + +
IOUs + + + + + + + + + +
nameowe
emma130.00
james120.00
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateList/properties.xml new file mode 100644 index 0000000000..2a6e76745a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateList/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170606 + + + + + + + + 1225512366843 + -1504376435586435444 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateMap/content.txt new file mode 100644 index 0000000000..4439f9ead1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateMap/content.txt @@ -0,0 +1,72 @@ +!3 A map is created indirectly with a List +In ${fitLibrary2}, with generics, a map can be created directly +!**< def +!define emma ( +|''owe''|130.00| + +) +!define james ( +|''name''|james| +|''owe''|120.00| +) +!define mapIn (|''name''|''owe''| +|emma|130.00| +|james|120.00| +) +!define mapOut (|emma|${emma}| +|james|${james}| +) +!define test (!|fitlibrary.specify.collectionSetUp.SetUpMap| +---- +|''IOU map''|${mapIn}| +---- +|''IOU map''|${mapOut}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.collectionSetUp.SetUpMap
+

+ + + +
IOU map + + + + + + + + + +
nameowe
emma130.00
james120.00
+
+

+ + + +
IOU map + + + + + + +
emma
+ + + +
owe130.00
+
james
+ + + + + + +
namejames
owe120.00
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateMap/properties.xml new file mode 100644 index 0000000000..9bd014ac68 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateMap/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170619 + + + + + + + + 1225512379078 + -761925953918711852 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateSet/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateSet/content.txt new file mode 100644 index 0000000000..dc684ffdff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateSet/content.txt @@ -0,0 +1,54 @@ +!3 A set is created +!**< def +!define set (|''name''|''owe''| +|emma|130.00| +|james|120.00| +) +!define test ( +!|fitlibrary.specify.collectionSetUp.SetUpSet| + +|''IOU set''|${set}| +---- +---- +|''IOU set''|${set}| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.collectionSetUp.SetUpSet
+
+ + + +
IOU set + + + + + + + + + +
nameowe
emma130.00
james120.00
+
+



+ + + +
IOU set + + + + + + + + + +
nameowe
emma130.00
james120.00
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateSet/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateSet/properties.xml new file mode 100644 index 0000000000..21616409c6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/CreateSet/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170629 + + + + + + + + 1225512389328 + 6572945401277088265 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/MissingObjectFactoryMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/MissingObjectFactoryMethod/content.txt new file mode 100644 index 0000000000..2b0863756e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/MissingObjectFactoryMethod/content.txt @@ -0,0 +1,26 @@ +!2 An error is shown if the method doesn't exist. +!**< def +!define test (!|fitlibrary.specify.collectionSetUp.MissingObjectFactoryMethod| + +|''missing''| +|''one''|''two''| +|1|2| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.specify.collectionSetUp.MissingObjectFactoryMethod
+
+ + + + + + + + +
missing
one
two
12
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/MissingObjectFactoryMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/MissingObjectFactoryMethod/properties.xml new file mode 100644 index 0000000000..c40155b458 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/MissingObjectFactoryMethod/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225512406578 + 7845803262743610773 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/ObjectFactoryMethodException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/ObjectFactoryMethodException/content.txt new file mode 100644 index 0000000000..6e2e2ac06a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/ObjectFactoryMethodException/content.txt @@ -0,0 +1,27 @@ +!3 The exception is caught and shown +!**< def +!define test (!|fitlibrary.specify.collectionSetUp.ExceptionInObjectFactoryMethod| +---- +|''create''| +|''bad''|''method''| +|1|2| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.collectionSetUp.ExceptionInObjectFactoryMethod
+
+
+ + + + + + + + +
create
badmethod
1
+
2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/ObjectFactoryMethodException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/ObjectFactoryMethodException/properties.xml new file mode 100644 index 0000000000..9b87b6770b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/ObjectFactoryMethodException/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225512420578 + 9106073859481061423 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/RowsShortOrLong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/RowsShortOrLong/content.txt new file mode 100644 index 0000000000..6d813a3c65 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/RowsShortOrLong/content.txt @@ -0,0 +1,58 @@ +!2 An error is given if a row is short or long. +!**< def +!define in (|''name''|''owe''| +|emma|130.00|| +|james| +) +!define out (|''name''|''owe''| +|emma|130.00| +|james|120.00| +) +!define test ( +!|fitlibrary.specify.collectionSetUp.SetUpList| + +|''IOUs''|${in}| +---- +---- +|''IOUs''|${out}| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.collectionSetUp.SetUpList
+
+ + + +
IOUs + + + + + + + + + +
nameowe
emma
Row should be 2 cells wide
130.00 
james
Row should be 2 cells wide
+
+



+ + + +
IOUs + + + + + + + + + +
nameowe
emma missing130.00
james missing120.00
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/RowsShortOrLong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/RowsShortOrLong/properties.xml new file mode 100644 index 0000000000..4518f1cfe3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/RowsShortOrLong/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170711 + + + + + + + + 1225512431546 + -6761457784432619590 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/content.txt new file mode 100644 index 0000000000..304c40a28d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/content.txt @@ -0,0 +1,8 @@ +!3 This has been trimmed right back, ready to be removed altogether +^CreateList - an ordered list is created by creating an element for each row of the table +^CreateSet - an unordered list is created by creating an element for each row of the table +^CreateMap - a map is created by creating an element for each row of the table and explicitly adding it to the map + +^MissingObjectFactoryMethod - the ${objectFactoryMethod} is missing +^ObjectFactoryMethodException - an exception may be thrown in the ${objectFactoryMethod} +^RowsShortOrLong - an error is given if the rows have too many or too few cells diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/properties.xml new file mode 100644 index 0000000000..abc7e5e0b4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/CollectionSetUpTraverse/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1156386320567 + 2646795566209411104 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAll/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAll/content.txt new file mode 100644 index 0000000000..f9c24cf58c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAll/content.txt @@ -0,0 +1,15 @@ +!2 All elements are in the correct order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1one
1two
2two
-!|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAll/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAll/properties.xml new file mode 100644 index 0000000000..f7bcbcee73 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAll/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873623218 + 7291388124376231583 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAllWithProperty/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAllWithProperty/content.txt new file mode 100644 index 0000000000..41d3a59729 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAllWithProperty/content.txt @@ -0,0 +1,15 @@ +!2 All elements are in the correct order and we use a property to access +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
prop&
1one
1two
2two
-!|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
prop&
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAllWithProperty/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAllWithProperty/properties.xml new file mode 100644 index 0000000000..03a0403f06 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestAllWithProperty/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873639906 + 8103768646905617966 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestEntityInNestedArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestEntityInNestedArray/content.txt new file mode 100644 index 0000000000..5a0eef9cec --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestEntityInNestedArray/content.txt @@ -0,0 +1,46 @@ + * An Entity in a nested table is referenced when there are find/show methods for it in any of the nesting fixtures +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + +
fitlibrary.specify.EntityInNestedArray
idsub
1 + +
actions + + + +
nametype
Firstfirst
Firstsecond
-!|!- + + + +
fitlibrary.specify.EntityInNestedArray
idsub
1 + +
actions + + + +
nametype
Firstfirst
Firstsecond expected
first actual
-!| + +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + +
fitlibrary.specify.EntityInNestedArray
idactions
1 + + + + +
nametype
Firstfirst
Firstsecond
+
-!|!- + + + +
fitlibrary.specify.EntityInNestedArray
idactions
1 + + + + +
nametype
Firstfirst
Firstsecond expected
first actual
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestEntityInNestedArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestEntityInNestedArray/properties.xml new file mode 100644 index 0000000000..86b8398250 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestEntityInNestedArray/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1144556624857 + -5355154588443800007 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestExtraCells/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestExtraCells/content.txt new file mode 100644 index 0000000000..64666c8bdf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestExtraCells/content.txt @@ -0,0 +1,15 @@ +!2 There is an extra cell in the 3rd row +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1oneextra
1two
2two
-!|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1
Extra table cells
oneextra
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestExtraCells/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestExtraCells/properties.xml new file mode 100644 index 0000000000..d0fc217615 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestExtraCells/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873657218 + -4489354144644630835 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestInsertAtStart/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestInsertAtStart/content.txt new file mode 100644 index 0000000000..6c324e7487 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestInsertAtStart/content.txt @@ -0,0 +1,17 @@ +!2 All elements are in the correct order, except that an extra row is expected at the start +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
0zero
1one
1two
2two
-!|!- + + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
0 missingzero
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestInsertAtStart/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestInsertAtStart/properties.xml new file mode 100644 index 0000000000..e619db90a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestInsertAtStart/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060820120155 + + + + + + + 1131873672500 + -2244466378431728905 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollection/content.txt new file mode 100644 index 0000000000..277a226db9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollection/content.txt @@ -0,0 +1,34 @@ +!*< test +!define test {!|fitlibrary.specify.ArrayFixtureUnderTestWithMap| + +|map| +|+|&| +|1|one| +|1|two| +|2|two| +} +*! +!2 Each actual element is a Map. All elements are in the correct order. +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.ArrayFixtureUnderTestWithMap
+
+ + + + + + + + + + + + + + +
map
+&
1one
1two
2two
-!| + +In this spec, the map has entries for "plus" and "&". See the fixturing code. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollection/properties.xml new file mode 100644 index 0000000000..63c4e8103a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollection/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1131873686078 + 7700085820788273127 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollectionOutOfOrder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollectionOutOfOrder/content.txt new file mode 100644 index 0000000000..e8f957ce9c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollectionOutOfOrder/content.txt @@ -0,0 +1,32 @@ +!*< test +!define test {!|fitlibrary.specify.ArrayFixtureUnderTestWithMap| + +|''map''| +|+|&| +|1|one| +|2|two| +|1|two| +} +*! +!2 Each element is a Map. The elements here are not in the correct order. +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.ArrayFixtureUnderTestWithMap
+
+ + + + + + + + + + + + + + +
map
+&
1one
2 missingtwo
1two
2 surplus two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollectionOutOfOrder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollectionOutOfOrder/properties.xml new file mode 100644 index 0000000000..8789ad05f9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMapCollectionOutOfOrder/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1131873699906 + -5228426683018113304 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingCells/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingCells/content.txt new file mode 100644 index 0000000000..5289a076a5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingCells/content.txt @@ -0,0 +1,15 @@ +!2 A cell is missing in the 3rd row +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1
1two
2two
-!|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1
Missing table cells
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingCells/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingCells/properties.xml new file mode 100644 index 0000000000..d50fbb919b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingCells/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120154 + + + + + + + + 1131873715453 + 2513411991973222853 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingRows/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingRows/content.txt new file mode 100644 index 0000000000..f052fcbde8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingRows/content.txt @@ -0,0 +1,7 @@ +!2 Header row is missing +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.ArrayFixtureUnderTest
-!|!- + +
fitlibrary.specify.ArrayFixtureUnderTest
Missing row
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingRows/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingRows/properties.xml new file mode 100644 index 0000000000..ee76cb120b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMissingRows/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873730062 + -2210570416167261500 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedCollection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedCollection/content.txt new file mode 100644 index 0000000000..4930810a55 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedCollection/content.txt @@ -0,0 +1,15 @@ +!2 Each element is either a Map or an Object. The elements are in the correct order. +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTestMixed
+&
1one
1two
2two
-!|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTestMixed
+&
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedCollection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedCollection/properties.xml new file mode 100644 index 0000000000..c260781d09 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedCollection/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873742812 + 6453453489487245401 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedObjects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedObjects/content.txt new file mode 100644 index 0000000000..e19b730fca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedObjects/content.txt @@ -0,0 +1,17 @@ +!2 All elements of mixed types are in the correct order and all fields are accounted for. An unknown field for a particular object is accepted as long as the corresponding cell is empty. +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest2
+&some
1one
1two
2twoxxx
one
-!|!- + + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest2
+&some
1one
1two
2twoxxx expected
actual
one
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedObjects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedObjects/properties.xml new file mode 100644 index 0000000000..61feb0b16b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestMixedObjects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873758390 + -2655622562584841683 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActuals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActuals/content.txt new file mode 100644 index 0000000000..58e113735a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActuals/content.txt @@ -0,0 +1,9 @@ +!2 No elements are expected or exist +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + +
fitlibrary.specify.ArrayFixtureUnderTest3
+&
-!|!- + + +
fitlibrary.specify.ArrayFixtureUnderTest3
+&
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActuals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActuals/properties.xml new file mode 100644 index 0000000000..e90cf11778 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActuals/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1136154426750 + 7383751153865308482 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActualsSoMissing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActualsSoMissing/content.txt new file mode 100644 index 0000000000..c739aba12b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActualsSoMissing/content.txt @@ -0,0 +1,11 @@ +!2 No elements exist +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + +
fitlibrary.specify.ArrayFixtureUnderTest3
+&
12
-!|!- + + + +
fitlibrary.specify.ArrayFixtureUnderTest3
+&
1 missing2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActualsSoMissing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActualsSoMissing/properties.xml new file mode 100644 index 0000000000..f1f5b24c9d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoActualsSoMissing/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873794484 + 1782039934242024788 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoneExpected/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoneExpected/content.txt new file mode 100644 index 0000000000..592a799341 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoneExpected/content.txt @@ -0,0 +1,17 @@ +!2 No elements are expected +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
-!|!- + + + + + + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1 surplus one
1 surplus two
2 surplus two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoneExpected/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoneExpected/properties.xml new file mode 100644 index 0000000000..1749ac97c2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestNoneExpected/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120154 + + + + + + + + 1131873809109 + -3001164563362930229 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestOutOfOrder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestOutOfOrder/content.txt new file mode 100644 index 0000000000..0016622450 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestOutOfOrder/content.txt @@ -0,0 +1,17 @@ +!2 All elements are there, but not in the correct order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1two
2two
1one
-!|!- + + + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1two expected
one actual
2 missingtwo
1one expected
two actual
2 surplus two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestOutOfOrder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestOutOfOrder/properties.xml new file mode 100644 index 0000000000..6c175f0319 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestOutOfOrder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120154 + + + + + + + + 1131873820203 + 5749766135943738726 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestSomeInOrder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestSomeInOrder/content.txt new file mode 100644 index 0000000000..9809fc6c0c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestSomeInOrder/content.txt @@ -0,0 +1,15 @@ +!2 Some elements are in the correct order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1one
1two
-!|!- + + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&
1one
1two
2 surplus two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestSomeInOrder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestSomeInOrder/properties.xml new file mode 100644 index 0000000000..cc75c055ce --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestSomeInOrder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873834250 + -5733169673299469778 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestTrees/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestTrees/content.txt new file mode 100644 index 0000000000..fa1502a1f5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestTrees/content.txt @@ -0,0 +1,15 @@ +!2 Elements can be non-textual things, like HTML lists +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTestGraphics
itree
1a
1
  • a
2
  • a
  • BB
-!|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTestGraphics
itree
1a
1
  • a
2
  • a
  • BB
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestTrees/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestTrees/properties.xml new file mode 100644 index 0000000000..701a650010 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestTrees/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873848859 + -5818030756468947081 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUnknownProperty/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUnknownProperty/content.txt new file mode 100644 index 0000000000..4b83095d83 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUnknownProperty/content.txt @@ -0,0 +1,15 @@ +!2 A property that is not within any of the elements is rejected. +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&some
1one
1two
2two
-!|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTest
+&some
Could not find property some
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUnknownProperty/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUnknownProperty/properties.xml new file mode 100644 index 0000000000..fb9b6ee719 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUnknownProperty/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1150795993275 + -8299537686852534402 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingScientificDouble/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingScientificDouble/content.txt new file mode 100644 index 0000000000..e69f396188 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingScientificDouble/content.txt @@ -0,0 +1,16 @@ + * The three underlying elements are each a pair(1.11,2.22). + * This shows that ''!-ScientificDouble-!'' takes account of the precision of the expected value in making the comparison +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTestWithScientificDouble
onetwo
12
1.12.2
1.112.22
-!|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTestWithScientificDouble
onetwo
12
1.12.2
1.112.22
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingScientificDouble/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingScientificDouble/properties.xml new file mode 100644 index 0000000000..5bba213ab1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingScientificDouble/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1144535731594 + -1115729709508820333 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingValueObjects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingValueObjects/content.txt new file mode 100644 index 0000000000..de1cde2736 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingValueObjects/content.txt @@ -0,0 +1,14 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTestWithValueObjects
onetwo
i 1i 2
i 3i 4
i 5i 6
-!|!- + + + + + +
fitlibrary.specify.ArrayFixtureUnderTestWithValueObjects
onetwo
i 1i 2
i 3i 4
i 5i 6
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingValueObjects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingValueObjects/properties.xml new file mode 100644 index 0000000000..b87e4ad18c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/TestUsingValueObjects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120155 + + + + + + + + 1131873872562 + 9100661058633387409 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/content.txt new file mode 100644 index 0000000000..2885696542 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/content.txt @@ -0,0 +1,25 @@ +!2 ''!-ArrayFixture-!'' takes account of the order of the sequence +^TestAll +^TestSomeInOrder +^TestOutOfOrder +^TestInsertAtStart +^TestNoneExpected +^TestAllWithProperty +^TestMixedObjects +^TestNoActuals +^TestNoActualsSoMissing +^TestUsingValueObjects +^TestUsingScientificDouble +!2 It handles a collection of Map, to handle dynamic collections such as from JTable +^TestMapCollection +^TestMapCollectionOutOfOrder +^TestMixedCollection +!2 It handles trees and images +^TestTrees +!2 Collections may be nested +^TestEntityInNestedArray +!2 Errors +^TestMissingCells +^TestExtraCells +^TestMissingRows +^TestUnknownProperty diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/properties.xml new file mode 100644 index 0000000000..1f57f40ce3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/ListTraverse/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1144542846424 + 578496675972062725 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMap/content.txt new file mode 100644 index 0000000000..facdcdc253 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMap/content.txt @@ -0,0 +1,22 @@ +!**< def +!define test ( +!|fitlibrary.specify.mapTraverse.Empty| +---- +---- +|''empty map''|| + +) +**! +An empty map matches a table with no extra rows + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.mapTraverse.Empty
+



+ + + +
empty map 
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMap/properties.xml new file mode 100644 index 0000000000..377bf2e74c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMap/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170807 + + + + + + + + 1225512487703 + -3302956712075315802 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMismatch/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMismatch/content.txt new file mode 100644 index 0000000000..7f79a46256 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMismatch/content.txt @@ -0,0 +1,31 @@ +!**< def +!define map (|a|b| +) +!define test (!|fitlibrary.specify.mapTraverse.Empty| + +|''checks''| + +|''empty map''|${map}| +) +**! +When the actual map is empty, any expected elements will be "missing" + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapTraverse.Empty
+
+ + +
checks
+
+ + + +
empty map + + + +
a missingb
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMismatch/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMismatch/properties.xml new file mode 100644 index 0000000000..3cc7700a1a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/EmptyMismatch/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170821 + + + + + + + + 1225512501125 + 5538449114860275071 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExceptionsHandling/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExceptionsHandling/content.txt new file mode 100644 index 0000000000..18222ec146 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExceptionsHandling/content.txt @@ -0,0 +1,33 @@ +!**< def +!define map (|a|b| +) +!define test (!|fitlibrary.specify.mapTraverse.ErrorMap| + +|''checks''| + +|''error map''|${map}| +) +**! +Any exception is caught and shown in the table. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapTraverse.ErrorMap
+
+ + +
checks
+
+ + + +
error map + + + + + +
a
b
a surplusInError[]
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExceptionsHandling/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExceptionsHandling/properties.xml new file mode 100644 index 0000000000..f8d85c468f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExceptionsHandling/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170832 + + + + + + + + 1225512512500 + 4773080283052566802 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExpectedKeyNotUnique/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExpectedKeyNotUnique/content.txt new file mode 100644 index 0000000000..8c6f11d082 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExpectedKeyNotUnique/content.txt @@ -0,0 +1,61 @@ +!**< def +!define map1 (|yellow|blue| +|red|green| +|red|blue| +) +!define map2 (|yellow|blue| +|red|blue| +|red|green| +) +!define test (!|fitlibrary.specify.mapTraverse.ColourMap| + +|''checks''| + +|''colour map''|${map1}| + +|''colour map''|${map2}| +) +**! +Each of the expected elements are matched in turn against the actual elements of the Map. So the order of the rows imnpacts on the error message given. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapTraverse.ColourMap
+
+ + +
checks
+
+ + + +
colour map + + + + + + + + + +
yellowblue
redgreen
red missingblue
+
+
+ + + +
colour map + + + + + + + + + +
yellowblue
redblue expected
Colour[green] actual
red missinggreen
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExpectedKeyNotUnique/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExpectedKeyNotUnique/properties.xml new file mode 100644 index 0000000000..85dfe84a55 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ExpectedKeyNotUnique/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170846 + + + + + + + + 1225512526515 + 7028127216878406347 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/MixedObjectProblem/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/MixedObjectProblem/content.txt new file mode 100644 index 0000000000..746683fcbc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/MixedObjectProblem/content.txt @@ -0,0 +1,37 @@ +!**< def +!define map (|red|green| +|1|2| +) +!define test (!|fitlibrary.specify.mapTraverse.MixedMap| + +|''checks''| + +|''mixed map''|${map}| +) +**! +If the actual map is of mixed types, the strategy used to determine a suitable Parser for the key and value is flawed. So some won't be matched. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapTraverse.MixedMap
+
+ + +
checks
+
+ + + +
mixed map + + + + + + + + +
redgreen
1 missing2
Count[1] surplusCount[2]
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/MixedObjectProblem/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/MixedObjectProblem/properties.xml new file mode 100644 index 0000000000..9c35498e4b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/MixedObjectProblem/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170859 + + + + + + + + 1225512539406 + 6004859677743028163 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMap/content.txt new file mode 100644 index 0000000000..b9b4367e5d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMap/content.txt @@ -0,0 +1,53 @@ +!**< def +!define map1 (|red|green| +|yellow|blue| +) +!define map2 (|yellow|blue| +|red|green| +) +!define test (!|fitlibrary.specify.mapTraverse.ColourMap| + +|''checks''| + +|''colour map''|${map1}| + +|''colour map''|${map2}| +) +**! +A Map is from any class to any class (ie, Map). Pre-generics, it's not possible to determine the type of the key and the value. So ''!-FitLibrary-!'' picks one element from the Map and uses that to determine the types. This doesn't work if the map is of mixed types, as shown in another storytest. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapTraverse.ColourMap
+
+ + +
checks
+
+ + + +
colour map + + + + + + +
redgreen
yellowblue
+
+
+ + + +
colour map + + + + + + +
yellowblue
redgreen
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMap/properties.xml new file mode 100644 index 0000000000..f8c76e9c58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMap/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170911 + + + + + + + + 1225512551531 + -6906152995701116613 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMismatch/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMismatch/content.txt new file mode 100644 index 0000000000..5150eb932d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMismatch/content.txt @@ -0,0 +1,44 @@ +!**< def +!define map (|yellow|orange| +|orange|green| +) +!define test (!|fitlibrary.specify.mapTraverse.ColourMap| + +|''checks''| + +|''colour map''|| + +|''colour map''|${map}| +) +**! +The error given on a mismatch will depend on whether the key of an element of the actual map corresponds to the key cell of a row in the table. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapTraverse.ColourMap
+
+ + +
checks
+
+ + + +
colour map  expected
Colour[red]->Colour[green], Colour[yellow]->Colour[blue] actual
+
+ + + +
colour map + + + + + + + + +
yelloworange expected
Colour[blue] actual
orange missinggreen
Colour[red] surplusColour[green]
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMismatch/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMismatch/properties.xml new file mode 100644 index 0000000000..2676953fc4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/ObjectMismatch/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170922 + + + + + + + + 1225512562281 + 946591265734637589 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/RowsWrong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/RowsWrong/content.txt new file mode 100644 index 0000000000..57351c119a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/RowsWrong/content.txt @@ -0,0 +1,57 @@ +!**< def +!define map1 (|a| +|A|B| +) +!define map2 (|A|B|C| +|a|b| +) +!define test (!|fitlibrary.specify.mapTraverse.StringMap| + +|''checks''| + +|''string map''|${map1}| + +|''string map''|${map2}| +) +**! +Each row for an expected element of the Map needs to be two cells wide. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapTraverse.StringMap
+
+ + +
checks
+
+ + + +
string map + + + + + + + +
a
Missing table cells
AB
a surplusb
+
+
+ + + +
string map + + + + + + + + + +
A
Extra table cells
BC
ab
A surplusB
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/RowsWrong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/RowsWrong/properties.xml new file mode 100644 index 0000000000..8a7bb35852 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/RowsWrong/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170932 + + + + + + + + 1225512572765 + -6226994710371325865 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/StringMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/StringMap/content.txt new file mode 100644 index 0000000000..f824eb8bf7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/StringMap/content.txt @@ -0,0 +1,53 @@ +!**< def +!define map1 (|a|b| +|A|B| +) +!define map2 (|A|B| +|a|b| +) +!define test (!|fitlibrary.specify.mapTraverse.StringMap| + +|''checks''| + +|''string map''|${map1}| + +|''string map''|${map2}| +) +**! +A table for a map contains, after the header, a row for each element of the map. A row consists of two cells: for the key and the value. The rows can be in any order, as a Map is also a set. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapTraverse.StringMap
+
+ + +
checks
+
+ + + +
string map + + + + + + +
ab
AB
+
+
+ + + +
string map + + + + + + +
AB
ab
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/StringMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/StringMap/properties.xml new file mode 100644 index 0000000000..b4ab3ea57b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/StringMap/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101170942 + + + + + + + + 1225512582046 + -5324610278157220691 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/content.txt new file mode 100644 index 0000000000..b245b8f430 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/content.txt @@ -0,0 +1,12 @@ +!3 A ''MapTraverse'' checks that a table corresponds to a given ''Map'' +^EmptyMap +^StringMap +^ObjectMap + +^EmptyMismatch +^ObjectMismatch +^ExpectedKeyNotUnique +^MixedObjectProblem + +^RowsWrong +^ExceptionsHandling diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/properties.xml new file mode 100644 index 0000000000..f8558a5184 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/MapTraverse/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154325 + + + + + + + + 1155182007967 + 7288865343256413598 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAll/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAll/content.txt new file mode 100644 index 0000000000..a942bf1804 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAll/content.txt @@ -0,0 +1,15 @@ +!2 All elements are there in the same order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1one
1two
2two
-!|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAll/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAll/properties.xml new file mode 100644 index 0000000000..d1c92c0aaa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAll/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874629890 + 4363419160955062157 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllDifferentOrder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllDifferentOrder/content.txt new file mode 100644 index 0000000000..07523cb6f0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllDifferentOrder/content.txt @@ -0,0 +1,15 @@ +!2 All elements are there in a different order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
2two
1one
1two
-!|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
2two
1one
1two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllDifferentOrder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllDifferentOrder/properties.xml new file mode 100644 index 0000000000..04360d4bfb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllDifferentOrder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874640734 + -5276857135543410863 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllWithProperty/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllWithProperty/content.txt new file mode 100644 index 0000000000..044d6a117c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllWithProperty/content.txt @@ -0,0 +1,15 @@ +!2 All elements there and we use a property to access +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
prop&
1one
1two
2two
-!|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
prop&
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllWithProperty/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllWithProperty/properties.xml new file mode 100644 index 0000000000..ac9d05ce68 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestAllWithProperty/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874653984 + 9189136341208764036 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestBag/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestBag/content.txt new file mode 100644 index 0000000000..46cfeaddd9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestBag/content.txt @@ -0,0 +1,18 @@ +!2 All elements are there, and there are duplicates +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest2
some+&
 1two
 1one
 1two
one  
-!|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest2
some+&
 1two
 1one
 1two
one  
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestBag/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestBag/properties.xml new file mode 100644 index 0000000000..ed692f7e29 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestBag/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874666921 + 4198051010006433452 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestExtraCells/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestExtraCells/content.txt new file mode 100644 index 0000000000..850497645a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestExtraCells/content.txt @@ -0,0 +1,16 @@ +!2 There is an extra cell in the 3rd row + +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1oneextra
1two
2two
-!|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1
Extra table cells
oneextra
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestExtraCells/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestExtraCells/properties.xml new file mode 100644 index 0000000000..a781475bd8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestExtraCells/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874678390 + -1275929713689351654 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestGraphics/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestGraphics/content.txt new file mode 100644 index 0000000000..512eaaef78 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestGraphics/content.txt @@ -0,0 +1,16 @@ +!2 Elements can be graphical things + +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTestGraphics
itree
2
  • a
  • BB
1a
1
  • a
-!|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTestGraphics
itree
2
  • a
  • BB
1a
1
  • a
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestGraphics/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestGraphics/properties.xml new file mode 100644 index 0000000000..44a823754b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestGraphics/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874689343 + 452362561983025706 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestInsertAtStart/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestInsertAtStart/content.txt new file mode 100644 index 0000000000..8d56e19326 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestInsertAtStart/content.txt @@ -0,0 +1,19 @@ +!2 All elements are there, except that an extra row is expected at the start + +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
0zero
1one
1two
2two
-!|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
0 missingzero
1one
1two
2two
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestInsertAtStart/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestInsertAtStart/properties.xml new file mode 100644 index 0000000000..7b19a46e01 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestInsertAtStart/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874701984 + -3584164969046500689 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMap/content.txt new file mode 100644 index 0000000000..552a22edcd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMap/content.txt @@ -0,0 +1,50 @@ +!**< def +!define test (!|fitlibrary.specify.MapFixture| + +|map| +|key|value| +|c|d| +|a|b| + +|camel free map| +|+|&| +|1|one| +|1|two| +|2|two| +) +**! +!2 The Map defines a set of elements (key and value). +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.MapFixture
+
+ + + + + + + + + + + +
map
keyvalue
cd
ab
+
+ + + + + + + + + + + + + + +
camel free map
+&
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMap/properties.xml new file mode 100644 index 0000000000..bc5b6be833 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMap/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225512596203 + -3374790889312611866 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissing/content.txt new file mode 100644 index 0000000000..d0e286e8dc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissing/content.txt @@ -0,0 +1,17 @@ +!2 ''!-SetFixture-!'' gives an error if a row is missing from the actual collection +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1one
1two
2two
3three
-!|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1one
1two
2two
3 missingthree
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissing/properties.xml new file mode 100644 index 0000000000..336e792f03 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissing/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874723421 + -8820167017277144899 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingAtStart/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingAtStart/content.txt new file mode 100644 index 0000000000..9e37eed5f1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingAtStart/content.txt @@ -0,0 +1,17 @@ +!2 ''!-SetFixture-!'' gives an error if a row is missing from the actual collection +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
3three
1one
1two
2two
-!|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
3 missingthree
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingAtStart/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingAtStart/properties.xml new file mode 100644 index 0000000000..c54c0b7eb0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingAtStart/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874734125 + -4888324663876597663 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingCells/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingCells/content.txt new file mode 100644 index 0000000000..c0169c7583 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingCells/content.txt @@ -0,0 +1,15 @@ +!2 A cell is missing in the 3rd row +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1
1two
2two
-!|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1
Missing table cells
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingCells/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingCells/properties.xml new file mode 100644 index 0000000000..a557c7cb84 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingCells/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874745578 + 1349691263857066380 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingRows/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingRows/content.txt new file mode 100644 index 0000000000..ad67163886 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingRows/content.txt @@ -0,0 +1,7 @@ +!2 Header row is missing +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.SetFixtureUnderTest
-!|!- + +
fitlibrary.specify.SetFixtureUnderTest
Missing row
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingRows/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingRows/properties.xml new file mode 100644 index 0000000000..c0259eec92 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMissingRows/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874757359 + -8244656139544474406 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMixedObjects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMixedObjects/content.txt new file mode 100644 index 0000000000..bed3a497fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMixedObjects/content.txt @@ -0,0 +1,17 @@ +!2 All elements of mixed types are in the correct order and all fields are accounted for. An unknown field for a particular object is accepted as long as the corresponding cell is empty. +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest2
+&some
1one 
1two 
1twoxxx
one
-!|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest2
+&some
1one 
1two 
1twoxxx expected
actual
one
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMixedObjects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMixedObjects/properties.xml new file mode 100644 index 0000000000..df3a7ba888 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestMixedObjects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874765937 + 8511492308104750889 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActuals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActuals/content.txt new file mode 100644 index 0000000000..fe4d73cc66 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActuals/content.txt @@ -0,0 +1,9 @@ +!2 ''!-SetFixture-!'' ignores the actual collection if it's empty +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + +
fitlibrary.specify.SetFixtureUnderTest3
+&
-!|!- + + +
fitlibrary.specify.SetFixtureUnderTest3
+&
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActuals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActuals/properties.xml new file mode 100644 index 0000000000..95a3a227d2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActuals/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1136154474734 + -5634507437948081535 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActualsSoMissing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActualsSoMissing/content.txt new file mode 100644 index 0000000000..b31a6c605d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActualsSoMissing/content.txt @@ -0,0 +1,11 @@ +!2 The actual collection is empty +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + +
fitlibrary.specify.SetFixtureUnderTest3
+&
1one
-!|!- + + + +
fitlibrary.specify.SetFixtureUnderTest3
+&
1 missingone
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActualsSoMissing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActualsSoMissing/properties.xml new file mode 100644 index 0000000000..d5ca87d84b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoActualsSoMissing/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874785734 + 4737345858682974104 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoneExpected/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoneExpected/content.txt new file mode 100644 index 0000000000..9ba4bb2616 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoneExpected/content.txt @@ -0,0 +1,17 @@ +!2 No elements are expected +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + +
fitlibrary.specify.SetFixtureUnderTest
+&
-!|!- + + + + + + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1 surplus one
1 surplus two
2 surplus two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoneExpected/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoneExpected/properties.xml new file mode 100644 index 0000000000..02ba69153a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestNoneExpected/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874794765 + -7169288259890179881 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestSurplus/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestSurplus/content.txt new file mode 100644 index 0000000000..ea8868341a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestSurplus/content.txt @@ -0,0 +1,15 @@ +!2 An element is surplus +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1one
1two
-!|!- + + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&
1one
1two
2 surplus two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestSurplus/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestSurplus/properties.xml new file mode 100644 index 0000000000..23561bb2d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestSurplus/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1131874805218 + 3317471044242816839 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestUnknownField/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestUnknownField/content.txt new file mode 100644 index 0000000000..dd5a91a452 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestUnknownField/content.txt @@ -0,0 +1,16 @@ +!2 A field that is not within any of the elements is rejected. +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&some
1one
1two
2two
-!|!- + + + + + +
fitlibrary.specify.SetFixtureUnderTest
+&some
Could not find property some
1one
1two
2two
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestUnknownField/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestUnknownField/properties.xml new file mode 100644 index 0000000000..dd6f6d2197 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestUnknownField/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120106 + + + + + + + + 1150586971720 + -4478044563117591816 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithFields/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithFields/content.txt new file mode 100644 index 0000000000..2a923b38f0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithFields/content.txt @@ -0,0 +1,36 @@ +!2 Rather than properties, we access fields directly +!**< def +!define set ( +|field1|field2| +|1|2| +|3|4| +) +!define test ( +!|fitlibrary.specify.set.AccessFields| + +|a set|'''is'''|${set}| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.set.AccessFields
+
+ + + + +
a setis
+ + + + + + + + + +
field1field2
12
34
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithFields/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithFields/properties.xml new file mode 100644 index 0000000000..2f6c388543 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithFields/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1225512610953 + -5749154481736113548 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithPrivateFields/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithPrivateFields/content.txt new file mode 100644 index 0000000000..82f2f9ce0c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithPrivateFields/content.txt @@ -0,0 +1,35 @@ +!2 We can access private fields directly +!**< def +!define set ( +|field1|field2| +|1|2| +|3|4| +) +!define test (!|fitlibrary.specify.set.AccessPrivateFields| + +|a set|'''is'''|${set}| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.set.AccessPrivateFields
+
+ + + + +
a setis
+ + + + + + + + + +
field1field2
12
34
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithPrivateFields/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithPrivateFields/properties.xml new file mode 100644 index 0000000000..8eae6017a8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/TestWithPrivateFields/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1225512621156 + 2293800050960298478 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/content.txt new file mode 100644 index 0000000000..3e5ecf77dc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/content.txt @@ -0,0 +1,21 @@ +^TestMap +^TestAll +^TestAllDifferentOrder +^TestAllWithProperty +^TestWithFields +^TestWithPrivateFields +^TestBag +^TestExtraCells +^TestGraphics + +^TestInsertAtStart +^TestMissing +^TestMissingAtStart +^TestMissingCells +^TestMissingRows +^TestMixedObjects +^TestNoActuals +^TestNoActualsSoMissing +^TestNoneExpected +^TestSurplus +^TestUnknownField diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/properties.xml new file mode 100644 index 0000000000..ed7076f2f4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SetTraverse/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1169174861218 + 5380382714801139555 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestAll/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestAll/content.txt new file mode 100644 index 0000000000..831ab97005 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestAll/content.txt @@ -0,0 +1,15 @@ +!2 ''!-SubsetFixture-!'' can check for the whole set +!|fitlibrary.spec.SpecifyFixture| +|!- + + + + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
1one
1two
2two
-!|!- + + + + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestAll/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestAll/properties.xml new file mode 100644 index 0000000000..2ee3c74064 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestAll/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120127 + + + + + + + + 1132629566574 + 5441808324874763864 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestFewer/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestFewer/content.txt new file mode 100644 index 0000000000..4e620af4f6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestFewer/content.txt @@ -0,0 +1,13 @@ +!2 ''!-SubsetFixture-!'' can check for a subset +!|fitlibrary.spec.SpecifyFixture| +|!- + + + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
1one
2two
-!|!- + + + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
1one
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestFewer/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestFewer/properties.xml new file mode 100644 index 0000000000..601a4214e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestFewer/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120127 + + + + + + + + 1132629692545 + 7146546526707315705 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMap/content.txt new file mode 100644 index 0000000000..24adb8357f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMap/content.txt @@ -0,0 +1,25 @@ +!**< def +!define test ( +!|fitlibrary.specify.MapFixture| + +|subset map| +|''key''|''value''| +|a|b| +) +**! +!2 The Map defines a set of elements (key and value). +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.MapFixture
+
+ + + + + + + + +
subset map
keyvalue
ab
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMap/properties.xml new file mode 100644 index 0000000000..9fd30b352d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMap/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101171033 + + + + + + + + 1225512633937 + 1188436852777881744 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMismatch/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMismatch/content.txt new file mode 100644 index 0000000000..2437435e9e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMismatch/content.txt @@ -0,0 +1,15 @@ +!2 An expected row is missing +!|fitlibrary.spec.SpecifyFixture| +|!- + + + + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
11
1two
2two
-!|!- + + + + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
1 missing1
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMismatch/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMismatch/properties.xml new file mode 100644 index 0000000000..4ecc57db9c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMismatch/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120127 + + + + + + + + 1132630046884 + 8728586029882061574 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMissing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMissing/content.txt new file mode 100644 index 0000000000..2882841193 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMissing/content.txt @@ -0,0 +1,17 @@ +!2 ''!-SubsetFixture-!'' gives an error if a row is missing from the actual collection +!|fitlibrary.spec.SpecifyFixture| +|!- + + + + + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
1one
1two
2two
3three
-!|!- + + + + + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
1one
1two
2two
3 missingthree
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMissing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMissing/properties.xml new file mode 100644 index 0000000000..cbebf1ec6f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestMissing/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120127 + + + + + + + + 1132629926661 + -6861053770206876744 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestNone/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestNone/content.txt new file mode 100644 index 0000000000..643cc4b93b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestNone/content.txt @@ -0,0 +1,12 @@ +!2 ''!-SubsetFixture-!'' can check for none (although it's not much use) +|!-fitlibrary.specify.SubsetFixtureUnderTest-!| +|+|&| + +!|fitlibrary.spec.SpecifyFixture| +|!- + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
-!|!- + + +
fitlibrary.specify.SubsetFixtureUnderTest
+&
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestNone/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestNone/properties.xml new file mode 100644 index 0000000000..18975beb82 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/TestNone/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120127 + + + + + + + + 1132629805788 + -7369200350160434521 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/content.txt new file mode 100644 index 0000000000..c5aa64b7b3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/content.txt @@ -0,0 +1,7 @@ +!2 ''!-SubsetFixture-!'' is the same as ''!-SetFixture-!'', except that it tests that the expected rows are a subset of the actual collection (ie, it ignores surplus) +^TestAll +^TestFewer +^TestNone +^TestMissing +^TestMismatch +^TestMap diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/properties.xml new file mode 100644 index 0000000000..e0ed3c2f5d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/SubsetTraverse/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060820120127 + + + + + + + + 1132629429266 + -1334137120664196486 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/content.txt new file mode 100644 index 0000000000..3208741146 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/content.txt @@ -0,0 +1 @@ +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/properties.xml new file mode 100644 index 0000000000..74f95c1d82 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CollectionSpecifications/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118160858 + + + + + + + + 1232248138671 + -1241808528417661767 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionExceptions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionExceptions/content.txt new file mode 100644 index 0000000000..551d444178 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionExceptions/content.txt @@ -0,0 +1,8 @@ +!2 Exceptions with the ''press'', ''enter'' and ''check'' methods are handled (with minor inconsistency) +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enterenterThrowsa string
enterenterThrowserror
presspressThrows
checkcheckThrows0
-!| +|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enter
+
enterThrowsa string
enter
+
enterThrowserror
press
+
pressThrows
checkcheckThrows0
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionExceptions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionExceptions/properties.xml new file mode 100644 index 0000000000..f5001856b8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionExceptions/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223713228218 + 1062458225703046929 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionsExistWithRightType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionsExistWithRightType/content.txt new file mode 100644 index 0000000000..df70aeb1eb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionsExistWithRightType/content.txt @@ -0,0 +1,4 @@ +!2 The ''press'', ''enter'' and ''check'' methods need to exist and have the right types +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enterenterResulta string
enterenterMethodWithNoArgsa string
enterenterMethodWithTwoArgsonetwo
pressunknownMethod
checkintResultMethoda string
-!| +|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enter
Could not parse: a string, expected type: int.
enterResulta string
enter
Could not find method: enterMethodWithNoArgs.
enterMethodWithNoArgsa string
enter
Could not find method: enterMethodWithTwoArgs.
enterMethodWithTwoArgsonetwo
press
Could not find method: unknownMethod.
unknownMethod
checkintResultMethoda string
Could not parse: a string, expected type: int.
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionsExistWithRightType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionsExistWithRightType/properties.xml new file mode 100644 index 0000000000..b47c5cc48b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ActionsExistWithRightType/properties.xml @@ -0,0 +1,12 @@ + + + + 20081101121031 + + + + + + 1225494631390 + 8764897478422725908 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/BooleanEquals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/BooleanEquals/content.txt new file mode 100644 index 0000000000..1278812a0b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/BooleanEquals/content.txt @@ -0,0 +1,18 @@ +!2 Boolean +The following are treated as true: + * true + * yes + * y + * 1 + * + +All other values are treated as false. + +!|fit.ActionFixture| +|start| fit.specify.ActionFixtureUnderTest| +|check| booleanTrue| true| +|check| booleanTrue| yes| +|check| booleanTrue| y| +|check| booleanTrue| 1| +|check| booleanTrue| +| +|check| booleanFalse| false| +|check| booleanFalse| nonBoolean| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/BooleanEquals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/BooleanEquals/properties.xml new file mode 100644 index 0000000000..1e3fa82839 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/BooleanEquals/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223713926515 + 7862099995870343164 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/EmptyTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/EmptyTable/content.txt new file mode 100644 index 0000000000..13e5019eb9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/EmptyTable/content.txt @@ -0,0 +1,6 @@ +!2 The tables doesn't need to do anything +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
-!|!-
fit.ActionFixture
-!| + +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
-!|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/EmptyTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/EmptyTable/properties.xml new file mode 100644 index 0000000000..d97ec2ab1b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/EmptyTable/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215043 + + + + + + 1223713301640 + 3777265030846157668 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ExtraCellsInRows/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ExtraCellsInRows/content.txt new file mode 100644 index 0000000000..9014f20115 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ExtraCellsInRows/content.txt @@ -0,0 +1,3 @@ +!2 Extra cells on the end of a row are ignored, and thus can be used to include comments +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTestextra
enterenterStringa stringextra
presspressMethodextra
checkintResultMethod0extra
-!|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTestextra
enterenterStringa stringextra
presspressMethodextra
checkintResultMethod0extra
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ExtraCellsInRows/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ExtraCellsInRows/properties.xml new file mode 100644 index 0000000000..1515ce107b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/ExtraCellsInRows/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223713357078 + 8384337369076396680 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/MissingCellsInRows/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/MissingCellsInRows/content.txt new file mode 100644 index 0000000000..19deb255d8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/MissingCellsInRows/content.txt @@ -0,0 +1,6 @@ +!2 These previously provided unhelpful exceptions +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
start
-!|!-
fit.ActionFixture
start
You must specify a fixture to start.
-!| + +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enter
enterenterString
enterenterStringa stringextra
press
presspressMethodextra
check
checkintResultMethod0extra
-!|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enter
You must specify a method.
enter
You must specify an argument.
enterString
enterenterStringa stringextra
press
You must specify a method.
presspressMethodextra
check
You must specify a method.
checkintResultMethod0extra
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/MissingCellsInRows/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/MissingCellsInRows/properties.xml new file mode 100644 index 0000000000..bf8578702d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/MissingCellsInRows/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215043 + + + + + + 1223713337234 + 6070216755370863815 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/NoStart/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/NoStart/content.txt new file mode 100644 index 0000000000..39805c3ff8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/NoStart/content.txt @@ -0,0 +1,6 @@ +!3 A problem with a missing ''start'' in ''!-ActionFixture-!'' +The first table with an ''!-ActionFixture-!'' needs a ''start'' +!|fitlibrary.specify.ClearStartInActionFixture| + +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
enterenterStringa string
-!|!-
fit.ActionFixture
enter
You must start a fixture using the 'start' keyword.
enterStringa string
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/NoStart/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/NoStart/properties.xml new file mode 100644 index 0000000000..b6a49c5f3a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/NoStart/properties.xml @@ -0,0 +1,11 @@ + + + + 20081029215042 + + + + + 1133752037359 + 5968426939927877456 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/PressCanBeVoid/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/PressCanBeVoid/content.txt new file mode 100644 index 0000000000..1834fb22c8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/PressCanBeVoid/content.txt @@ -0,0 +1,3 @@ +!2 A press method need not be void +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
presspressMethodReturningInt
-!|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
presspressMethodReturningInt
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/PressCanBeVoid/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/PressCanBeVoid/properties.xml new file mode 100644 index 0000000000..c6259415fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/PressCanBeVoid/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223713285765 + -6980479648739656169 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SameActor/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SameActor/content.txt new file mode 100644 index 0000000000..892819e484 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SameActor/content.txt @@ -0,0 +1,20 @@ +!2 The 'start' action allows a series of tables to be used to test through the same actor. It's especially handy when tables in between use other fixtures, such as a ''!-RowFixture-!''. +!|fitlibrary.spec.SpecifyFixture| +|!- + + + +
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enterenterResult134
+ + + +
fit.ActionFixture
checkintResultMethod134
-!|!- + + + +
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enterenterResult134
+ + + +
fit.ActionFixture
checkintResultMethod134
-!| + * There is no ''start'' in the second table diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SameActor/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SameActor/properties.xml new file mode 100644 index 0000000000..6dcc046b0b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SameActor/properties.xml @@ -0,0 +1,11 @@ + + + + + + + + + 1223712930531 + 2194109521058814119 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SelfStarter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SelfStarter/content.txt new file mode 100644 index 0000000000..e2e8ddffb3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SelfStarter/content.txt @@ -0,0 +1,2 @@ +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.specify.SelfStarter
enterenterStringa string
checksa string
-!|!-
fit.specify.SelfStarter
enterenterStringa string
checksa string
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SelfStarter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SelfStarter/properties.xml new file mode 100644 index 0000000000..dff57eecb8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SelfStarter/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1223713048578 + 5780548737576641280 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartMustExist/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartMustExist/content.txt new file mode 100644 index 0000000000..1031c49513 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartMustExist/content.txt @@ -0,0 +1,3 @@ +!2 The fixture class named in the ''start'' must exist +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
startUnknownFixture
-!|!-
fit.ActionFixture
start
Could not find fixture: UnknownFixture.
UnknownFixture
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartMustExist/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartMustExist/properties.xml new file mode 100644 index 0000000000..c9ebe071c4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartMustExist/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215043 + + + + + + 1223713316687 + -38576216886485728 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartNotFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartNotFixture/content.txt new file mode 100644 index 0000000000..f05b1db63d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartNotFixture/content.txt @@ -0,0 +1,10 @@ +!2 The actor (''start'' class) has to be a ''Fixture'' subclass + * Notice how subsequent rows of the table are interpreted even though the ''start'' failed. Similarly for the table below, where !-ActionFixture-! continues even though there is a problem (exception) with a row. +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.specify.ClearActionFixture
+ + +
fit.ActionFixture
startfit.specify.NonFixture
enterx12
-!|!-
fit.specify.ClearActionFixture
+ + +
fit.ActionFixture
start
fit.specify.NonFixture
enter
You must start a fixture using the 'start' keyword.
x12
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartNotFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartNotFixture/properties.xml new file mode 100644 index 0000000000..9d546c1f4e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/StartNotFixture/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223714559375 + 7816437414699888292 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SwitchActor/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SwitchActor/content.txt new file mode 100644 index 0000000000..7b96371fc3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SwitchActor/content.txt @@ -0,0 +1,3 @@ +!2 Switching actor dynamically can be done through using ''start'' or through an actor fixture switching programmatically. +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enterenterStringa string
pressswitchActor
pressstart
enterenterStringa string
pressswitchBack
enterenterStringa string
pressstart
startfitlibrary.specify.AnotherActor
pressstart
-!|!-
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enterenterStringa string
pressswitchActor
pressstart
enter
Could not find method: enterString.
enterStringa string
pressswitchBack
enterenterStringa string
press
Could not find method: start.
start
startfitlibrary.specify.AnotherActor
pressstart
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SwitchActor/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SwitchActor/properties.xml new file mode 100644 index 0000000000..a195fea876 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/SwitchActor/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223712951140 + 1178029046746595007 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/UsualOperation/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/UsualOperation/content.txt new file mode 100644 index 0000000000..8b7b392dd7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/UsualOperation/content.txt @@ -0,0 +1,23 @@ +!3 ''!-ActionFixture-!'' continues even if there is a problem (wrong) with a row. + +!|fitlibrary.spec.SpecifyFixture| +|!- + + + + + + + + +
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enterenterStringa string
enterenter stringa string
presspressMethod
checkintResultMethod1
checkintResultMethod0
checkintResultMethod
-!|!- + + + + + + + + +
fit.ActionFixture
startfit.specify.ActionFixtureUnderTest
enterenterStringa string
enterenter stringa string
presspressMethod
checkintResultMethod1 expected
0 actual
checkintResultMethod0
checkintResultMethod 0
-!| +Notice the above use of the ''camel'' form of the method "enterString" as "enter string". diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/UsualOperation/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/UsualOperation/properties.xml new file mode 100644 index 0000000000..089ff5be26 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/UsualOperation/properties.xml @@ -0,0 +1,12 @@ + + + + 20081124201813 + + + + + + 1223712912578 + -8208245810866916473 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/content.txt new file mode 100644 index 0000000000..cb5e55c1a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/content.txt @@ -0,0 +1,17 @@ +Fit version 2003-9-15 +^UsualOperation +^SameActor +^SwitchActor +^SelfStarter +!3 Unusual conditions and error handling +^NoStart +^StartNotFixture +^ActionExceptions +^ActionsExistWithRightType +^PressCanBeVoid +^EmptyTable +^StartMustExist +^MissingCellsInRows +^ExtraCellsInRows +>BooleanEquals + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/properties.xml new file mode 100644 index 0000000000..06f3d85b70 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ActionFixture/properties.xml @@ -0,0 +1,10 @@ + + + + + + + + 1232251258468 + 6009231404785214071 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CamelNames/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CamelNames/content.txt new file mode 100644 index 0000000000..14c1b2a033 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CamelNames/content.txt @@ -0,0 +1,7 @@ +!2 Camel names, like ''!-ActionFixture-!'': +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fit.specify.ColumnFixtureUnderTest
camelFieldNamecamel field namegetCamelFieldName()get camel field name()
onetwotwotwo
-!|!- + +
fit.specify.ColumnFixtureUnderTest
camelFieldNamecamel field namegetCamelFieldName()get camel field name()
onetwotwotwo
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CamelNames/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CamelNames/properties.xml new file mode 100644 index 0000000000..5397e17016 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CamelNames/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223710988375 + 6735050140770371051 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CannotParse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CannotParse/content.txt new file mode 100644 index 0000000000..8ab6d82e69 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CannotParse/content.txt @@ -0,0 +1,12 @@ +!2 An exception is thrown if the input for a field, or the expected value of a method, is of a type that can't be parsed (as it's not defined). +!|fitlibrary.spec.SpecifyFixture| +|!- + + + +
fit.specify.ColumnFixtureUnderTest
calendaruseCalendar()
24 Sept 200324 Sept 2003
-!| +|!- + + + +
fit.specify.ColumnFixtureUnderTest
calendaruseCalendar()
24 Sept 2003
Could not parse: 24 Sept 2003, expected type: java.util.Calendar.
24 Sept 2003
Could not parse: 24 Sept 2003, expected type: java.util.Calendar.
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CannotParse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CannotParse/properties.xml new file mode 100644 index 0000000000..54585b22fb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/CannotParse/properties.xml @@ -0,0 +1,12 @@ + + + + 20081101121129 + + + + + + 1225494689593 + -3499709152098324763 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/FixtureArguments/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/FixtureArguments/content.txt new file mode 100644 index 0000000000..7d59367fb6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/FixtureArguments/content.txt @@ -0,0 +1,13 @@ +!2 A table for a core fixture, such as ''!-ColumnFixture-!'', can have one or more arguments following the fixture class name in the first row of the table. +These can be used to pass extra information to the fixture, such as values that apply to all of the rows. + +These arguments can be accessed as Strings by the fixture subclass written by the programmer. + +In this example, two arguments are provided in this way: + +|!-fit.specify.ColumnFixtureUnderTestWithArgs-!|1|2| +|''third''|''sum()''| +|0|3| +|10|13| + +The way the arguments are collected is implementation-dependent. In the Java version, they are accessed in a fixture by calling the inherited method ''getArgs()'', which return a ''String[]''. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/FixtureArguments/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/FixtureArguments/properties.xml new file mode 100644 index 0000000000..f949af12bb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/FixtureArguments/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215042 + + + + + + + + 1223711155734 + -8208729391271568520 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingField/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingField/content.txt new file mode 100644 index 0000000000..00425630c8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingField/content.txt @@ -0,0 +1,5 @@ +!2 An exception is thrown if a field doesn't exist. +!|fitlibrary.spec.SpecifyFixture| +|!- +
fit.specify.ColumnFixtureUnderTest
unknownField
-!|!- +
fit.specify.ColumnFixtureUnderTest
unknownField
Could not find field: unknownField.
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingField/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingField/properties.xml new file mode 100644 index 0000000000..bce3d4d6d5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingField/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223711174750 + -344464625392187144 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingFirstRow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingFirstRow/content.txt new file mode 100644 index 0000000000..fabe3b5298 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingFirstRow/content.txt @@ -0,0 +1,3 @@ +!2 An exception is thrown if the first row, containing field and method names, is missing. +!|fitlibrary.spec.SpecifyFixture| +|!-
fit.specify.ColumnFixtureUnderTest
-!|!-
fit.specify.ColumnFixtureUnderTest
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingFirstRow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingFirstRow/properties.xml new file mode 100644 index 0000000000..5c535c108a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingFirstRow/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223711196937 + -7946737810701836125 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingMethod/content.txt new file mode 100644 index 0000000000..0a5975d72b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingMethod/content.txt @@ -0,0 +1,5 @@ +!2 An exception is thrown if a method doesn't exist. +!|fitlibrary.spec.SpecifyFixture| +|!- +
fit.specify.ColumnFixtureUnderTest
unknownMethod()
-!|!- +
fit.specify.ColumnFixtureUnderTest
unknownMethod()
Could not find method: unknownMethod().
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingMethod/properties.xml new file mode 100644 index 0000000000..dc686cfeb3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/MissingMethod/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223711213843 + 3827179262030060445 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsLong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsLong/content.txt new file mode 100644 index 0000000000..be4ead2be9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsLong/content.txt @@ -0,0 +1,8 @@ +!2 A row that's too long leads to an exception. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fit.specify.ColumnFixtureUnderTest
abplus()
1121314
-!| +|!- + +
fit.specify.ColumnFixtureUnderTest
abplus()
1121314
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsLong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsLong/properties.xml new file mode 100644 index 0000000000..72161d2179 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsLong/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223714612890 + -8450960604693465861 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsShort/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsShort/content.txt new file mode 100644 index 0000000000..0b8c93d1c6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsShort/content.txt @@ -0,0 +1,10 @@ +!2 Rows can be incomplete, without warning. An error is given on extra cells. +!|fitlibrary.spec.SpecifyFixture| +|!- + + +
fit.specify.ColumnFixtureUnderTest
abplus()
112
1121314
-!| +|!- + + +
fit.specify.ColumnFixtureUnderTest
abplus()
112
1121314
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsShort/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsShort/properties.xml new file mode 100644 index 0000000000..d3bac9012b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/RowsShort/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223714629156 + 5192676481739029676 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialEmpty/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialEmpty/content.txt new file mode 100644 index 0000000000..74a57aece2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialEmpty/content.txt @@ -0,0 +1,11 @@ +!2 If a field cell is empty, its current value is provided in that cell in the result. The same for a method call. +!|fitlibrary.spec.SpecifyFixture| +|!- + + + +
fit.specify.ColumnFixtureUnderTest
abplus()
123
-!|!- + + + +
fit.specify.ColumnFixtureUnderTest
abplus()
0 0 0
123
1 2 3
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialEmpty/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialEmpty/properties.xml new file mode 100644 index 0000000000..3b9c3c2b08 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialEmpty/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223712164656 + -1662132662940248265 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialError/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialError/content.txt new file mode 100644 index 0000000000..42b31b0c29 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialError/content.txt @@ -0,0 +1,12 @@ +!2 Exceptions are expected with the special string "error". If the cell is blank and an exception is thrown, "error" is reported. The exception is reported if something else was expected. +!|fitlibrary.spec.SpecifyFixture| +|!- + + + +
fit.specify.ColumnFixtureUnderTest
exceptionMethod()
error
no exception
-!| +|!- + + + +
fit.specify.ColumnFixtureUnderTest
exceptionMethod()
error
error
no exception
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialError/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialError/properties.xml new file mode 100644 index 0000000000..ca8e5425d4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialError/properties.xml @@ -0,0 +1,12 @@ + + + + 20081124201813 + + + + + + 1223714645187 + -4208838835445871086 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialErrorWrong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialErrorWrong/content.txt new file mode 100644 index 0000000000..53b44a1ef9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialErrorWrong/content.txt @@ -0,0 +1,7 @@ +!2 It's wrong if an exception is not thrown with the special string "error". +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fit.specify.ColumnFixtureUnderTest
plus()
error
-!|!- + +
fit.specify.ColumnFixtureUnderTest
plus()
error expected
0 actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialErrorWrong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialErrorWrong/properties.xml new file mode 100644 index 0000000000..fbfa9df486 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/SpecialErrorWrong/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223712200921 + 6148332418443734291 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestDifferingResults/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestDifferingResults/content.txt new file mode 100644 index 0000000000..3cabe3f8af --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestDifferingResults/content.txt @@ -0,0 +1,9 @@ +!2 A method may return different results on each call. +!|fitlibrary.spec.SpecifyFixture| +|!- + + +
fit.specify.ColumnFixtureUnderTest
increment()increment()
12
34
-!|!- + + +
fit.specify.ColumnFixtureUnderTest
increment()increment()
12
34
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestDifferingResults/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestDifferingResults/properties.xml new file mode 100644 index 0000000000..90f9b39a94 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestDifferingResults/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223712217937 + -2316066708845109006 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestFieldsAndMethods/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestFieldsAndMethods/content.txt new file mode 100644 index 0000000000..c67cdfb07d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestFieldsAndMethods/content.txt @@ -0,0 +1,14 @@ +!2 A table can include a mixture of fields and methods. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fit.specify.ColumnFixtureUnderTest
abplus()minus()
11213-11
-!|!- + +
fit.specify.ColumnFixtureUnderTest
abplus()minus()
11213-11
-!| + * And "?" can be used instead of "()" +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fit.specify.ColumnFixtureUnderTest
abplus?minus?
11213-11
-!|!- + +
fit.specify.ColumnFixtureUnderTest
abplus?minus?
11213-11
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestFieldsAndMethods/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestFieldsAndMethods/properties.xml new file mode 100644 index 0000000000..05edf63537 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestFieldsAndMethods/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223714283359 + 520567741808286784 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestLeftToRight/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestLeftToRight/content.txt new file mode 100644 index 0000000000..cd06fefc2a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestLeftToRight/content.txt @@ -0,0 +1,9 @@ +!2 Inputs and outputs are processed from left to right. Processing continues across a row even if an earlier method call was wrong. +!|fitlibrary.spec.SpecifyFixture| +|!- + + +
fit.specify.ColumnFixtureUnderTest
aplus()bplus()
111213
213-20
-!|!- + + +
fit.specify.ColumnFixtureUnderTest
aplus()bplus()
111213
213 expected
14 actual
-20
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestLeftToRight/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestLeftToRight/properties.xml new file mode 100644 index 0000000000..a698e5b31c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestLeftToRight/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223712263234 + 8229621047612099070 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsExplicit/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsExplicit/content.txt new file mode 100644 index 0000000000..afebe7deec --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsExplicit/content.txt @@ -0,0 +1,22 @@ +!2 Usual operation of ''!-ColumnFixture-!'' +!|fitlibrary.spec.SpecifyFixture| +|!- + + + +
fit.specify.ColumnFixtureUnderTest
abplus()
11213
-2107105
01213
-!|!- + + + +
fit.specify.ColumnFixtureUnderTest
abplus()
11213
-2107105
01213 expected
12 actual
-!| + * And "?" can be sued instead of "()" +!|fitlibrary.spec.SpecifyFixture| +|!- + + + +
fit.specify.ColumnFixtureUnderTest
abplus?
11213
-2107105
01213
-!|!- + + + +
fit.specify.ColumnFixtureUnderTest
abplus?
11213
-2107105
01213 expected
12 actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsExplicit/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsExplicit/properties.xml new file mode 100644 index 0000000000..42c49401f0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsExplicit/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223714325281 + 8244511469660541616 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsFail/content.txt new file mode 100644 index 0000000000..713df7bb4b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsFail/content.txt @@ -0,0 +1,7 @@ +!2 Wrong values are reported +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fit.specify.ColumnFixtureUnderTest
abplus()
01213
-!|!- + +
fit.specify.ColumnFixtureUnderTest
abplus()
01213 expected
12 actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsFail/properties.xml new file mode 100644 index 0000000000..d83526d9ae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/TestsFail/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223712295734 + 2358871290227371086 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/VoidMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/VoidMethod/content.txt new file mode 100644 index 0000000000..ddd61cd364 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/VoidMethod/content.txt @@ -0,0 +1,6 @@ +!2 An exception is thrown if a method doesn't return a value (is void). +!|fitlibrary.spec.SpecifyFixture| +|!- +
fit.specify.ColumnFixtureUnderTest
voidMethod()
-!| +|!- +
fit.specify.ColumnFixtureUnderTest
voidMethod()
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/VoidMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/VoidMethod/properties.xml new file mode 100644 index 0000000000..24b968d5ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/VoidMethod/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223712347578 + 7069616634118351456 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/WrongType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/WrongType/content.txt new file mode 100644 index 0000000000..af2fde586e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/WrongType/content.txt @@ -0,0 +1,8 @@ +!2 An exception is thrown if the input for a field, or the expected value of a method, is of the wrong type. +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fit.specify.ColumnFixtureUnderTest
aplus()
oneone
-!| +|!- + +
fit.specify.ColumnFixtureUnderTest
aplus()
one
one
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/WrongType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/WrongType/properties.xml new file mode 100644 index 0000000000..6335932263 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/WrongType/properties.xml @@ -0,0 +1,12 @@ + + + + 20081029215042 + + + + + + 1223712387203 + -7422650937225018382 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/content.txt new file mode 100644 index 0000000000..6d93e04f4a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/content.txt @@ -0,0 +1,22 @@ +Fit version 2003-9-15 +^TestsExplicit +^TestsFail +^TestFieldsAndMethods +!3 Details of operation +^TestLeftToRight +^TestDifferingResults +^RowsShort +^CamelNames +^FixtureArguments +!3 Two special cell contents +^SpecialError +^SpecialErrorWrong +^SpecialEmpty +!3 Error Conditions +^MissingField +^MissingMethod +^VoidMethod +^WrongType +^CannotParse +^MissingFirstRow +^RowsLong diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/properties.xml new file mode 100644 index 0000000000..b9ba830ee3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/ColumnFixture/properties.xml @@ -0,0 +1,11 @@ + + + + 20090118170048 + + + + + 1232251248281 + 4162621168572047917 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/DefaultPackages/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/DefaultPackages/content.txt new file mode 100644 index 0000000000..d07ce86669 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/DefaultPackages/content.txt @@ -0,0 +1,19 @@ +!**< test +!define test (!|Import| +|fitlibrary.speciallyNamedPackage| + +!|ClassInOddPackage| +) + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + + +
Import
fitlibrary.speciallyNamedPackage
+
+ + +
ClassInOddPackage
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/DefaultPackages/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/DefaultPackages/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/DefaultPackages/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FitPackageByDefault/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FitPackageByDefault/content.txt new file mode 100644 index 0000000000..d2935727b8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FitPackageByDefault/content.txt @@ -0,0 +1,13 @@ +!**< test +!define test (!|ColumnFixture| +|unknown?| +) + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + + +
ColumnFixture
unknown?
Could not find method: unknown?.
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FitPackageByDefault/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FitPackageByDefault/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FitPackageByDefault/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FixtureByDefault/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FixtureByDefault/content.txt new file mode 100644 index 0000000000..10ff201d03 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FixtureByDefault/content.txt @@ -0,0 +1,13 @@ +!**> test +!define test (!|Column| +|unknown?| +) + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + + +
Column
unknown?
Could not find method: unknown?.
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FixtureByDefault/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FixtureByDefault/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/FixtureByDefault/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/content.txt new file mode 100644 index 0000000000..3906b49306 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/content.txt @@ -0,0 +1,3 @@ +>FitPackageByDefault +>FixtureByDefault +^DefaultPackages diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/properties.xml new file mode 100644 index 0000000000..5f567cb6b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/PackageImportsAndDefaults/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/BadFieldNames/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/BadFieldNames/content.txt new file mode 100644 index 0000000000..f7c64a7218 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/BadFieldNames/content.txt @@ -0,0 +1,8 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + +
fit.specify.RowFixtureUnderTest2
x
-!|!- + + +
fit.specify.RowFixtureUnderTest2
x
Could not find field: x.
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/BadFieldNames/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/BadFieldNames/properties.xml new file mode 100644 index 0000000000..84ac1664d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/BadFieldNames/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712632203 + 3495991200080723902 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsAnyOrder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsAnyOrder/content.txt new file mode 100644 index 0000000000..963793fc10 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsAnyOrder/content.txt @@ -0,0 +1,15 @@ +!2 The columns can be given in any order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
sa
two1
one1
two2
-!|!- + + + + + +
fit.specify.RowFixtureUnderTest
sa
two1
one1
two2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsAnyOrder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsAnyOrder/properties.xml new file mode 100644 index 0000000000..ee44460953 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsAnyOrder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712494531 + 7925813303327944115 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsRepeated/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsRepeated/content.txt new file mode 100644 index 0000000000..26b8d8ff48 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsRepeated/content.txt @@ -0,0 +1,15 @@ +!2 The columns can be given in any order and repeated +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
sas
two1two
two2two
one1one
-!|!- + + + + + +
fit.specify.RowFixtureUnderTest
sas
two1two
two2two
one1one
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsRepeated/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsRepeated/properties.xml new file mode 100644 index 0000000000..85418d48a8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ColumnsRepeated/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712510390 + 8633505856996791686 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ExtraCellsIgnored/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ExtraCellsIgnored/content.txt new file mode 100644 index 0000000000..6183f1567b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ExtraCellsIgnored/content.txt @@ -0,0 +1,15 @@ +!2 Extra cells are ignored and can be used to include comments +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
a
1extraextra
1
2extra
-!|!- + + + + + +
fit.specify.RowFixtureUnderTest
a
1extraextra
1
2extra
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ExtraCellsIgnored/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ExtraCellsIgnored/properties.xml new file mode 100644 index 0000000000..a77b7d31ac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/ExtraCellsIgnored/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712647343 + 344720849867676052 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/InconsistentColumns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/InconsistentColumns/content.txt new file mode 100644 index 0000000000..4f23d34dc3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/InconsistentColumns/content.txt @@ -0,0 +1,15 @@ +!2 Repeated columns have to be consistent: +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
sas
two1one
one1two
two2two
-!|!- + + + + + +
fit.specify.RowFixtureUnderTest
sas
two1one expected
two actual
one1two expected
one actual
two2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/InconsistentColumns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/InconsistentColumns/properties.xml new file mode 100644 index 0000000000..54460fafee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/InconsistentColumns/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712617015 + -5769142048697386523 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingCells/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingCells/content.txt new file mode 100644 index 0000000000..1c0f586a8a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingCells/content.txt @@ -0,0 +1,20 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
as
0
1
2
-!|!- + + + + + + + + + + +
fit.specify.RowFixtureUnderTest
as
0 missing
1 missing
2
1 surplus two
1 surplus one
-!| + * note that this storytest is sensitive to row order \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingCells/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingCells/properties.xml new file mode 100644 index 0000000000..4d4ee748ea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingCells/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712750062 + -3352308486621193556 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingRow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingRow/content.txt new file mode 100644 index 0000000000..76a6bfdfea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingRow/content.txt @@ -0,0 +1,18 @@ +!2 A 'missing' row is a row that's expected but not there. +Here the last row is missing: +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + + +
fit.specify.RowFixtureUnderTest
sa
one1
two2
two1
seven1
-!|!- + + + + + + +
fit.specify.RowFixtureUnderTest
sa
one1
two2
two1
seven missing1
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingRow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingRow/properties.xml new file mode 100644 index 0000000000..600a9a88d5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/MissingRow/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712542453 + -7805502273392264212 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsAnyOrder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsAnyOrder/content.txt new file mode 100644 index 0000000000..f3819edd96 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsAnyOrder/content.txt @@ -0,0 +1,15 @@ +!2 The rows can be given in any order +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
as
2two
1two
1one
-!|!- + + + + + +
fit.specify.RowFixtureUnderTest
as
2two
1two
1one
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsAnyOrder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsAnyOrder/properties.xml new file mode 100644 index 0000000000..1d25c185e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsAnyOrder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712478953 + -3767501705023368958 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsCorrect/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsCorrect/content.txt new file mode 100644 index 0000000000..a838c570da --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsCorrect/content.txt @@ -0,0 +1,15 @@ +!2 There are three rows, as shown here +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
as
1one
1two
2two
-!|!- + + + + + +
fit.specify.RowFixtureUnderTest
as
1one
1two
2two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsCorrect/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsCorrect/properties.xml new file mode 100644 index 0000000000..dbab2036a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/RowsCorrect/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712465078 + 5320739906997793637 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SomeColumns/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SomeColumns/content.txt new file mode 100644 index 0000000000..fa330a3e1c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SomeColumns/content.txt @@ -0,0 +1,15 @@ +!2 A subset of the columns may be provided (the rows don't need to be unique) +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
s
two
one
two
-!|!- + + + + + +
fit.specify.RowFixtureUnderTest
s
two
one
two
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SomeColumns/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SomeColumns/properties.xml new file mode 100644 index 0000000000..f3a0d7fad2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SomeColumns/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712525343 + 2115476161191808089 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SpecialCellValue/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SpecialCellValue/content.txt new file mode 100644 index 0000000000..6e69d740a2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SpecialCellValue/content.txt @@ -0,0 +1,19 @@ +!2 Special cell value " ", which is available in ''!-ColumnFixture-!'' is not applicable here +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fit.specify.RowFixtureUnderTest
as
1one
1
-!|!- + + + + + + + + + +
fit.specify.RowFixtureUnderTest
as
1one
1 missing
1 surplus two
2 surplus two
-!| + * This storytest is sensitive to the order that the elements of the set are processed \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SpecialCellValue/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SpecialCellValue/properties.xml new file mode 100644 index 0000000000..d1c38366b6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SpecialCellValue/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712827375 + 2227828585068462505 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SurplusRow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SurplusRow/content.txt new file mode 100644 index 0000000000..01d1bfbc30 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SurplusRow/content.txt @@ -0,0 +1,15 @@ +!2 A surplus row is a row that's not expected to be in the actual list: +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fit.specify.RowFixtureUnderTest
sa
one1
two2
-!|!- + + + + + + +
fit.specify.RowFixtureUnderTest
sa
one1
two2
two surplus 1
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SurplusRow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SurplusRow/properties.xml new file mode 100644 index 0000000000..6b32f20bca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/SurplusRow/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081029215043 + + + + + + + 1223712557484 + -512482809526509979 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKey/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKey/content.txt new file mode 100644 index 0000000000..f3229c1758 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKey/content.txt @@ -0,0 +1,18 @@ +!2 If a key value is wrong, it's treated as a replacement (missing + surplus). +Here the expected "|3|one|" was actually "|1|one|" (the same as above but the columns are reordered): +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
as
2two
1two
3one
-!|!- + + + + + + + +
fit.specify.RowFixtureUnderTest
as
2two
1two
3 missingone
1 surplus one
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKey/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKey/properties.xml new file mode 100644 index 0000000000..0f8d903591 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKey/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712586281 + 3180864597706548629 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKeyDuplicated/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKeyDuplicated/content.txt new file mode 100644 index 0000000000..4bdbb9b7ad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKeyDuplicated/content.txt @@ -0,0 +1,18 @@ +!2 If there are several rows with the same key as the one that's wrong, it's treated as a replacement as well. +Here the expected "|two|3|" was actually "|two|2|": +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
sa
two3
two1
one1
-!|!- + + + + + + + +
fit.specify.RowFixtureUnderTest
sa
two missing3
two1
one1
two surplus 2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKeyDuplicated/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKeyDuplicated/properties.xml new file mode 100644 index 0000000000..34e7353a6d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongKeyDuplicated/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712601140 + 5308277258388614923 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongNonKey/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongNonKey/content.txt new file mode 100644 index 0000000000..01cc19da83 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongNonKey/content.txt @@ -0,0 +1,18 @@ +!2 Wrong values are signalled in different ways, depending on where they occur in a row. +Matching of each row proceeds from left to right across the columns, so that earlier columns act as keys. + +If a "non-key" value is wrong, it's signalled in place. Here the expected "|one|3|" was actually "|one|1|": +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + + +
fit.specify.RowFixtureUnderTest
sa
two2
two1
one3
-!|!- + + + + + +
fit.specify.RowFixtureUnderTest
sa
two2
two1
one3 expected
1 actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongNonKey/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongNonKey/properties.xml new file mode 100644 index 0000000000..56fba77c88 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/WrongNonKey/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081029215043 + + + + + + + + 1223712571843 + 1360238502981302478 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/content.txt new file mode 100644 index 0000000000..689498d98b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/content.txt @@ -0,0 +1,18 @@ +^RowsCorrect +^RowsAnyOrder +^ColumnsAnyOrder +^ColumnsRepeated +^SomeColumns +!2 Missing and Surplus Rows +^MissingRow +^SurplusRow +!2 Wrong Values +^WrongNonKey +^WrongKey +^WrongKeyDuplicated +^InconsistentColumns +!2 Errors +^BadFieldNames +^ExtraCellsIgnored +^MissingCells +^SpecialCellValue diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/properties.xml new file mode 100644 index 0000000000..8601235a3e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/RowFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081029215043 + + + + + + + 1133645081796 + 7769714597281631360 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/SummaryFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/SummaryFixture/content.txt new file mode 100644 index 0000000000..5e14fd11d5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/SummaryFixture/content.txt @@ -0,0 +1,36 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.ResetCounts
+ + +
fit.Summary
+ + +
unknown
+ + + +
fit.ActionFixture
startunknown
+ + +
fit.Summary
-!|!- + +
fitlibrary.specify.ResetCounts
+ + + + +
fit.Summary
counts 0 right, 0 wrong, 0 ignored, 0 exceptions
+ + +
unknown
+ + + +
fit.ActionFixture
start
Could not find fixture: unknown.
unknown
+ + + + +
fit.Summary
counts 0 right, 0 wrong, 0 ignored, 2 exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/SummaryFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/SummaryFixture/properties.xml new file mode 100644 index 0000000000..dadfc0a89d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/SummaryFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1224577372468 + 5628628734709279654 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/content.txt new file mode 100644 index 0000000000..b38e43084e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/content.txt @@ -0,0 +1,2 @@ +|!contents| +>PackageImportsAndDefaults \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/properties.xml new file mode 100644 index 0000000000..efef804e5f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/CoreFitSpecifications/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1150501387561 + 5377812094259666025 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonDefinedAction/content.txt new file mode 100644 index 0000000000..80184c9f97 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonDefinedAction/content.txt @@ -0,0 +1,12 @@ +|''act''| + +|'''show'''|''get''|1| + +|''abandon storytest''| +|'''show'''|''get''|2| + +|'''show'''|''get''|3| +---- +|''act 2''| + +|''act''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonDefinedAction/properties.xml new file mode 100644 index 0000000000..da15b65342 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonDefinedAction/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090928124616 + true + true + true + true + true + true + 1254095176310 + 9190678407425636824 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInDefinedAction/content.txt new file mode 100644 index 0000000000..e4cab8fd88 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInDefinedAction/content.txt @@ -0,0 +1,56 @@ +!**< def +!define test (!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.AbandonDefinedAction| + +|''act''| + +|''act''| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActions.AbandonDefinedAction
+
+ + +
act Defined action call +

+ + + + + +
showget11
+

+ + + + + + +
abandon storytest
showget2
+

+ + + + +
showget3
+
+ + +
act
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInDefinedAction/properties.xml new file mode 100644 index 0000000000..aff93f5618 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInDefinedAction/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254271924449 + -7927597061473847117 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInNestedDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInNestedDefinedAction/content.txt new file mode 100644 index 0000000000..df321a30e7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInNestedDefinedAction/content.txt @@ -0,0 +1,69 @@ +!**< def +!define test (!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.AbandonDefinedAction| + +|''set expand defined actions''|true| + +|''act 2''| + +|''act 2''| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActions.AbandonDefinedAction
+
+ + + +
set expand defined actionstrue
+
+ + +
act 2 Defined action call .FitLibrary.SpecifiCations.DefinedActions.AbandonDefinedAction: +

+ + + +
act Defined action call .FitLibrary.SpecifiCations.DefinedActions.AbandonDefinedAction: +

+ + + + + +
showget11
+

+ + + + + + +
abandon storytest
showget2
+

+ + + + +
showget3
+
+
+ + +
act 2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInNestedDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInNestedDefinedAction/properties.xml new file mode 100644 index 0000000000..1e99bc150d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AbandonInNestedDefinedAction/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254264566001 + -6997971407091855824 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/DefinedActions/content.txt new file mode 100644 index 0000000000..5e077938e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/DefinedActions/content.txt @@ -0,0 +1,42 @@ +|''def action''| + +|''def action 2''| +---- +|''def action 2''| + +!|fitlibrary.specify.definedAction.TemporaryFixturing| +|temporarily in scope| +---- +|''def action 3''| + +!|fitlibrary.specify.definedAction.TemporaryFixturing| +|permanently in scope| +---- +|''def value''|v| + +|value|is|@{v}| +---- +|''def value again''|v| + +|value|is|@{v}| + +|other|11| +|''value''|'''is'''|11| +|other|12| +|''value''|'''is'''|12| + +|value|is|@{v}| +---- +|''def value again again''|v| + +|value|is|@{v}| + +|''def value again''|@{v}| + +|other|110| +|''value''|'''is'''|110| +|other|120| +|''value''|'''is'''|120| + +|value|is|@{v}| +---- \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/DefinedActions/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/DefinedActions/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/ExceptWhenNoFlowObjectInOuterScope/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/ExceptWhenNoFlowObjectInOuterScope/content.txt new file mode 100644 index 0000000000..e88e9af859 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/ExceptWhenNoFlowObjectInOuterScope/content.txt @@ -0,0 +1,44 @@ +!**< def +!define test (|clear defined actions| + +|define actions at|.FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions| + +|''set expand defined actions''|true| + +|''def action 3''| + +|''permanently in scope''| +) +*! +!2 As the defined action execution creates the first flowable object of the storytest, it becomes the flow object thereafter + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions
+
+ + + +
set expand defined actionstrue
+
+ + +
def action 3 Defined action call .FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions: +

+ + + +
fitlibrary.specify.definedAction.TemporaryFixturing
permanently in scope
+
+ + +
permanently in scope
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/ExceptWhenNoFlowObjectInOuterScope/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/ExceptWhenNoFlowObjectInOuterScope/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/ExceptWhenNoFlowObjectInOuterScope/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/WithSomethingInOuterScope/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/WithSomethingInOuterScope/content.txt new file mode 100644 index 0000000000..d60780a2ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/WithSomethingInOuterScope/content.txt @@ -0,0 +1,191 @@ +!**< def +!define test (!|fitlibrary.specify.definedAction.OtherFixturing| + +|clear defined actions| + +|define actions at|.FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions| + +|''set expand defined actions''|true| + +|''value''|'''is'''|0| +|other|1| +|''value''|'''is'''|1| +|other|2| +|''value''|'''is'''|2| + +|''value''|'''is'''|0| + +|''def value''|0| + +|other|1| +|''def value''|1| +|other|2| +|''def value''|2| + +|''def value again''|0| + +|other|1| +|''def value again''|1| + +|other|100| +|''def value again again''|100| + +|''value''|'''is'''|0| +) +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.specify.definedAction.OtherFixturing
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions
+
+ + + +
set expand defined actionstrue
+
+ + + + + + + + + + + + + + + + + + +
valueis0
other1
valueis1
other2
valueis2
+
+ + + + +
valueis0
+
+ + + +
def value0 Defined action call .FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions: + +
valueis0
+
+ + + + + + + + + + + + +
other1
def value1 Defined action call .FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions: + +
valueis1
other2
def value2 Defined action call .FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions: + +
valueis2
+
+ + + +
def value again0 Defined action call .FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions: + +
valueis0
+

+ + + + + +
other11
valueis11
other12
valueis12
+

+ + +
valueis0
+
+ + + + + + +
other1
def value again1 Defined action call .FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions: + +
valueis1
+

+ + + + + +
other11
valueis11
other12
valueis12
+

+ + +
valueis1
+
+ + + + + + +
other100
def value again again100 Defined action call .FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions: + +
valueis100
+

+ + +
def value again100 Defined action call .FitLibrary.SpecifiCations.DefinedActions.AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain.DefinedActions: + +
valueis100
+

+ + + + + +
other11
valueis11
other12
valueis12
+

+ + +
valueis100
+

+ + + + + +
other110
valueis110
other120
valueis120
+

+ + +
valueis100
+

+
+
+ + + + +
valueis0
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/WithSomethingInOuterScope/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/WithSomethingInOuterScope/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/WithSomethingInOuterScope/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/content.txt new file mode 100644 index 0000000000..4e40f4f8ec --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/content.txt @@ -0,0 +1,3 @@ +^DefinedActions +>ExceptWhenNoFlowObjectInOuterScope +^WithSomethingInOuterScope diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/ClassInsteadOfObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/ClassInsteadOfObject/content.txt new file mode 100644 index 0000000000..cd38326016 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/ClassInsteadOfObject/content.txt @@ -0,0 +1,68 @@ +!**< def +!define body (|''name is''|name| + +|''get''|@{@{this}.name}|is|@{name}| +) +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|define action|Person| +|${body}| + +|'''set'''|Person.name|'''to'''|Rick| + +|'''oo'''|Person|''name is''|Rick| + +|''expected test results''|3|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| +) +**! +If there is only one object of a class, we can use the class directly. +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
define actionPerson
+ + + +
name isname
+
+ + + + + +
get@{@{this}.name}is@{name}
+
+
+ + + + + +
setPerson.nametoRick
+
+ + + + + +
ooPersonname isRick
+
+ + + + + + + + + + +
expected test results3right0wrong0ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/ClassInsteadOfObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/ClassInsteadOfObject/properties.xml new file mode 100644 index 0000000000..98c5cc5fc7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/ClassInsteadOfObject/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1232257452140 + 8700948587734958327 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObject/content.txt new file mode 100644 index 0000000000..f72202945e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObject/content.txt @@ -0,0 +1,64 @@ +!**< def +!define body (|''name is for default object''|name| + +|''get''|@{@{this}.name}|is|@{name}| +) +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|define action|Person| +|${body}| + +|'''set'''|rick.name|'''to'''|Rick| +|'''set'''|rick.class|'''to'''|Person| +|'''set'''|this|'''to'''|rick| + +|''name is for default object''|Rick| +) +**! +If the dynamic variable ''this'' is set, it's treated as the default object. This avoids the need to explicitly use an '''oo''' special action. +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
define actionPerson
+ + + +
name is for default objectname
+
+ + + + + +
get@{@{this}.name}is@{name}
+
+
+ + + + + + + + + + + + + + + +
setrick.nametoRick
setrick.classtoPerson
setthistorick
+
+ + + +
name is for default objectRick
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObject/properties.xml new file mode 100644 index 0000000000..bb015a7e66 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObject/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1252901838287 + -5192335916519773841 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObjectWithinDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObjectWithinDefinedAction/content.txt new file mode 100644 index 0000000000..b1f2c8a724 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObjectWithinDefinedAction/content.txt @@ -0,0 +1,94 @@ +!**< def +!define body (|''name is default within''|name| + +|''get''|@{@{this}.name}|is|@{name}| +) +!define body2 (|''other''|name| + +|''name is default within''|@{name}| +) +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|define action|Person| +|${body}| + +|define action|Person| +|${body2}| + +|'''set'''|rick.name|'''to'''|Rick| +|'''set'''|rick.class|'''to'''|Person| + +|'''oo'''|rick|''other''|Rick| + +|''get''|@{this}|'''is'''|@{this}| +) +**! +There is no need to explicitly use an '''oo''' special action inside a defined action; if any action within the body can be applied with an '''oo''' it will be. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
define actionPerson
+ + + +
name is default withinname
+
+ + + + + +
get@{@{this}.name}is@{name}
+
+
+ + + + + +
define actionPerson
+ + + +
othername
+
+ + + +
name is default within@{name}
+
+
+ + + + + + + + + + +
setrick.nametoRick
setrick.classtoPerson
+
+ + + + + +
oorickotherRick
+
+ + + + + +
getrickisrick
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObjectWithinDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObjectWithinDefinedAction/properties.xml new file mode 100644 index 0000000000..f0692da776 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefaultObjectWithinDefinedAction/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1252901915959 + -7439245990636365518 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/SpeakGreeting/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/SpeakGreeting/content.txt new file mode 100644 index 0000000000..4ba40daf53 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/SpeakGreeting/content.txt @@ -0,0 +1,11 @@ +|say hello| + +|set|helloGreeting|to|dont call me!| +---- +|say goodbye| + +|set|goodbyeGreeting|to|dont call me either!| +---- +|say something| + +|set|somethingGreeting|to|there i've said something!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/SpeakGreeting/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/SpeakGreeting/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/SpeakGreeting/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/content.txt new file mode 100644 index 0000000000..7a98796fe5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/content.txt @@ -0,0 +1 @@ +>SpeakGreeting \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassCountry/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/SpeakGreeting/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/SpeakGreeting/content.txt new file mode 100644 index 0000000000..20afffeab4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/SpeakGreeting/content.txt @@ -0,0 +1,6 @@ +|say hello| + +|set|helloGreeting|to|bonjour!| +---- +|say goodbye| +---- diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/SpeakGreeting/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/SpeakGreeting/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/SpeakGreeting/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/content.txt new file mode 100644 index 0000000000..7a98796fe5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/content.txt @@ -0,0 +1 @@ +>SpeakGreeting \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassFrance/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassMessage/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassMessage/content.txt new file mode 100644 index 0000000000..de22452e01 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassMessage/content.txt @@ -0,0 +1,3 @@ +|set a message| + +|set|message|to|hello this is a message| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassMessage/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassMessage/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassMessage/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/NameIs/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/NameIs/content.txt new file mode 100644 index 0000000000..d77bbc796a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/NameIs/content.txt @@ -0,0 +1,3 @@ +|''name is''|NAME| + +|''get''|@{this.name}|is|NAME| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/NameIs/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/NameIs/properties.xml new file mode 100644 index 0000000000..592adab353 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/NameIs/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20091009121102 + true + true + true + true + true + true + 1228983528406 + 3338012503386963657 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/content.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/properties.xml new file mode 100644 index 0000000000..eb891e6a35 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassPerson/properties.xml @@ -0,0 +1,13 @@ + + + true + true + 20091009121102 + true + true + true + true + true + true + -3059846021950313160 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/HisNameIs/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/HisNameIs/content.txt new file mode 100644 index 0000000000..e7ddd9e464 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/HisNameIs/content.txt @@ -0,0 +1,3 @@ +|''his name is''|name| + +|''get''|@{@{this}.name}|is|@{name}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/HisNameIs/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/HisNameIs/properties.xml new file mode 100644 index 0000000000..6c4a609529 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/HisNameIs/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1250034128230 + -6460256108505983243 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/content.txt new file mode 100644 index 0000000000..7c0d6ff010 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/content.txt @@ -0,0 +1 @@ +!contents -R diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/properties.xml new file mode 100644 index 0000000000..00092be8e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/SecondLevel/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20091009121102 + true + true + true + true + true + true + 1250034204825 + 1258022558635342036 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/content.txt new file mode 100644 index 0000000000..7c0d6ff010 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/content.txt @@ -0,0 +1 @@ +!contents -R diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/properties.xml new file mode 100644 index 0000000000..29f08ba21a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/ClassTwoLevel/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20091009121102 + true + true + true + true + true + true + 1250034195184 + 1767725180712238252 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/NameIsGlobal/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/NameIsGlobal/content.txt new file mode 100644 index 0000000000..0664ea7bd9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/NameIsGlobal/content.txt @@ -0,0 +1,3 @@ +|''name is''|name| + +|''get''|@{anna.name}|'''is not'''|@{name}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/NameIsGlobal/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/NameIsGlobal/properties.xml new file mode 100644 index 0000000000..261f891b78 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/NameIsGlobal/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1252474317046 + -97110341033944747 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/content.txt new file mode 100644 index 0000000000..7c0d6ff010 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/content.txt @@ -0,0 +1 @@ +!contents -R diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/properties.xml new file mode 100644 index 0000000000..5cd592016a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedActions/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20091009121102 + true + true + true + true + true + true + 1250034231138 + -7747767203810378017 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhere/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhere/content.txt new file mode 100644 index 0000000000..e5dc133b44 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhere/content.txt @@ -0,0 +1,52 @@ +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.DefinedActions| + +|'''set'''|rick.name|'''to'''|Rick| +|'''set'''|rick.class|'''to'''|Person| +|'''set'''|this|'''to'''|rick| + +|''name is''|Rick| +) +**! + +If the dynamic variable ''this'' is set, it's treated as the default object. This avoids +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.DefinedActions
+
+ + + + + + + + + + + + + + + +
setrick.nametoRick
setrick.classtoPerson
setthistorick
+
+ + + +
name isRick
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhere/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhere/properties.xml new file mode 100644 index 0000000000..83e74a3b7f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhere/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20091009121237 + + + + + + + + + 1255043557468 + -8312627446300416843 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithMultipleLevels/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithMultipleLevels/content.txt new file mode 100644 index 0000000000..ce73c57ff5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithMultipleLevels/content.txt @@ -0,0 +1,61 @@ +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.DefinedActions| + +|'''set'''|rick.class|'''to'''|!-TwoLevel-!| +|'''set'''|rick.name|'''to'''|Rick| +|'''set'''|this|'''to'''|rick| + +|''his name is''|Rick| + +|oo|rick|''his name is''|Rick| +) +**! + +The defined actions within a class can be nested within pages within the class +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.DefinedActions
+
+ + + + + + + + + + + + + + + +
setrick.classtoTwoLevel
setrick.nametoRick
setthistorick
+
+ + + +
his name isRick
+
+ + + + + +
oorickhis name isRick
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithMultipleLevels/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithMultipleLevels/properties.xml new file mode 100644 index 0000000000..275241a743 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithMultipleLevels/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20091009121259 + + + + + + + + + 1255043579765 + -8815662086696037003 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithoutClass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithoutClass/content.txt new file mode 100644 index 0000000000..aa668b2f25 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithoutClass/content.txt @@ -0,0 +1,55 @@ +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.DefinedActions| + +|'''set'''|anna.name|'''to'''|Anna| + +|setExpandDefinedActions|true| + +|''name is''|Isis| +) +**! + +If the dynamic variable ''this'' is set, it's treated as the default object. This avoids +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.DefinedActions
+
+ + + + + +
setanna.nametoAnna
+
+ + + +
setExpandDefinedActionstrue
+
+ + + +
name isIsis Defined action call +

+ + + + + +
getAnnais notIsis
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithoutClass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithoutClass/properties.xml new file mode 100644 index 0000000000..b4b01e7c94 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/DefinedElsewhereWithoutClass/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1255043690312 + -8436955075020647505 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/MissingDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/MissingDefinedAction/content.txt new file mode 100644 index 0000000000..9707f3f085 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/MissingDefinedAction/content.txt @@ -0,0 +1,41 @@ +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|'''set'''|rick.class|'''to'''|Person| + +|'''oo'''|rick|''surname is''|Mugridge| + +|''expected test results''|1|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
setrick.classtoPerson
+
+ + + + + +
oo
Unknown defined action for object of class Person
ricksurname isMugridge
+
+ + + + + + + + + + +
expected test results expected
0 right, 0 wrong, 0 ignored, 1 exceptions actual
1right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/MissingDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/MissingDefinedAction/properties.xml new file mode 100644 index 0000000000..1bc7d41d4c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/MissingDefinedAction/properties.xml @@ -0,0 +1,16 @@ + + + + + 20091009121102 + + + + + + + + + 1252901992287 + 299765255994933139 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideDefinedAction/content.txt new file mode 100644 index 0000000000..9a475aa335 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideDefinedAction/content.txt @@ -0,0 +1,112 @@ +!**< def +!define body (|''name is override''|name| + +|''get''|@{this.name}|is|@{name}| +) +!define body2 (|''name is override''|name| + +|'''show'''|''get''|@{@{this}.name}| +) +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|define action|Person| +|${body}| + +|define action|Child| +|${body2}| + +|'''set'''|ella.name|'''to'''|Ella| +|'''set'''|ella.class|'''to'''|Child| + +|'''set'''|Child.super|'''to'''|Person| + +|'''oo'''|ella|''name is override''|Ella| + +|''expected test results''|4|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
define actionPerson
+ + + +
name is overridename
+
+ + + + + +
get@{this.name}is@{name}
+
+
+ + + + + +
define actionChild
+ + + +
name is overridename
+
+ + + + +
showget@{@{this}.name}
+
+
+ + + + + + + + + + +
setella.nametoElla
setella.classtoChild
+
+ + + + + +
setChild.supertoPerson
+
+ + + + + +
ooellaname is overrideElla + + + + +
showgetEllaElla
+
+ + + + + + + + + + +
expected test results4right0wrong0ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideDefinedAction/properties.xml new file mode 100644 index 0000000000..ad031e734b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideDefinedAction/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1252902815639 + -7605277139192931857 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideWithNoImplementation/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideWithNoImplementation/content.txt new file mode 100644 index 0000000000..a39ed6f53e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideWithNoImplementation/content.txt @@ -0,0 +1,27 @@ +Class based defined actions should be able to be overriden by derived classes to provide no implementation method. + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.DefinedActions| + +|set|helloGreeting|to|will be overriden| +|set|goodbyeGreeting|to|will not be overriden| +|set|somethingGreeting|to|will call super version not this| + +|'''set'''|nation.class|'''to'''|France| +|'''set'''|France.super|'''to'''|Country| + +|''oo''|nation|''say hello''| +|''oo''|nation|''say something''| +|''oo''|nation|''say goodbye''| + + +|get|@{helloGreeting}|is|bonjour!| + +|get|@{somethingGreeting}|is|there i've said something!| + + +''The 'say goodbye' defined action in nation france is overriden but provides a null implementation therefore variable will remain as above and super Country class should not be called'' +|get|@{goodbyeGreeting}|is|will not be overriden| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideWithNoImplementation/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideWithNoImplementation/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/OverrideWithNoImplementation/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClass/content.txt new file mode 100644 index 0000000000..53cb3588fd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClass/content.txt @@ -0,0 +1,73 @@ +!**< def +!define body (|''name is single class''|name| + +|''get''|@{@{this}.name}|is|@{name}| +) +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|define action|Person| +|${body}| + +|'''set'''|rick.name|'''to'''|Rick| +|'''set'''|rick.class|'''to'''|Person| + +|'''oo'''|rick|''name is single class''|Rick| + +|''expected test results''|3|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
define actionPerson
+ + + +
name is single classname
+
+ + + + + +
get@{@{this}.name}is@{name}
+
+
+ + + + + + + + + + +
setrick.nametoRick
setrick.classtoPerson
+
+ + + + + +
oorickname is single classRick
+
+ + + + + + + + + + +
expected test results3right0wrong0ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClass/properties.xml new file mode 100644 index 0000000000..7a31db524e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClass/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1252902900951 + -9189751559223304167 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassFails/content.txt new file mode 100644 index 0000000000..47754f27ae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassFails/content.txt @@ -0,0 +1,83 @@ +!**< def +!define body (|''name is single class fails''|name| + +|''get''|@{@{this}.name}|is|@{name}| +) +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|define action|Person| +|${body}| + +|'''set'''|rick.name|'''to'''|Rick| +|'''set'''|rick.class|'''to'''|Person| + +|'''oo'''|rick|''name is single class fails''|Jac| + +|''expected test results''|1|''right''|2|''wrong''|0|''ignored''|0|''exceptions''| +) +**! +!3 If a ''defined action'' call fails, the full results of executing the body are shown. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
define actionPerson
+ + + +
name is single class failsname
+
+ + + + + +
get@{@{this}.name}is@{name}
+
+
+ + + + + + + + + + +
setrick.nametoRick
setrick.classtoPerson
+
+ + + + + +
oorickname is single class failsJac Defined action call: +
+ + + + + +
getRickisJac expected
Rick actual
+
+
+ + + + + + + + + + +
expected test results1right2wrong0ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassFails/properties.xml new file mode 100644 index 0000000000..97ad633469 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassFails/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1254265345186 + 3003817340356153890 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassInOldStyle/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassInOldStyle/content.txt new file mode 100644 index 0000000000..e996e2e44c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassInOldStyle/content.txt @@ -0,0 +1,94 @@ +!**< def +!define body (|''name is single class 2''|NAME| + +|''get''|@{this.name}|is| NAME | +) +!define test (|''auto translate defined action parameters''| + +|''set expand defined actions''|true| + +!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|define action|Person| +|${body}| + +|'''set'''|rick.name|'''to'''|Rick| +|'''set'''|rick.class|'''to'''|Person| + +|'''oo'''|rick|''name is single class 2''|Rick| + +|''expected test results''|3|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
auto translate defined action parameters
+
+ + + +
set expand defined actionstrue
+
+ + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
define actionPerson
+ + + +
name is single class 2NAME
+
+ + + + + +
get@{this.name}isNAME
+
+
+ + + + + + + + + + +
setrick.nametoRick
setrick.classtoPerson
+
+ + + + + +
oorickname is single class 2Rick Defined action call: +
+ + + + + +
getRickisRick
+
+
+ + + + + + + + + + +
expected test results3right0wrong0ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassInOldStyle/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassInOldStyle/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SingleClassInOldStyle/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClass/content.txt new file mode 100644 index 0000000000..68e33c2969 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClass/content.txt @@ -0,0 +1,82 @@ +!**< def +!define body (|''name is super class''|name| + +|''get''|@{@{this}.name}|is|@{name}| +) +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|define action|Person| +|${body}| + +|'''set'''|ella.name|'''to'''|Ella| +|'''set'''|ella.class|'''to'''|Children| + +|'''set'''|Children.super|'''to'''|Person| + +|'''oo'''|ella|''name is super class''|Ella| + +|''expected test results''|3|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
define actionPerson
+ + + +
name is super classname
+
+ + + + + +
get@{@{this}.name}is@{name}
+
+
+ + + + + + + + + + +
setella.nametoElla
setella.classtoChildren
+
+ + + + + +
setChildren.supertoPerson
+
+ + + + + +
ooellaname is super classElla
+
+ + + + + + + + + + +
expected test results3right0wrong0ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClass/properties.xml new file mode 100644 index 0000000000..f54b1aa338 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClass/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1252903142764 + -1083348915666829288 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClassFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClassFails/content.txt new file mode 100644 index 0000000000..e6a24aaff5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClassFails/content.txt @@ -0,0 +1,50 @@ +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|'''set'''|ella.class|'''to'''|Child| + +|'''set'''|Child.super|'''to'''|Person| + +|'''oo'''|ella|''surname is''|White| + +|''expected test results''|1|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
setella.classtoChild
+
+ + + + + +
setChild.supertoPerson
+
+ + + + + +
oo
Unknown defined action for object of class Child
ellasurname isWhite
+
+ + + + + + + + + + +
expected test results expected
0 right, 0 wrong, 0 ignored, 1 exceptions actual
1right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClassFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClassFails/properties.xml new file mode 100644 index 0000000000..6dadb1df39 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/SuperClassFails/properties.xml @@ -0,0 +1,16 @@ + + + + + 20091009121102 + + + + + + + + + 1252903249545 + -137423436099207803 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UnknownClass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UnknownClass/content.txt new file mode 100644 index 0000000000..43f45f75a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UnknownClass/content.txt @@ -0,0 +1,47 @@ +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|''clear defined actions''| + +|'''set'''|unknown.name|'''to'''|No Eh| + +|'''oo'''|unknown|''name is''|What| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + +
clear defined actions
+
+ + + + + +
setunknown.nametoNo Eh
+
+ + + + + +
oo
Unknown defined action for object of class unknown
unknownname isWhat
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UnknownClass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UnknownClass/properties.xml new file mode 100644 index 0000000000..5074aff7d8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UnknownClass/properties.xml @@ -0,0 +1,16 @@ + + + + + 20091009121617 + + + + + + + + + 1255043777968 + -3992543545367308715 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UseTheTextThisInClassBasedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UseTheTextThisInClassBasedActions/content.txt new file mode 100644 index 0000000000..7e8a9bc781 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UseTheTextThisInClassBasedActions/content.txt @@ -0,0 +1,11 @@ +Class based defined actions should be able to be overriden by derived classes to provide no implementation method. + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.DefinedActions| + +|'''set'''|msg.class|'''to'''|Message| + +|''oo''|msg|''set a message''| + +|get|@{message}|is|hello this is a message| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UseTheTextThisInClassBasedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UseTheTextThisInClassBasedActions/properties.xml new file mode 100644 index 0000000000..56af35643c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/UseTheTextThisInClassBasedActions/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/content.txt new file mode 100644 index 0000000000..ae65fdec01 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/content.txt @@ -0,0 +1,27 @@ +!3 Dynamic Variables may be combined with class-based defined actions to provide OO defined actions + * This relies on the class of a wiki object being set, as in the example below + * A class may define a superclass, as with the class Person below + * A ''oo'' action dispatches on the basis of the class of the wiki object concerned + * If the defined action is not defined for the class, it looks it up in the superclass, and etc +This approach is only intended for advanced storytest writers. + +>SingleClass +>SingleClassFails +>SuperClass +>SuperClassFails +>OverrideDefinedAction +>OverrideWithNoImplementation +>MissingDefinedAction +>UnknownClass +>DefaultObject +>DefaultObjectWithinDefinedAction +>DefinedElsewhere +>DefinedElsewhereWithoutClass +>DefinedElsewhereWithMultipleLevels +>ClassInsteadOfObject +>UseTheTextThisInClassBasedActions + + +>DefinedActions + +^SingleClassInOldStyle diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/properties.xml new file mode 100644 index 0000000000..1c46379c72 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BasedOnClass/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + null + + + 1255044331671 + 3052474367605293844 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/OneDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/OneDefinedAction/content.txt new file mode 100644 index 0000000000..245e699d1a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/OneDefinedAction/content.txt @@ -0,0 +1,7 @@ +|''login''|USER|''with''|| + +|''with''|//input[@id="userName"]|''enter text''|USER| + +|''with''|//input[@id="password"]|''enter text''|PASSWORD| + +|''submit''|//form| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/OneDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/OneDefinedAction/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/OneDefinedAction/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/content.txt new file mode 100644 index 0000000000..97806d359e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/content.txt @@ -0,0 +1,25 @@ +!**< def +!define test (!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.BlankParameter.OneDefinedAction| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at
.FitLibrary.SpecifiCations.DefinedActions.BlankParameter.OneDefinedAction
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/BlankParameter/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallFails/content.txt new file mode 100644 index 0000000000..265c609c81 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallFails/content.txt @@ -0,0 +1,108 @@ +!**< def +!define body (|''login''|user|''with''| password |''fails''| + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{password}| + +|''submit''|//form| +) +!define test ( +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|define action| +|${body}| + +|''with''|//input[@id="userName"]|''enter text''|USER| + +|''login''|rick|''with''|password|''fails''| + +|''expected test results''|5|''right''|3|''wrong''|0|''ignored''|0|''exceptions''| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + + + +
define action
+ + + + + + +
loginuserwithpasswordfails
+
+ + + + + +
with//input[@id="userName"]enter text@{user}
+
+ + + + + +
with//input[@id="password"]enter text@{password}
+
+ + + +
submit//form
+
+
+ + + + + +
with//input[@id="userName"]enter textUSER
+
+ + + + + + +
loginrickwithpasswordfails Defined action call: +
+ + + + + +
with//input[@id="userName"]enter textrick
+
+ + + + + +
with//input[@id="password"]enter textpassword
+
+ + + +
submit//form
+
+
+ + + + + + + + + + +
expected test results5right3wrong0ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallFails/properties.xml new file mode 100644 index 0000000000..edb0ec42f0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallFails/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1254264620965 + 4965838540224006881 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPasses/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPasses/content.txt new file mode 100644 index 0000000000..de4d61849d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPasses/content.txt @@ -0,0 +1,33 @@ +!**< def +!define body (|''login''|user|''with''| password | + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{password}| + +|''submit''|//form| +) +!define body2 (|''login2''| user |''with''| password | + +|''login''|@{user}|''with''|@{password}| +) +**! +|!-fitlibrary.DefineAction-!| +|${body}| + +|!-fitlibrary.DefineAction-!| +|${body2}| + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''login''|rick|''with''|| + + * The key words can be reorganised: + +|''login with''|rick||| + + * And they can use a leading uppercase letter: + +|''login''|rick|''With''|| + +|''login2''|rick|''with''|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPasses/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPasses/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPasses/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPassesWithOldStyle/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPassesWithOldStyle/content.txt new file mode 100644 index 0000000000..9060c01473 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPassesWithOldStyle/content.txt @@ -0,0 +1,35 @@ +!**< def +!define body (|''login a''|USER|''with''|PASSWORD| + +|''with''|//input[@id="userName"]|''enter text''|USER| + +|''with''|//input[@id="password"]|''enter text''|PASSWORD| + +|''submit''|//form| +) +!define body2 (|''login2 a''|USER|''with''|PASSWORD| + +|''login a''|USER|''with''|PASSWORD| +) +**! +|''auto translate defined action parameters''| + +|!-fitlibrary.DefineAction-!| +|${body}| + +|!-fitlibrary.DefineAction-!| +|${body2}| + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''login a''|rick|''with''|| + + * The key words can be reorganised: + +|''login a with''|rick||| + + * And they can use a leading uppercase letter: + +|''login a''|rick|''With''|| + +|''login2 a''|rick|''with''|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPassesWithOldStyle/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPassesWithOldStyle/properties.xml new file mode 100644 index 0000000000..244d0461d9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallPassesWithOldStyle/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1252900817774 + 6957595735277555529 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallWithNestedTablePasses/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallWithNestedTablePasses/content.txt new file mode 100644 index 0000000000..03d3cf3e26 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallWithNestedTablePasses/content.txt @@ -0,0 +1,15 @@ +!**< def +!define body (|''nested''|nest| + +|''birds''|@{nest}| +) +!define nest ( +|a|1| +) +*! +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|define action| +|${body}| + +|''nested''|${nest}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallWithNestedTablePasses/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallWithNestedTablePasses/properties.xml new file mode 100644 index 0000000000..7ac2e5d283 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/CallWithNestedTablePasses/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1227328321062 + 2871641663816933545 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhere/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhere/content.txt new file mode 100644 index 0000000000..359183a0ef --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhere/content.txt @@ -0,0 +1,8 @@ +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.OneDefinedAction| + +|''login''|rick|''with''|| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhere/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhere/properties.xml new file mode 100644 index 0000000000..f2a2a24adf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhere/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090916124615 + + + + + + + + + 1253061975084 + -1059299783249019167 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereExpanded/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereExpanded/content.txt new file mode 100644 index 0000000000..ea64749e51 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereExpanded/content.txt @@ -0,0 +1,138 @@ +!3 Make sure that all rows of a table are interpreted, even if rows have been added to it. +!**< def +!define test (|!-fitlibrary.specify.definedAction.DefinedActionUnderTest-!| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.OneDefinedAction| + +|''set expand defined actions''|true| + +|''login''|rick|''with''|| +|''login''|rick|''with''|| +|''login''|rick|''with''|| +|''login''|rick|''with''|| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActions.OneDefinedAction
+
+ + + +
set expand defined actionstrue
+
+ + + + + + + + + + + + + + + + + + + + +
loginrickwith  Defined action call .FitLibrary.SpecifiCations.DefinedActions.OneDefinedAction: +

+ + + + + +
with//input[@id="userName"]enter textrick
+

+ + + + + +
with//input[@id="password"]enter text
+

+ + + +
submit//form
+
loginrickwith  Defined action call .FitLibrary.SpecifiCations.DefinedActions.OneDefinedAction: +

+ + + + + +
with//input[@id="userName"]enter textrick
+

+ + + + + +
with//input[@id="password"]enter text
+

+ + + +
submit//form
+
loginrickwith  Defined action call .FitLibrary.SpecifiCations.DefinedActions.OneDefinedAction: +

+ + + + + +
with//input[@id="userName"]enter textrick
+

+ + + + + +
with//input[@id="password"]enter text
+

+ + + +
submit//form
+
loginrickwith  Defined action call .FitLibrary.SpecifiCations.DefinedActions.OneDefinedAction: +

+ + + + + +
with//input[@id="userName"]enter textrick
+

+ + + + + +
with//input[@id="password"]enter text
+

+ + + +
submit//form
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereExpanded/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereExpanded/properties.xml new file mode 100644 index 0000000000..d00a744e7b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereExpanded/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254265410204 + 4933835528587615823 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereInUnicode/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereInUnicode/content.txt new file mode 100644 index 0000000000..129fc34af1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereInUnicode/content.txt @@ -0,0 +1,8 @@ +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.UnicodeDefinedAction| + +|''login''|rick|''with''|| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereInUnicode/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereInUnicode/properties.xml new file mode 100644 index 0000000000..7d48f84f07 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereInUnicode/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090924143634 + + + + + + + + + 1253759673262 + 5593573818596316913 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereTwo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereTwo/content.txt new file mode 100644 index 0000000000..3cc3c3c6d7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereTwo/content.txt @@ -0,0 +1,9 @@ +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.ElseWhere| + +|''login''|rick|''with''|| + +|''login2''|rick|''with''|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereTwo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereTwo/properties.xml new file mode 100644 index 0000000000..35612905fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedElsewhereTwo/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090916124640 + + + + + + + + + 1253062000867 + 793421207064989849 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInHierarchy/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInHierarchy/content.txt new file mode 100644 index 0000000000..e044d2a996 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInHierarchy/content.txt @@ -0,0 +1,13 @@ +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''set expand defined actions''|true| + +|''define actions slowly at''|.FitLibrary.SpecifiCations.DefinedActions.InHierarchy| + +|''login''|rick|''with''|| + +|''login2''|rick|''with''|| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInHierarchy/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInHierarchy/properties.xml new file mode 100644 index 0000000000..91cdf52f11 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInHierarchy/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1253062011758 + 1311132446517187865 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInMixedAndRepetitiveHierarchy/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInMixedAndRepetitiveHierarchy/content.txt new file mode 100644 index 0000000000..ac22ae4d8e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInMixedAndRepetitiveHierarchy/content.txt @@ -0,0 +1,9 @@ +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.InMixedAndRepetitiveHierarchy| + +|''login''|rick|''with''|| + +|''login2''|rick|''with''|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInMixedAndRepetitiveHierarchy/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInMixedAndRepetitiveHierarchy/properties.xml new file mode 100644 index 0000000000..890e098b80 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedInMixedAndRepetitiveHierarchy/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090916124712 + + + + + + + + + 1253062032712 + 5087038888563851662 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedWithRootLocation/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedWithRootLocation/content.txt new file mode 100644 index 0000000000..3c2d9c9015 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedWithRootLocation/content.txt @@ -0,0 +1,7 @@ +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.OneDefinedAction|''from''|!-./FitNesseRoot-!| + +|''login''|rick|''with''|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedWithRootLocation/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedWithRootLocation/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DefinedWithRootLocation/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DoesNotReturnLastValue/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DoesNotReturnLastValue/content.txt new file mode 100644 index 0000000000..ec5de0f085 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DoesNotReturnLastValue/content.txt @@ -0,0 +1,72 @@ +!**< def +!define body (|''aa fails''| + +|object missing| +) +!define body2 (|''bb fails''| + +|aa fails| +) +!define test ( +|!-fitlibrary.DefineAction-!| +|${body}| + +|!-fitlibrary.DefineAction-!| +|${body2}| + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''bb fails''| +|''get a''|'''is'''|0| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + + + +
fitlibrary.DefineAction
+ + +
aa fails
+
+ + +
object missing
+
+
+ + + + +
fitlibrary.DefineAction
+ + +
bb fails
+
+ + +
aa fails
+
+
+ + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + + + + + +
bb fails
Defined action call: + + +
aa fails
Defined action call: + + +
object missing
Missing class or Missing method.
+
+
get a
Missing class or Missing method.
is0
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DoesNotReturnLastValue/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DoesNotReturnLastValue/properties.xml new file mode 100644 index 0000000000..f03fa1990e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DoesNotReturnLastValue/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254265681601 + 3282156844700604179 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/OneDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/OneDefinedAction/content.txt new file mode 100644 index 0000000000..08cb946633 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/OneDefinedAction/content.txt @@ -0,0 +1,7 @@ +|''login''|USER|''with''| USER | + +|''with''|//input[@id="userName"]|''enter text''|USER| + +|''with''|//input[@id="password"]|''enter text''|PASSWORD| + +|''submit''|//form| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/OneDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/OneDefinedAction/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/OneDefinedAction/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/content.txt new file mode 100644 index 0000000000..f682b53d61 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/content.txt @@ -0,0 +1,24 @@ +!**< def +!define test (!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.DuplicatedParameter.OneDefinedAction| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at
.FitLibrary.SpecifiCations.DefinedActions.DuplicatedParameter.OneDefinedAction
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/DuplicatedParameter/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ElseWhere/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ElseWhere/content.txt new file mode 100644 index 0000000000..0d74b53964 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ElseWhere/content.txt @@ -0,0 +1,12 @@ +|''login''|user|''with''| password | + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{password}| + +|''submit''|//form| +---- +|''login2''| user |''with''| password | + +|''login''|@{user}|''with''|@{password}| +---- \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ElseWhere/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ElseWhere/properties.xml new file mode 100644 index 0000000000..47565eea7e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ElseWhere/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1226700268375 + 55161558406305498 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/EmptyBody/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/EmptyBody/content.txt new file mode 100644 index 0000000000..066cd16ecd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/EmptyBody/content.txt @@ -0,0 +1,55 @@ +!**< def +!define body (|no body| +) + +!define test (!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|define action| +|${body}| + +|''set expand defined actions''|true| + +|''no body''| + +|''expected test results''|1|''right''|0|''wrong''|1|''ignored''|0|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + + + +
define action
+ + +
no body
+
+
+ + + +
set expand defined actionstrue
+
+ + +
no body Defined action call: + + +
comment
+
+ + + + + + + + + + +
expected test results1right0wrong1ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/EmptyBody/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/EmptyBody/properties.xml new file mode 100644 index 0000000000..40e97e1e6d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/EmptyBody/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1254265448183 + 7482496021205363905 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ExpandedBody/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ExpandedBody/content.txt new file mode 100644 index 0000000000..db7bc9c644 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ExpandedBody/content.txt @@ -0,0 +1,105 @@ +!**< def +!define body (|''expand''|user|''with''|pass| + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{pass}| + +|''submit''|//form| +) +!define test (|!-fitlibrary.DefineAction-!| +|${body}| + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''set expand defined actions''|true| + +|''expand''|rick|''with''|| + +|''expected test results''|4|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| +) +**! +!3 To request that the resulting call of a defined action is expanded even if it passes +Use the action ''set expand defined actions'', which takes true or false. This can be included in the storytest or can be called in the fixture. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + + +
fitlibrary.DefineAction
+ + + + + +
expanduserwithpass
+
+ + + + + +
with//input[@id="userName"]enter text@{user}
+
+ + + + + +
with//input[@id="password"]enter text@{pass}
+
+ + + +
submit//form
+
+
+ + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + + +
set expand defined actionstrue
+
+ + + + + +
expandrickwith  Defined action call: +
+ + + + + +
with//input[@id="userName"]enter textrick
+
+ + + + + +
with//input[@id="password"]enter text
+
+ + + +
submit//form
+
+
+ + + + + + + + + + +
expected test results4right0wrong0ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ExpandedBody/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ExpandedBody/properties.xml new file mode 100644 index 0000000000..b38501b4c7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ExpandedBody/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1254265496181 + -6253025758895414343 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesSubstitutionsInXml/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesSubstitutionsInXml/content.txt new file mode 100644 index 0000000000..0a650ec702 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesSubstitutionsInXml/content.txt @@ -0,0 +1,21 @@ +!**< def +!define body (|''make xml for user''|USER|''with''|PASSWORD| + +|'''set'''|xml|''to''|@{USER}| + +) +**! +|!-fitlibrary.DefineAction-!| +|${body}| + +|''make xml for user''|rick|''with''|kiwi| + +|''get''|@{xml}|'''is'''|rick| + +|'''show'''|''get''|@{xml}| + +|'''show escaped'''|''get''|@{xml}| + +|'''show'''|''get''|rick| + +|'''show escaped'''|''get''|rick| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesSubstitutionsInXml/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesSubstitutionsInXml/properties.xml new file mode 100644 index 0000000000..0c48a521b2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesSubstitutionsInXml/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1247542958607 + -7662723143995722419 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesXmlArguments/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesXmlArguments/content.txt new file mode 100644 index 0000000000..903712c832 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesXmlArguments/content.txt @@ -0,0 +1,46 @@ +!**< def +!define body1 (|''xml''|data| + +|''xml2''|@{data}| + +|check|data|as|@{data}| + +) +!define body2 (|''xml2''|data| + +|''xml3''|@{data}| + +|check|data|as|@{data}| + +) +!define body3 (|''xml3''|data| + +|'''show'''|''get''|@{data}| + +|check|data|as|@{data}| +) +**! +|!-fitlibrary.DefineAction-!| +|${body1}| + +|!-fitlibrary.DefineAction-!| +|${body2}| + +|!-fitlibrary.DefineAction-!| +|${body3}| + +!|fitlibrary.specify.dynamicVariable.CheckDynamicVariable| + +|set|name|to|rick| + +|set|x|to|@{name}| + +|check|x|as|@{x}| + +|show|get|@{x}| + +|show escaped|get|@{x}| + +|''xml2''|rick| + +|''xml''|rick| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesXmlArguments/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesXmlArguments/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/HandlesXmlArguments/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionOne/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionOne/content.txt new file mode 100644 index 0000000000..9c81e85089 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionOne/content.txt @@ -0,0 +1,9 @@ +|''login''|user|''with''|password| + +first text + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{password}| + +|''submit''|//form| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionOne/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionOne/properties.xml new file mode 100644 index 0000000000..772bd2ad6c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionOne/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1226801838765 + 3885045019622050284 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionTwo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionTwo/content.txt new file mode 100644 index 0000000000..b0731f245f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionTwo/content.txt @@ -0,0 +1,5 @@ +|''login2''|user|''with''|password| + +1st text + +|''login''|@{user}|''with''|@{password}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionTwo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionTwo/properties.xml new file mode 100644 index 0000000000..56a2b4db33 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/DefinedActionTwo/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1226801852468 + -2087018034317670832 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/content.txt new file mode 100644 index 0000000000..9009c885c2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/content.txt @@ -0,0 +1,3 @@ +!contents +^DefinedActionOne +^DefinedActionTwo diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/properties.xml new file mode 100644 index 0000000000..c1aed6bdf5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InHierarchy/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20081116151706 + true + true + true + true + true + true + 1226801826375 + -563005921566607432 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/AnotherDefinition/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/AnotherDefinition/content.txt new file mode 100644 index 0000000000..8917dfe8f7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/AnotherDefinition/content.txt @@ -0,0 +1,3 @@ +|''login2''|user|''with''|PASSWORD| + +|''login''|@{user}|''with''|@{PASSWORD}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/AnotherDefinition/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/AnotherDefinition/properties.xml new file mode 100644 index 0000000000..f42ad2baa7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/AnotherDefinition/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1226804511421 + 5760249008451223027 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/content.txt new file mode 100644 index 0000000000..e438f4c61e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/content.txt @@ -0,0 +1,11 @@ +|''login''|user|''with''|password| + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{password}| + +|''submit''|//form| + +^AnotherDefinition + +!contents \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/properties.xml new file mode 100644 index 0000000000..bc9184fd6d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/FurtherHierarchy/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1226804603031 + 6723829796278188911 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/content.txt new file mode 100644 index 0000000000..1980d59e6b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/content.txt @@ -0,0 +1 @@ +^FurtherHierarchy diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/properties.xml new file mode 100644 index 0000000000..0239254849 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InMixedAndRepetitiveHierarchy/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20081116160104 + true + true + true + true + true + true + 1226804464984 + -6866331913746573074 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InfiniteCallFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InfiniteCallFails/content.txt new file mode 100644 index 0000000000..65412b8d38 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InfiniteCallFails/content.txt @@ -0,0 +1,69 @@ +!**< def +!define body (|''infinite''|USER|''with''|PASSWORD| + +|''infinite''|@{USER}|''with''|@{PASSWORD}| +) +!define test ( +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|define action| +|${body}| + +|''infinite''|rick|''with''|password| + +|''expected test results''|2|''right''|0|''wrong''|0|''ignored''|2|''exceptions''| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + + + +
define action
+ + + + + +
infiniteUSERwithPASSWORD
+
+ + + + + +
infinite@{USER}with@{PASSWORD}
+
+
+ + + + + +
infinite
rickwith
password Defined action call: +
+ + + + + +
infinite
Infinite calling of defined actions
rickwithpassword
+
+
+ + + + + + + + + + +
expected test results2right0wrong0ignored2exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InfiniteCallFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InfiniteCallFails/properties.xml new file mode 100644 index 0000000000..4aaa000446 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/InfiniteCallFails/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1254265542799 + -6270695490121258083 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestDefinedAction/content.txt new file mode 100644 index 0000000000..e4911e907e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestDefinedAction/content.txt @@ -0,0 +1,3 @@ +|nested|obj| + +|''object''|'''is'''|@{obj}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestDefinedAction/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestDefinedAction/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallFails/content.txt new file mode 100644 index 0000000000..d712cafaf3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallFails/content.txt @@ -0,0 +1,27 @@ +!**< def +!define body (|''nested login fails''|user|''with''|pass| + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{pass}| + +|''submit''|//form| +) +!define body2 (|''login2 fails''|user|''with''|pass| + +|''nested login fails''|@{user}|''with''|@{pass}| +) +**! +|!-fitlibrary.DefineAction-!| +|${body}| + +|!-fitlibrary.DefineAction-!| +|${body2}| + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''with''|//input[@id="userName"]|''enter text''|USER| + +|''login2 fails''|rick|''with''|password| + +|''expected test results''|6|''right''|2|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallFails/properties.xml new file mode 100644 index 0000000000..80d722bf3e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallFails/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1252903662092 + -734988771256149792 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallPasses/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallPasses/content.txt new file mode 100644 index 0000000000..9af74cfb72 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallPasses/content.txt @@ -0,0 +1,25 @@ +!**< def +!define body (|''nested login passes''|user|''with''|pass| + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{pass}| + +|''submit''|//form| +) +!define body2 (|''login2 passes''|user|''with''|pass| + +|''nested login passes''|@{user}|''with''|@{pass}| +) +**! +|!-fitlibrary.DefineAction-!| +|${body}| + +|!-fitlibrary.DefineAction-!| +|${body2}| + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''login2 passes''|rick|''with''|| + +|''expected test results''|6|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallPasses/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallPasses/properties.xml new file mode 100644 index 0000000000..8a49206e1d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedCallPasses/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1252903704279 + 6862821828996022912 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedTablesAsArguments/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedTablesAsArguments/content.txt new file mode 100644 index 0000000000..45b7e6f018 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedTablesAsArguments/content.txt @@ -0,0 +1,13 @@ +!**> defs +!define inner (|a|0| +|b|2| +) +*! +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.NestDefinedAction| + +|''nested''|${inner}| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedTablesAsArguments/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedTablesAsArguments/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/NestedTablesAsArguments/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/OneDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/OneDefinedAction/content.txt new file mode 100644 index 0000000000..0e59beeb57 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/OneDefinedAction/content.txt @@ -0,0 +1,7 @@ +|''login''|user|''with''| password | + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''| @{password}| + +|''submit''|//form| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/OneDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/OneDefinedAction/properties.xml new file mode 100644 index 0000000000..7059b16054 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/OneDefinedAction/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1226801688609 + -1407444033492664257 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ReturnsLastValue/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ReturnsLastValue/content.txt new file mode 100644 index 0000000000..da43dd8a97 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ReturnsLastValue/content.txt @@ -0,0 +1,23 @@ +!**< def +!define body (|''aa''| + +|object| +) +!define body2 (|''bb''| + +|aa| +) +**! +!1 This has been disabled - I'll add an explicit '''return''' for this case. + +!3 The value of the last action within a ''defined action'' is returned as the result of calling that ''defined action''. However, this doesn't work if the returned value is a collection, such as a List. +|!-fitlibrary.DefineAction-!| +|${body}| + +|!-fitlibrary.DefineAction-!| +|${body2}| + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''bb''| +|''get a''|'''is'''|0| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ReturnsLastValue/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ReturnsLastValue/properties.xml new file mode 100644 index 0000000000..d04e1c91bc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ReturnsLastValue/properties.xml @@ -0,0 +1,16 @@ + + + + + + 20090918092420 + + + + + + + + 1253222660589 + 4690276760283460743 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ShowInBodyIsShownBesideCall/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ShowInBodyIsShownBesideCall/content.txt new file mode 100644 index 0000000000..842ec526b0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ShowInBodyIsShownBesideCall/content.txt @@ -0,0 +1,94 @@ +!**< def +!define body (|''login after''|user|''with''|pass| + +|show|get|@{user}| + +|show|get|@{user}+@{pass}| +) +!define test (!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|define action| +|${body}| + +|login after|Rick|with|Pass| + +|''set expand defined actions''|true| + +|login after|Rick|with|Pass| +) +*! +!3 Any show within the body of a defined action is shown at the point of call, unless the defined action calls are already being expanded. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + + + +
define action
+ + + + + +
login afteruserwithpass
+
+ + + + +
showget@{user}
+
+ + + + +
showget@{user}+@{pass}
+
+
+ + + + + +
login afterRickwithPass + + + + + + + + + + +
showgetRickRick
showgetRick+PassRick+Pass
+
+ + + +
set expand defined actionstrue
+
+ + + + + +
login afterRickwithPass Defined action call: +
+ + + + +
showgetRickRick
+
+ + + + +
showgetRick+PassRick+Pass
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ShowInBodyIsShownBesideCall/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ShowInBodyIsShownBesideCall/properties.xml new file mode 100644 index 0000000000..8e016af3fa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/ShowInBodyIsShownBesideCall/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254265767901 + 475872721786845313 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorDefinedAction/content.txt new file mode 100644 index 0000000000..5bfcf5ef76 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorDefinedAction/content.txt @@ -0,0 +1,3 @@ +|''act''| + +|''get''|1|'''is'''|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorDefinedAction/properties.xml new file mode 100644 index 0000000000..133cb9b8b0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorDefinedAction/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090930135408 + true + true + true + true + true + true + 1254272048109 + 3378386673935967935 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorInDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorInDefinedAction/content.txt new file mode 100644 index 0000000000..bff69b4140 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorInDefinedAction/content.txt @@ -0,0 +1,50 @@ +!**< def +!define test (!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.StopOnErrorDefinedAction| + +|''set stop on error''|true| + +|''act''| + +|''act''| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActions.StopOnErrorDefinedAction
+
+ + + +
set stop on errortrue
+
+ + +
act Defined action call +

+ + + + + +
get1is2 expected
1 actual
+
+
+ + +
act
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorInDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorInDefinedAction/properties.xml new file mode 100644 index 0000000000..78bf3670e2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/StopOnErrorInDefinedAction/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254274324093 + 6755394068971716422 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/UnicodeDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/UnicodeDefinedAction/content.txt new file mode 100644 index 0000000000..1654e04384 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/UnicodeDefinedAction/content.txt @@ -0,0 +1,3 @@ +|''login''|name|''with''|pass| + +|'''show'''|''get''|@{name} 公| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/UnicodeDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/UnicodeDefinedAction/properties.xml new file mode 100644 index 0000000000..abc0b48c59 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/UnicodeDefinedAction/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1253759782541 + 2910913134381319105 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/DefinedActions/content.txt new file mode 100644 index 0000000000..ddf8e5eec7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/DefinedActions/content.txt @@ -0,0 +1,7 @@ +|act|x|duplicate| + +|'''show'''|''get''|@{x}| +---- +|act duplicate|bookingRef| + +|'''show'''|''get''|@{bookingRef}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/DefinedActions/properties.xml new file mode 100644 index 0000000000..0c47cd3478 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/DefinedActions/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1253149079316 + 6252768444637037941 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/TheExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/TheExample/content.txt new file mode 100644 index 0000000000..adce317259 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/TheExample/content.txt @@ -0,0 +1,36 @@ +!**< def +!define test (|set expand defined actions|true| + +|define actions at|.FitLibrary.SpecifiCations.DefinedActions.WrongCall.DefinedActions| + +|act duplicate|1| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + + +
set expand defined actionstrue
+
+ + + +
define actions at
  • Duplicate defined action: actDuplicate/1 defined in FitLibrary.SpecifiCations.DefinedActions.WrongCall.DefinedActions but already defined in FitLibrary.SpecifiCations.DefinedActions.WrongCall.DefinedActions
  • +
.FitLibrary.SpecifiCations.DefinedActions.WrongCall.DefinedActions
+
+ + + +
act duplicate1 Defined action call +

+ + + + + +
showget11
-!| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/TheExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/TheExample/properties.xml new file mode 100644 index 0000000000..2c12df9736 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/TheExample/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254265838075 + 7220715372499078644 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/content.txt new file mode 100644 index 0000000000..0cb385d0d2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/content.txt @@ -0,0 +1,2 @@ +^DefinedActions +^TheExample diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/properties.xml new file mode 100644 index 0000000000..ffa9063a28 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/WrongCall/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090911103256 + true + true + true + true + true + true + 1252621976236 + -6519508064562764798 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/content.txt new file mode 100644 index 0000000000..2952ee4efa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/content.txt @@ -0,0 +1,47 @@ +!3 Building higher-level domain languages +It can be convenient to define the actions in a high-level domain language in terms of actions in a lower-level language, such as actions that drive web tests. Rather than writing fixture code to translate the high-level actions, ''defined actions'' can sometimes be used instead. + +This means that a fixture, such as ''!-HtmlFixture-!'', can be used for the low-level of web testing, while still maintaining storytests in high-level terms that are business-oriented instead of being based on the UI. +!3 DefinedActions +A defined action is called with appropriate parameters and the body of the defined action is run after parameter substitutions + +See .FitLibrary.UserGuide.FitLibraryByExample.DefinedActions for further details. + +^CallPasses +>CallPassesWithOldStyle +>CallFails +^NestedCallPasses +>NestedCallFails +>InfiniteCallFails +>CallWithNestedTablePasses +^ExpandedBody +>ShowInBodyIsShownBesideCall +^EmptyBody +^HandlesSubstitutionsInXml +^HandlesXmlArguments + +^ReturnsLastValue +>DoesNotReturnLastValue + +^DefinedElsewhere +^DefinedElsewhereTwo +^DefinedElsewhereExpanded +^DefinedElsewhereInUnicode +^DefinedInHierarchy +^DefinedInMixedAndRepetitiveHierarchy + +^DefinedWithRootLocation + +^AbandonInDefinedAction +^AbandonInNestedDefinedAction +^StopOnErrorInDefinedAction + +>BasedOnClass + +^WrongCall +^BlankParameter +^DuplicatedParameter + +^NestedTablesAsArguments + +^AnyObjectsAddedToScopeDuringDefinedActionBodyExecutionAreRemovedAgain diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/properties.xml new file mode 100644 index 0000000000..da06ff5cad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActions/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1254271980912 + -1960423638587171418 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/AbandonStorytest/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/AbandonStorytest/content.txt new file mode 100644 index 0000000000..1c65724db3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/AbandonStorytest/content.txt @@ -0,0 +1,42 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.WithStop| + +|''stopper''| +|''name''|''full address''| +|adam|paradise| +|eve|paradise| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.DoFixture
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.WithStop
+
+ + + + + + + + + + + +
stopper
namefull address
adamparadise Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.WithStop: + +
abandon storytest
+

+ + +
should ignore this
eveparadise
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/AbandonStorytest/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/AbandonStorytest/properties.xml new file mode 100644 index 0000000000..b350f0ca3f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/AbandonStorytest/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254274362371 + 5969702186001810978 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/BadlyFormedCallTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/BadlyFormedCallTables/content.txt new file mode 100644 index 0000000000..9eff3f2c44 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/BadlyFormedCallTables/content.txt @@ -0,0 +1,96 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefineFails| + +|''do this now''| +|''name''|''full address''|''other''| +|adam|paradise| +|eve|paradise| + +|''do this now''| +|''name''|''name''| +|adam|paradise| + +|''do this now''| +|''name''|''full address''| +|adam| + + +|''do this now''| +|''name''|''full address''| +|adam|paradise|other| + +|''do this now''| +|''name''|''full address''| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.DoFixture
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefineFails
+
+ + + + + + + + + + + + +
do this now
Expected 2 parameters but there were 3
namefull addressother
adamparadise
eveparadise
+
+ + + + + + + + +
do this now
Duplicate parameter: 'name'
namename
adamparadise
+
+ + + + + + + +
do this now
namefull address
adam
Expected 2 parameters but there were 1
+

+ + + + + + + + + +
do this now
namefull address
adam
Expected 2 parameters but there were 3
paradiseother
+
+ + + + + +
do this now
Missing data rows in table
namefull address
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/BadlyFormedCallTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/BadlyFormedCallTables/properties.xml new file mode 100644 index 0000000000..36ad9a3c19 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/BadlyFormedCallTables/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090929161826 + + + + + + + + + 1254194306910 + 1045016799770854652 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefine/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefine/content.txt new file mode 100644 index 0000000000..aa9d76efdc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefine/content.txt @@ -0,0 +1,27 @@ +|'''do this now'''| +|''name''|''full address''| + +|'''show'''|''get''|@{name}| + +|'''show'''|''get''|@{full address}| +---- +|''do twice''| +|''address''| + +|''do this now''| +|''name''|''full address''| +|adam|@{address}| +|eve|@{address}| +---- +|''ordinary''| + +|''do twice''| +|''address''| +|te aroha| +---- +|''ordinary repeated''| +|''address''| + +|''ordinary''| + +|'''show'''|''get''|@{address}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefine/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefine/properties.xml new file mode 100644 index 0000000000..3f45957c9a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefine/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090930131913 + true + true + true + true + true + true + 1254269953435 + 623365407052973705 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefineFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefineFails/content.txt new file mode 100644 index 0000000000..d45be0b13b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefineFails/content.txt @@ -0,0 +1,6 @@ +|'''do this now'''| +|''name''|''full address''| + +|''get''|@{name}|'''is'''|adam| + +|''get''|@{full address}|'''is'''|paradise| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefineFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefineFails/properties.xml new file mode 100644 index 0000000000..b1645d5e2a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/MultiDefineFails/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090929155857 + true + true + true + true + true + true + 1254193137386 + 2068202205581633464 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithDynamics/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithDynamics/content.txt new file mode 100644 index 0000000000..f3b7642fbb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithDynamics/content.txt @@ -0,0 +1,5 @@ +|''global setter''| +|''name''|''full address''| + +|'''set'''|global|''to''|@{name}| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithDynamics/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithDynamics/properties.xml new file mode 100644 index 0000000000..e1b33b90f9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithDynamics/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090930133210 + true + true + true + true + true + true + 1254270730251 + -8026766761760704191 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithStop/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithStop/content.txt new file mode 100644 index 0000000000..4a978b36ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithStop/content.txt @@ -0,0 +1,13 @@ +|''stopper''| +|''name''|''full address''| + +|''abandon storytest''| + +|''should ignore this''| +---- +|''stopper on error''| +|''name''|''full address''| + +|''get''|1|'''is'''|2| + +|''should ignore this''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithStop/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithStop/properties.xml new file mode 100644 index 0000000000..672e6a07e1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/WithStop/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090930140158 + true + true + true + true + true + true + 1254272518517 + -6720946257062851176 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/content.txt new file mode 100644 index 0000000000..3208741146 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/content.txt @@ -0,0 +1 @@ +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/properties.xml new file mode 100644 index 0000000000..0d785eaa56 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/DefinedActions/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090929162905 + true + true + true + true + true + true + 1254194945056 + 1554890764117195619 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCalls/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCalls/content.txt new file mode 100644 index 0000000000..633e365259 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCalls/content.txt @@ -0,0 +1,57 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine| + +|''do this now''| +|''name''|''full address''| +|adam|paradise| +|eve|paradise| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.DoFixture
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine
+
+ + + + + + + + + + + +
do this now
namefull address
adamparadise + + + + + + + + + + +
showgetadamadam
showgetparadiseparadise
eveparadise + + + + + + + + + + +
showgeteveeve
showgetparadiseparadise
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCalls/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCalls/properties.xml new file mode 100644 index 0000000000..552d1cb41e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCalls/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254270085406 + 8945229622823048364 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsExpanded/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsExpanded/content.txt new file mode 100644 index 0000000000..52190dbd26 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsExpanded/content.txt @@ -0,0 +1,62 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine| + +|''set expand defined actions''|true| + +|''do this now''| +|''name''|''full address''| +|adam|paradise| +|eve|paradise| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.DoFixture
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine
+
+ + + +
set expand defined actionstrue
+
+ + + + + + + + + + + +
do this now
namefull address
adamparadise Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgetadamadam
+

+ + +
showgetparadiseparadise
eveparadise Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgeteveeve
+

+ + +
showgetparadiseparadise
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsExpanded/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsExpanded/properties.xml new file mode 100644 index 0000000000..0433f786d9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsExpanded/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254270134417 + -2165510894499734848 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsWhereSomeFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsWhereSomeFail/content.txt new file mode 100644 index 0000000000..38ac772dbb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsWhereSomeFail/content.txt @@ -0,0 +1,49 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefineFails| + +|''do this now''| +|''name''|''full address''| +|adam|paradise| +|eve|paradise| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.DoFixture
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefineFails
+
+ + + + + + + + + + + +
do this now
namefull address
adamparadise
eveparadise Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefineFails: + +
geteveisadam expected
eve actual
+

+ + +
getparadiseisparadise
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsWhereSomeFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsWhereSomeFail/properties.xml new file mode 100644 index 0000000000..1a2d09d6be --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/MultipleCallsWhereSomeFail/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254266042455 + 5520656714511176702 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCalls/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCalls/content.txt new file mode 100644 index 0000000000..fa268868e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCalls/content.txt @@ -0,0 +1,80 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine| + +|''set expand defined actions''|true| + +|''do twice''| +|''address''| +|paradise| +|auckland| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.DoFixture
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine
+
+ + + +
set expand defined actionstrue
+
+ + + + + + + + +
do twice
address
paradise Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + + + + +
do this now
namefull address
adamparadise Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgetadamadam
+

+ + +
showgetparadiseparadise
eveparadise Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgeteveeve
+

+ + +
showgetparadiseparadise
auckland Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + + + + +
do this now
namefull address
adamauckland Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgetadamadam
+

+ + +
showgetaucklandauckland
eveauckland Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgeteveeve
+

+ + +
showgetaucklandauckland
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCalls/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCalls/properties.xml new file mode 100644 index 0000000000..7ecd653046 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCalls/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254270200442 + 981508560008204061 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryDefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryDefinedActions/content.txt new file mode 100644 index 0000000000..e2011439b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryDefinedActions/content.txt @@ -0,0 +1,60 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine| + +|''set expand defined actions''|true| + +|''ordinary''| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.DoFixture
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine
+
+ + + +
set expand defined actionstrue
+
+ + +
ordinary Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: +

+ + + + +
do twice
address
te aroha Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + + + + +
do this now
namefull address
adamte aroha Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgetadamadam
+

+ + +
showgette arohate aroha
evete aroha Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgeteveeve
+

+ + +
showgette arohate aroha
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryDefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryDefinedActions/properties.xml new file mode 100644 index 0000000000..48813dea0e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryDefinedActions/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254270250844 + -6438983485064132046 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryInside/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryInside/content.txt new file mode 100644 index 0000000000..eeb8013ad2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryInside/content.txt @@ -0,0 +1,73 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine| + +|''set expand defined actions''|true| + +|''ordinary repeated''| +|''address''| +|te aroha| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.DoFixture
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine
+
+ + + +
set expand defined actionstrue
+
+ + + + + + +
ordinary repeated
address
te aroha Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
ordinary Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: +

+ + + + +
do twice
address
te aroha Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + + + + +
do this now
namefull address
adamte aroha Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgetadamadam
+

+ + +
showgette arohate aroha
evete aroha Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine: + +
showgeteveeve
+

+ + +
showgette arohate aroha
+

+ + +
showgette arohate aroha
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryInside/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryInside/properties.xml new file mode 100644 index 0000000000..d599fef550 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/NestedCallsWithOrdinaryInside/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254270343132 + 3798038668187557504 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParameterDynamicVariableIsLocalToDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParameterDynamicVariableIsLocalToDefinedAction/content.txt new file mode 100644 index 0000000000..dd9ecc7719 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParameterDynamicVariableIsLocalToDefinedAction/content.txt @@ -0,0 +1,65 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.WithDynamics| + +|'''set'''|name|''to''|23| +|'''set'''|global|''to''|24| + +|''global setter''| +|''name''|''full address''| +|adam|paradise| +|eve|paradise| + +|'''get'''|@{name}|'''is'''|23| +|'''get'''|@{global}|'''is'''|eve| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.DoFixture
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.WithDynamics
+
+ + + + + + + + + + +
setnameto23
setglobalto24
+
+ + + + + + + + + + + +
global setter
namefull address
adamparadise
eveparadise
+
+ + + + + + + + + + +
get23is23
geteveiseve
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParameterDynamicVariableIsLocalToDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParameterDynamicVariableIsLocalToDefinedAction/properties.xml new file mode 100644 index 0000000000..62fbb3db14 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParameterDynamicVariableIsLocalToDefinedAction/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090930133243 + + + + + + + + + 1254270763310 + -8860424306230728300 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParametersCanBeInDifferentOrder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParametersCanBeInDifferentOrder/content.txt new file mode 100644 index 0000000000..1bed0d1903 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParametersCanBeInDifferentOrder/content.txt @@ -0,0 +1,10 @@ +!|fitlibrary.DoFixture| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.MultiDefine| + +|''do this now''| +|''full address''|''name''| +|paradise|adam| +|paradise|eve| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParametersCanBeInDifferentOrder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParametersCanBeInDifferentOrder/properties.xml new file mode 100644 index 0000000000..c6b7490fdd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/ParametersCanBeInDifferentOrder/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090929161143 + + + + + + + + + 1254193897913 + -4710324383441485438 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/StopOnErrorLeadsToAbandon/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/StopOnErrorLeadsToAbandon/content.txt new file mode 100644 index 0000000000..79f8b4a1d7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/StopOnErrorLeadsToAbandon/content.txt @@ -0,0 +1,56 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.WithStop| + +|''set stop on error''|true| + +|''stopper on error''| +|''name''|''full address''| +|adam|paradise| +|eve|paradise| + +|should be ignored| +) + +*! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.DoFixture
+
+ + + +
define actions at.FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.WithStop
+
+ + + +
set stop on errortrue
+
+ + + + + + + + + + + +
stopper on error
namefull address
adamparadise Defined action call .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters.DefinedActions.WithStop: + +
get1is2 expected
1 actual
+

+ + +
should ignore this
+
eveparadise
+
+ + +
should be ignored
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/StopOnErrorLeadsToAbandon/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/StopOnErrorLeadsToAbandon/properties.xml new file mode 100644 index 0000000000..9194d8c70f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/StopOnErrorLeadsToAbandon/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254274017982 + -1158640634321766028 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/content.txt new file mode 100644 index 0000000000..c3d8faadfd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/content.txt @@ -0,0 +1,18 @@ +^DefinedActions + +^MultipleCalls +^MultipleCallsExpanded + +^NestedCalls +^NestedCallsWithOrdinaryDefinedActions +^NestedCallsWithOrdinaryInside + +^ParametersCanBeInDifferentOrder +^MultipleCallsWhereSomeFail + +^BadlyFormedCallTables + +^ParameterDynamicVariableIsLocalToDefinedAction + +^AbandonStorytest +^StopOnErrorLeadsToAbandon \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/properties.xml new file mode 100644 index 0000000000..f0c4da8ecd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DefinedActionsWithNamedParameters/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090930135934 + + + + + + + + + 1254272374515 + 4719822809984825451 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/CustomSpecialAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/CustomSpecialAction/content.txt new file mode 100644 index 0000000000..6e208aee02 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/CustomSpecialAction/content.txt @@ -0,0 +1,21 @@ +!2 Special actions, like 'check' can be defined in the fixture subclass. These take a ''Parse'' as argument. +|!-fitlibrary.spec.SpecifyFixture-!| +|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
special actionright
+ + +
special actionwrong
+ + +
special actionother
-!|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
special actionright
+ + +
special actionwrong
+ + +
special actionother
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/CustomSpecialAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/CustomSpecialAction/properties.xml new file mode 100644 index 0000000000..a0a681a71a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/CustomSpecialAction/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1131874569390 + -3953035243165902795 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/FixtureOverride/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/FixtureOverride/content.txt new file mode 100644 index 0000000000..3321a7cc9b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/FixtureOverride/content.txt @@ -0,0 +1,9 @@ +!2 ''!-DoFixture-!'' checks the fixture first for a method. Thus the fixture is an optional adapter for the System Under Test: +|!-fitlibrary.spec.SpecifyFixture-!| +|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
hidden method
-!|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
hidden method
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/FixtureOverride/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/FixtureOverride/properties.xml new file mode 100644 index 0000000000..5de7a00d69 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/FixtureOverride/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060906010057 + + + + + + + 1131874373468 + 7023857045820453726 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsCalledOnError/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsCalledOnError/content.txt new file mode 100644 index 0000000000..0fa97adf57 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsCalledOnError/content.txt @@ -0,0 +1,41 @@ +!**< def +!define test (!|fitlibrary.specify.workflow.OnFailureWithException| + +|''!-with FitLibrary logger-!''| +|''level''|ALL| + +|''result''|'''is'''|false| + +|''end''| +) +**! +We include logging so it's easier to see what's going on: + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.OnFailureWithException
+
+ + + + + +
with FitLibrary logger
levelALL
+
+ + + + +
resultisfalse expected
true actual
+
+ + +
end
+
Error in storytest tear down:
onFailure() called
-!| + + * Note: the following table has to be outside the specification. If it's at the end, logging is turned off before the onError() method is called and so the call is not logged! + +|''!-with FitLibrary logger-!''| +|''level''|OFF| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsCalledOnError/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsCalledOnError/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsCalledOnError/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsNotCalledWhenNoError/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsNotCalledWhenNoError/content.txt new file mode 100644 index 0000000000..915ffc5442 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsNotCalledWhenNoError/content.txt @@ -0,0 +1,24 @@ +!**< def +!define test (!|fitlibrary.specify.workflow.OnFailureWithException| + +|''result''|'''is'''|true| + +|''end''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.OnFailureWithException
+
+ + + + +
resultistrue
+
+ + +
end
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsNotCalledWhenNoError/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsNotCalledWhenNoError/properties.xml new file mode 100644 index 0000000000..1665cb9759 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureIsNotCalledWhenNoError/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureReturnsResultWhichIsShown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureReturnsResultWhichIsShown/content.txt new file mode 100644 index 0000000000..78402a7cfc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureReturnsResultWhichIsShown/content.txt @@ -0,0 +1,23 @@ +!**< def +!define test (!|fitlibrary.specify.workflow.OnFailureWithResult| + +|''result''|'''is'''|false| + +|''end''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.OnFailureWithResult
+
+ + + + +
resultisfalse expected
true actual
+
+ +
end
+
Error in storytest tear down: onFailure() called
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureReturnsResultWhichIsShown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureReturnsResultWhichIsShown/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureReturnsResultWhichIsShown/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureWithResultIsNotCalled/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureWithResultIsNotCalled/content.txt new file mode 100644 index 0000000000..e01a69dd27 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureWithResultIsNotCalled/content.txt @@ -0,0 +1,23 @@ +!**< def +!define test (!|fitlibrary.specify.workflow.OnFailureWithResult| + +|''result''|'''is'''|true| + +|''end''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.OnFailureWithResult
+
+ + + + +
resultistrue
+
+ + +
end
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureWithResultIsNotCalled/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureWithResultIsNotCalled/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/OnFailureWithResultIsNotCalled/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/content.txt new file mode 100644 index 0000000000..a7b933a3a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/content.txt @@ -0,0 +1,6 @@ +^OnFailureIsCalledOnError +^OnFailureIsNotCalledWhenNoError + +^OnFailureReturnsResultWhichIsShown +^OnFailureWithResultIsNotCalled + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/OnFailure/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParseDelegate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParseDelegate/content.txt new file mode 100644 index 0000000000..912584ef2e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParseDelegate/content.txt @@ -0,0 +1,44 @@ +!**< def +!define test ( +!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|'''check'''|''same date''|2004/04/28 16:03|2004/04/28 16:03| + +) +!define test2 ( +!|fitlibrary.specify.workflow.ParserDelegateMethod| +---- +|'''check'''|''same date''|2004/04/28 16:03|2004/04/28 16:03| + +) +**! +!2 Other text data types are handled with a ''parse delegate'' in the ''!-DoFixture-!'': +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + +
checksame date2004/04/28 16:032004/04/28 16:03
+
-!| + +!2 Or a ${parserDelegateMethod} in a ${domainAdapter} +|!-fitlibrary.spec.SpecifyFixture-!| +|${test2}|!-
+ + +
fitlibrary.specify.workflow.ParserDelegateMethod
+

+ + + + + +
checksame date2004/04/28 16:032004/04/28 16:03
+
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParseDelegate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParseDelegate/properties.xml new file mode 100644 index 0000000000..5599bd3ac4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParseDelegate/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081101171738 + + + + + + + 1225513058796 + 2189590415142035214 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParserDelegateMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParserDelegateMethod/content.txt new file mode 100644 index 0000000000..935fe2f20b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParserDelegateMethod/content.txt @@ -0,0 +1,23 @@ +!**< def +!define test ( +!|fitlibrary.specify.workflow.ParserDelegateMethod| +---- +|'''check'''|''same date''|2004/04/28 16:03|2004/04/28 16:03| + +) +**! +!2 Other text data types can also be handled with a ${parserDelegateMethod} in a ${domainAdapter} +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.workflow.ParserDelegateMethod
+

+ + + + + +
checksame date2004/04/28 16:032004/04/28 16:03
+
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParserDelegateMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParserDelegateMethod/properties.xml new file mode 100644 index 0000000000..338ed70157 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ParserDelegateMethod/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20081101171749 + true + true + true + true + true + true + true + 1225513069562 + 7470141333524431016 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/AddShowCell/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/AddShowCell/content.txt new file mode 100644 index 0000000000..713fda44e5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/AddShowCell/content.txt @@ -0,0 +1,15 @@ +!**< def +!define test (!|fitlibrary.specify.access.CurrentRow| + +|''action that adds a show cell''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.access.CurrentRow
+
+ + +
action that adds a show cellhello
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/AddShowCell/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/AddShowCell/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/AddShowCell/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/PassFailCell/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/PassFailCell/content.txt new file mode 100644 index 0000000000..145c03c40c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/PassFailCell/content.txt @@ -0,0 +1,55 @@ +!**< def +!define test (!|fitlibrary.specify.access.CurrentRow| + +|''action that passes cell''|1| + +|''action that passes cell''|0| + +|''action that fails cell''|1| + +|''action that fails cell''|0| + +|''action that fails cell''|1|''with actual''|2| + +|''action with error in cell''|2|''with message''|Wrong| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.access.CurrentRow
+
+ + + +
action that passes cell1
+
+ + + +
action that passes cell0
+
+ + + +
action that fails cell1
+
+ + + +
action that fails cell0
+
+ + + + + +
action that fails cell1 expected
2 actual
with actual2
+
+ + + + + +
action with error in cell2with message
Wrong
Wrong
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/PassFailCell/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/PassFailCell/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/PassFailCell/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/content.txt new file mode 100644 index 0000000000..4f89c8b95d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/content.txt @@ -0,0 +1,9 @@ +In the past it has sometimes been difficult to word actions so that they both read well and give good error messages. + +''!-FitLibrary-!'' now allows for ordinary code to provide useful reporting information. Code can now make changes to the current row that's under execution. It can: + + * Add a cell with a '''show''' value in it + * Pass, fail, ignore or give an error for a specific cell in a row. + +^AddShowCell +^PassFailCell \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/PojoAccessToCurrentRow/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUp/content.txt new file mode 100644 index 0000000000..dc4968189d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUp/content.txt @@ -0,0 +1,17 @@ + * ''setUp()'' is called before running the table + * Here, the ''setUp()'' method shows it has worked by setting ''is set up'' to true + +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.workflow.SetUp
+
+ + +
checkis set uptrue
-!|!- + +
fitlibrary.specify.workflow.SetUp
+
+ + +
checkis set uptrue
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUp/properties.xml new file mode 100644 index 0000000000..9546dbed3b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1157086008981 + -4228750353936516921 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpAndTearDownNotCalledInSut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpAndTearDownNotCalledInSut/content.txt new file mode 100644 index 0000000000..16e2bc8165 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpAndTearDownNotCalledInSut/content.txt @@ -0,0 +1,61 @@ +!**< def +!define test ( +!|fitlibrary.specify.workflow.SetUpTearDownNotCalledOnSut| +---- +|check|setUps|0| +|check|tearDowns|0| + +|something| + +|check|setUps|0| +|check|tearDowns|0| + +|pass sut on| + +|check|setUps|0| +|check|tearDowns|0| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibrary.specify.workflow.SetUpTearDownNotCalledOnSut
+


+ + + + + + + + +
checksetUps0
checktearDowns0
+
+ + +
something
+
+ + + + + + + + +
checksetUps0
checktearDowns0
+
+ + +
pass sut on
+
+ + + + + + + + +
checksetUps0
checktearDowns0
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpAndTearDownNotCalledInSut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpAndTearDownNotCalledInSut/properties.xml new file mode 100644 index 0000000000..d44b6f912b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpAndTearDownNotCalledInSut/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1225513090234 + 7928468741870267981 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpExceptionShown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpExceptionShown/content.txt new file mode 100644 index 0000000000..dad9a077e2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpExceptionShown/content.txt @@ -0,0 +1,9 @@ + * ''setUp()'' is called once the ''flow fixture object'' has started running the whole storytest + * If an exception is thrown inside ''setUp()'', it is shown in the report +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.workflow.SetUpWithException
-!|!- + +
fitlibrary.specify.workflow.SetUpWithException
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpExceptionShown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpExceptionShown/properties.xml new file mode 100644 index 0000000000..825e466d1e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestSetUpExceptionShown/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060906010057 + + + + + + + + 1155363957431 + 7319203762303148404 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDown/content.txt new file mode 100644 index 0000000000..bcdb01faff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDown/content.txt @@ -0,0 +1,20 @@ + * ''tearDown()'' is called on the object once the workflow has finished running the whole storytest + * To check this has happened, the fixture here throws an exception inside tearDown() + * So we check that that has happened +!**< def +!define test (!|fitlibrary.specify.workflow.TearDown| + +|some action| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.TearDown
+
+ + +
some action
+
Error in storytest tear down:
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDown/properties.xml new file mode 100644 index 0000000000..55f542574e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDown/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1254094819701 + 5062975826301516642 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDownAfterException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDownAfterException/content.txt new file mode 100644 index 0000000000..f51d84f240 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDownAfterException/content.txt @@ -0,0 +1,16 @@ + * ''tearDown()'' is called even if an exception is thrown during a storytest +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.workflow.TearDown
+
+ + +
an exception
-!|!- + +
fitlibrary.specify.workflow.TearDown
+
+ + +
an exception
+
Error in storytest tear down:
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDownAfterException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDownAfterException/properties.xml new file mode 100644 index 0000000000..b2251252b6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestTearDownAfterException/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1254095009201 + -7666842132911588922 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithOtherSetUpAndTearDown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithOtherSetUpAndTearDown/content.txt new file mode 100644 index 0000000000..f8707acf68 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithOtherSetUpAndTearDown/content.txt @@ -0,0 +1,25 @@ +If workflow temporarily continues with another object, that also has its ''setUp()'' and ''tearDown()'' methods called +!**< def +!define test (!|fitlibrary.specify.workflow.SetUpTearDownOfOther| + +|''with other set up''| +|''is set up''| + +|''with other tear down''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.SetUpTearDownOfOther
+
+ + + + +
with other set up
is set up
+
+ + +
with other tear down
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithOtherSetUpAndTearDown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithOtherSetUpAndTearDown/properties.xml new file mode 100644 index 0000000000..0d3a48ff4e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithOtherSetUpAndTearDown/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513114515 + -3458240966860134125 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowSetUpException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowSetUpException/content.txt new file mode 100644 index 0000000000..06cd040afa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowSetUpException/content.txt @@ -0,0 +1,12 @@ +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.WithinFlow
+ + +
with set up exception
-!|!- + +
fitlibrary.specify.WithinFlow
+ + +
with set up exception
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowSetUpException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowSetUpException/properties.xml new file mode 100644 index 0000000000..96eda63166 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowSetUpException/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060906010057 + + + + + + + + 1136846165304 + -7985527397162962100 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowTearDownAndException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowTearDownAndException/content.txt new file mode 100644 index 0000000000..8549893f59 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowTearDownAndException/content.txt @@ -0,0 +1,15 @@ +!2 Teardown occurs even when there is an exception during table execution +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.WithinFlow
+ + + +
with tear down
an exception
-!|!- + +
fitlibrary.specify.WithinFlow
+ + + +
with tear down
an exception
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowTearDownAndException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowTearDownAndException/properties.xml new file mode 100644 index 0000000000..802d777995 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/TestWithinFlowTearDownAndException/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060906010057 + + + + + + + + 1137375652238 + -897116734839814336 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/content.txt new file mode 100644 index 0000000000..8bc48e798e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/content.txt @@ -0,0 +1,10 @@ +^TestSetUp +^TestTearDown +^TestSetUpExceptionShown +^TestTearDownAfterException + +^TestWithOtherSetUpAndTearDown +^TestWithinFlowSetUpException +^TestWithinFlowTearDownAndException + +^TestSetUpAndTearDownNotCalledInSut diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/properties.xml new file mode 100644 index 0000000000..86e32c52d7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/SetUpTearDown/properties.xml @@ -0,0 +1,15 @@ + + + + + 20070104162344 + + + + + + + + 1167799838437 + -7699672494409643930 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowException/content.txt new file mode 100644 index 0000000000..a7a04e22da --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowException/content.txt @@ -0,0 +1,95 @@ +!2 When an action throws a !-FitLibraryShowException-!, it defines what text is to be shown in an extra cell added to the row: +!**< def +!define test (!|fitlibrary.specify.workflow.ExceptionAddsCells| +---- +|add cell to|gh| + +|add cell to|gh|'''is'''|true| + +|add cell to|gh|'''matches'''|tr.e| + +|add cell to|gh|'''becomes'''|true| + +|'''check'''|add cell to|gh|true| + +|'''not'''|add cell to|gh| + +|'''reject'''|add cell to|gh| + +|'''show'''|add cell to|gh| + +|'''set'''|var|add cell to|gh| + +|'''ensure'''|add cell to|gh| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.ExceptionAddsCells
+
+
+ + + +
add cell toghadded: gh
next line
+
+ + + + + +
add cell toghistrueadded: gh
next line
+
+ + + + + +
add cell toghmatchestr.eadded: gh
next line
+
+ + + + + +
add cell toghbecomestrueadded: gh
next line
+
+ + + + + +
checkadd cell toghtrueadded: gh
next line
+
+ + + + +
notadd cell toghadded: gh
next line
+
+ + + + +
rejectadd cell toghadded: gh
next line
+
+ + + + +
showadd cell toghadded: gh
next line
+
+ + + + + +
setvaradd cell toghadded: gh
next line
+
+ + + + +
ensureadd cell toghadded: gh
next line
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowException/properties.xml new file mode 100644 index 0000000000..a7c3219dec --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowException/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1232247806531 + 609665066194443813 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowExceptionWithOo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowExceptionWithOo/content.txt new file mode 100644 index 0000000000..63ca6a1aad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowExceptionWithOo/content.txt @@ -0,0 +1,79 @@ +!2 When an action throws a !-FitLibraryShowException-!, it defines what text is to be shown in an extra cell added to the row: +!**< def +!define body (|''add''|name| + +|add cell to|@{name}| + +|add cell to|@{name}+@{name}| +) +!define test (!|fitlibrary.specify.workflow.ExceptionAddsCells| + +|define action|Person| +|${body}| +---- +|'''set'''|rick.name|'''to'''|Rick| +|'''set'''|rick.class|'''to'''|Person| + +|'''oo'''|rick|''add''|Rick| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.ExceptionAddsCells
+
+ + + + + +
define actionPerson
+ + + +
addname
+
+ + + +
add cell to@{name}
+
+ + + +
add cell to@{name}+@{name}
+
+
+
+ + + + + + + + + + +
setrick.nametoRick
setrick.classtoPerson
+
+ + + + + +
oo
rickadd
Rick Defined action call: +
+ + + +
add cell toRickadded: Rick
next line
+
+ + + +
add cell toRick+Rickadded: Rick+Rick
next line
+
-!| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowExceptionWithOo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowExceptionWithOo/properties.xml new file mode 100644 index 0000000000..4191e3ac98 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/TestShowExceptionWithOo/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1254265961584 + -4960139252409995639 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/content.txt new file mode 100644 index 0000000000..fb32507cb7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/content.txt @@ -0,0 +1,3 @@ +A '''show''' special action may be used to show the result of an action. It can be convenient to instead have the method itself signal that something should be shown. If the method that's called for an action throws a ''!-FitLibraryShowException-!'', the included text is shown in a cell that's added to the row. + +!contents -R2 \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/properties.xml new file mode 100644 index 0000000000..d1af3be89a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/ShowExceptionHandling/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090117151257 + + + + + + + + + 1232158377703 + 1865812182346117752 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/content.txt new file mode 100644 index 0000000000..f0e96e5bbc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/content.txt @@ -0,0 +1 @@ +!contents \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/properties.xml new file mode 100644 index 0000000000..5f567cb6b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoTableFixturing/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfArray/content.txt new file mode 100644 index 0000000000..65f37da3b3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfArray/content.txt @@ -0,0 +1,40 @@ +If a workflow action returns an array of primitive (eg '''int''') or associated class (eg '''Double'''), it's automatically wrapped with a ''!-PrimitiveArrayTraverse-!'', so that the array can be tested against the rest of the table: +!**< test +!define test (!|fitlibrary.specify.workflow.AutoWrap| + +|''an array of int''| +|1| +|2| +|3| + +|''an array of integer''| +|1| +|2| +|3| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.AutoWrap
+
+ + + + + + + + +
an array of int
1
2
3
+
+ + + + + + + + +
an array of integer
1
2
3
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfArray/properties.xml new file mode 100644 index 0000000000..565205dccd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfArray/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232251301312 + 3930210329055360778 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfCollection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfCollection/content.txt new file mode 100644 index 0000000000..b1baa1a580 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfCollection/content.txt @@ -0,0 +1,82 @@ +If a workflow action returns an array or a Collection or an Iterator, that collection is auto-wrapped with a suitable ''Traverse'' so that it can be checked against the rest of the table: +!**< def +!define test (!|fitlibrary.specify.workflow.AutoWrap| + +|''an array of Point''| +|''x''|''y''| +|0|0| +|5|5| + +|''a list of Point''| +|''x''|''y''| +|0|0| +|5|5| + +|''an iterator of Point''| +|''x''|''y''| +|0|0| +|5|5| + +|''a set of Point''| +|''x''|''y''| +|0|0| +|5|5| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.AutoWrap
+
+ + + + + + + + + + + +
an array of Point
xy
00
55
+
+ + + + + + + + + + + +
a list of Point
xy
00
55
+
+ + + + + + + + + + + +
an iterator of Point
xy
00
55
+
+ + + + + + + + + + + +
a set of Point
xy
00
55
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfCollection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfCollection/properties.xml new file mode 100644 index 0000000000..fb7fc2e865 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfCollection/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1225512725406 + 4887098994288490971 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfObject/content.txt new file mode 100644 index 0000000000..04cf75b5b9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfObject/content.txt @@ -0,0 +1,57 @@ +!**< def +!define test (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +| appends | +| plus| +| plus| + +|another object| +| plus| +|access other| + +An Integer is not wrapped, so parseInt won't apply to it: + +|an Integer| +|parse int|3|is|3| +) +**! + + * If a workflow action returns an object, it's wrapped in a new ''!-WorkflowTraverse-!'', so that the object can be tested in the rest of the table. + * However, this doesn't apply if the object is any of the following: a Fixture, a Traverse, an array, a Collection, a primitive value or a Value Object. + * Primitive values include int, boolean, float, double, char, Boolean, Character, as well as all the Number subclasses (Integer, BigDecimal, Byte, Long etc etc). + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + +
appends
plus
plus
+
+ + + + + + +
another object
plus
access other
+
An Integer is not wrapped, so parseInt won't apply to it:

+ + + + + + + +
an Integer
parse int
Missing class or Missing method
3is3
-!| + + * ''appends()'' returns a String, which is not auto-wrapped, and so ''plus()'' is applied to the original ''!-DoFixture-!'' + * ''anotherObject()'' returns a fixture, which is itself not auto-wrapped + * Now ''plus()'' is not found in that fixture, as it's a method of that new fixture, and so the method in the original ''!-DoFixture-!'' is called instead (outer scope) + * But ''accessOther()'' is found in that fixture, and so is executed there. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfObject/properties.xml new file mode 100644 index 0000000000..fe64ba6c43 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/TestAutoWrappingOfObject/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1155361295233 + 2170255797846762145 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/content.txt new file mode 100644 index 0000000000..3208741146 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/content.txt @@ -0,0 +1 @@ +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/properties.xml new file mode 100644 index 0000000000..e17ddf6f5a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/AutoWrapping/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060906010057 + + + + + + + + 1155358007555 + -8687459128244871671 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestActionWithBadArg/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestActionWithBadArg/content.txt new file mode 100644 index 0000000000..281e568a84 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestActionWithBadArg/content.txt @@ -0,0 +1,25 @@ +!2 The result of an action can't be used if there is a problem with one of the arguments to the action +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
checkaddAA2
+ + +
checkadd1AA
+ + +
showaddAA
-!|!- + +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
checkaddAA
Invalid Number
2
+ + +
checkadd1AA
Invalid Number
+ + +
showaddAA
Invalid Number
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestActionWithBadArg/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestActionWithBadArg/properties.xml new file mode 100644 index 0000000000..8406f8db37 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestActionWithBadArg/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060906010057 + + + + + + + 1154132677931 + 4551618815055036896 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadAction/content.txt new file mode 100644 index 0000000000..84e56ae04a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadAction/content.txt @@ -0,0 +1,14 @@ +!2 An unknown action: +|!-fitlibrary.spec.SpecifyFixture-!| +|!- +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + +
not known1
checknot known3
-!| +|!- +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + +
not known
Missing class or Missing method
1
check
Missing class or Missing method
not known3
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadAction/properties.xml new file mode 100644 index 0000000000..c31d4c55fc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadAction/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1131698089828 + 2817427470102025856 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadType/content.txt new file mode 100644 index 0000000000..a75858c491 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadType/content.txt @@ -0,0 +1,19 @@ +!2 A bad type is signalled with an error: +|!-fitlibrary.spec.SpecifyFixture-!| +|!- +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
adda
+ + +
check +suma
-!|!- +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
adda
Invalid Number
+ + +
check +suma
Invalid Number
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadType/properties.xml new file mode 100644 index 0000000000..831773ff2d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestBadType/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060906010057 + + + + + + + 1154132709066 + -4277248488529464160 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedException/content.txt new file mode 100644 index 0000000000..a93cf7b221 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedException/content.txt @@ -0,0 +1,13 @@ +!2 An unexpected exception is marked as such: +|!-fitlibrary.spec.SpecifyFixture-!| +|!- +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
exception
-!| +|!- +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
exception
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedException/properties.xml new file mode 100644 index 0000000000..ba08b0f81e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedException/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060906010057 + + + + + + + 1143405695844 + 3059483592453706146 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInActionInFirstTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInActionInFirstTable/content.txt new file mode 100644 index 0000000000..82aaf90ffb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInActionInFirstTable/content.txt @@ -0,0 +1,10 @@ +!2 An unexpected exception in an action in the first table is marked as such: +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
exception
-!| +|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
exception
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInActionInFirstTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInActionInFirstTable/properties.xml new file mode 100644 index 0000000000..29c7810dfd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInActionInFirstTable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060906010057 + + + + + + + + 1143405535022 + 905066248601323262 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInConstructor/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInConstructor/content.txt new file mode 100644 index 0000000000..5afdd83396 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInConstructor/content.txt @@ -0,0 +1,7 @@ +!2 An unexpected exception in the constructor is marked as such: +|!-fitlibrary.spec.SpecifyFixture-!| +|!- +
fitlibrary.specify.DoFixtureWithExceptionInConstructor
-!| +|!- +
fitlibrary.specify.DoFixtureWithExceptionInConstructor
java.lang.RuntimeException: Bad constructor +
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInConstructor/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInConstructor/properties.xml new file mode 100644 index 0000000000..522c977e45 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/TestUnexpectedExceptionInConstructor/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1155956556119 + -2208321845852623964 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/content.txt new file mode 100644 index 0000000000..04a927dc77 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/content.txt @@ -0,0 +1,2 @@ +|!contents| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/properties.xml new file mode 100644 index 0000000000..23cb313f36 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/ErrorHandling/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090117125506 + + + + + + + + 1232150106625 + 8270855683781968620 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/PassedText/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/PassedText/content.txt new file mode 100644 index 0000000000..c6f2a005e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/PassedText/content.txt @@ -0,0 +1,28 @@ +!|fitlibrary.specify.workflow.TextPassed| + + * If you edit this page, you'll see that the next action has a new line in the middle of the string: + +|''is several lines''|!-abc +def-!| + +|'''set'''|x|''to''|!-abc +def-!| + +|''is several lines''|@{x}| + +|''has tags''|!-<a>A<b/></a>-!| + +|'''set'''|t|''to''|!-<a>A<b/></a>-!| + +|''has tags''|@{t}| + +|note|This doesn't work|''is several lines with newlines''|!- +abc +def + +-!| + +!define msg {abc +def} + +|''is several lines without newline''|${msg}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/PassedText/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/PassedText/properties.xml new file mode 100644 index 0000000000..34a5d8fd1e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/PassedText/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestCalculate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestCalculate/content.txt new file mode 100644 index 0000000000..4bc1f979e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestCalculate/content.txt @@ -0,0 +1,34 @@ +Wrap the current object with a ''!-CalculateTraverse-!'', which is applied to the rest of the table: +!**< def +!define test (!|fitlibrary.specify.workflow.SelectWrap| + +|'''calculate'''| +|''a''|''b''||''+''| +|1|2||3| +|100|-3||97| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.SelectWrap
+
+ + + + + + + + + + + + + + + + + +
calculate
ab +
12 3
100-3 97
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestCalculate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestCalculate/properties.xml new file mode 100644 index 0000000000..e8304a3ca8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestCalculate/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1225512748171 + -1732842721345886759 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestConstraint/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestConstraint/content.txt new file mode 100644 index 0000000000..d68eaef49b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestConstraint/content.txt @@ -0,0 +1,48 @@ + * Wrap the current object with a ''!-ConstraintTraverse-!'', which is applied to the rest of the table. + * With "'''constraint'''", the examples are expected to succeed (the method returns true). + * With "'''failing constraint'''", the examples are expected to fail (the method returns false). +!**< def +!define test (!|fitlibrary.specify.workflow.SelectWrap| + +|'''constraint'''| +|''a <''|''b''| +|1|2| +|-100|200| + +|'''failing constraint'''| +|''a <''|''b''| +|10|2| +|1000|200| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.SelectWrap
+
+ + + + + + + + + + + +
constraint
a <b
12
-100200
+
+ + + + + + + + + + + +
failing constraint
a <b
102
1000200
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestConstraint/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestConstraint/properties.xml new file mode 100644 index 0000000000..67fd527e91 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestConstraint/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1225512757703 + 7442738804631611199 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestStart/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestStart/content.txt new file mode 100644 index 0000000000..ba1e12adbb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestStart/content.txt @@ -0,0 +1,52 @@ +A '''start''' special action creates an object of the specified class and carries out the rest of the workflow on it. +!**< def +!define test (!|fitlibrary.specify.workflow.SelectWrap| + +!|start|fitlibrary.specify.eg.Rectangle| + +|'''check'''|''x''|0| +|'''check'''|''y''|0| + +|''set location''|100||200| + +|'''check'''|''x''|100| +|'''check'''|''y''|200| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.SelectWrap
+
+ + + +
startfitlibrary.specify.eg.Rectangle
+
+ + + + + + + + +
checkx0
checky0
+
+ + + + + +
set location100 200
+
+ + + + + + + + +
checkx100
checky200
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestStart/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestStart/properties.xml new file mode 100644 index 0000000000..5ac729cb51 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/TestStart/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1225512766593 + -375748580597523354 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/content.txt new file mode 100644 index 0000000000..3208741146 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/content.txt @@ -0,0 +1 @@ +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/properties.xml new file mode 100644 index 0000000000..379de6c685 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SelectWrapping/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060906010057 + + + + + + + + 1155362820486 + 295165718121366814 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInFixture/content.txt new file mode 100644 index 0000000000..15b3c3ed17 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInFixture/content.txt @@ -0,0 +1,7 @@ +!2 If there is no method that matches an action in Do style (alternating keywords and arguments), then treat it as a sequence call (name, followed by arguments): + +!|fitlibrary.DoFixture| + +|''set system property to''|abc|ABC| + +|get|@{abc}|is|ABC| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInFixture/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInSut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInSut/content.txt new file mode 100644 index 0000000000..9337fe9076 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInSut/content.txt @@ -0,0 +1,10 @@ +!|fitlibrary.DoFixture| + +|start|fitlibrary.specify.workflow.Keywords| + +|sum|is|0.0| + +|buy at $ with discount%|2|1.0|0| + +|sum|is|2.0| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInSut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInSut/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallInSut/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallsWithSpecials/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallsWithSpecials/content.txt new file mode 100644 index 0000000000..535ce185c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallsWithSpecials/content.txt @@ -0,0 +1,248 @@ +!**< def +!define test (!|fitlibrary.specify.workflow.SpecialsAndSequence| + +|'''check'''|''plus''|1|2|3| + +|'''show'''|''plus''|1|2| + +|'''show after'''|''plus''|1|2| + +|'''show escaped'''|''and''||2| + +|'''not'''|''or''|false|false| +|'''not'''|''or''|true|false| + +|'''not true'''|''or''|false|false| +|'''not true'''|''or''|true|false| + +|'''not'''|''runtimeException''||| +|'''not'''|''badNumberException''|a|| +|'''not'''|''fitLibraryException''|some error|| +|'''not'''|''fitLibraryShowException''|some msg|| + +|'''ensure'''|''or''|true|false| +|'''ensure'''|''or''|false|false| + +|'''set'''|x|''plus''|1|2| +|''get''|@{x}|'''is'''|3| + +|'''set'''|x|=|1+2| +|''get''|@{x}|'''is'''|3| + +|'''set symbol named'''|x|''plus''|1|2| +|''get symbol named''|x|'''is'''|3| + +|'''set symbol named'''|x|=|1+2| +|''get symbol named''|x|'''is'''|3| + + +|''plus''|1|2|'''is'''|3| + +|''plus''|1|2|'''becomes'''|3| + +|''plus''|1|20|'''matches'''|.1| + +|'''not true'''|''badNumberException''|a|| +|'''not true'''|''fitLibraryException''|some error|| +|'''not true'''|''fitLibraryShowException''|some msg|| +|'''not true'''|''runtimeException''||| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.SpecialsAndSequence
+
+ + + + + + +
checkplus123
+
+ + + + + +
showplus123
+
+ + + + + +
show afterplus12
+ + +Logs
+ +
+ + + + + +
show escapedand<b>2</b>
<b>2</b>
+
+ + + + + + + + + + +
notorfalsefalse
notortruefalse
+
+ + + + + + + + + + +
not trueorfalsefalse
not trueortruefalse
+
+ + + + + + + + + + + + + + + + + + + + +
notruntimeException  
notbadNumberExceptiona Invalid Number
notfitLibraryExceptionsome error 
notfitLibraryShowExceptionsome msg some msg
+
+ + + + + + + + + + +
ensureortruefalse
ensureorfalsefalse
+
+ + + + + + + + + + + +
setxplus12
get3is3
+
+ + + + + + + + + + +
setx=1+2
get3is3
+
+ + + + + + + + + + + +
set symbol namedxplus12
get symbol namedxis3
+
+ + + + + + + + + + +
set symbol namedx=1+2
get symbol namedxis3
+

+ + + + + + +
plus12is3
+
+ + + + + + +
plus12becomes3
+
+ + + + + + +
plus120matches.1
+
+ + + + + + + + + + + + + + + + + + + + +
not truebadNumberExceptiona
Invalid Number
 
not true
some error
fitLibraryExceptionsome error 
not truefitLibraryShowExceptionsome msg some msg
not true
runtimeException  
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallsWithSpecials/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallsWithSpecials/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceCallsWithSpecials/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsHiddenByDoStyle/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsHiddenByDoStyle/content.txt new file mode 100644 index 0000000000..3680246cae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsHiddenByDoStyle/content.txt @@ -0,0 +1,9 @@ +!|fitlibrary.DoFixture| + +|start|!-fitlibrary.specify.workflow.DoSeqAmbiguity-!| + +|add|1|to|2|is|3| + +|add|1|9|2|is|12| + +|check|add|1|9|2|12| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsHiddenByDoStyle/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsHiddenByDoStyle/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsHiddenByDoStyle/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsNotMentionedInErrorIfTooSmall/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsNotMentionedInErrorIfTooSmall/content.txt new file mode 100644 index 0000000000..6a77d3baec --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsNotMentionedInErrorIfTooSmall/content.txt @@ -0,0 +1,25 @@ +!**< def +!define test (!|fitlibrary.DoFixture| + +|''set system property to''|abc| + +|''set system property to''|abc|ABC|DEF| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.DoFixture
+
+ + + +
set system property to
Missing class or Missing method. Possibly:
  • public Type setSystemPropertyTo(Type1 arg1) { }
abc
+
+ + + + + +
set system property to
Missing class or Missing method. Possibly:
  • public Type setSystemPropertyToABC(Type1 arg1, Type2 arg2) { }
  • public Type setSystemPropertyTo(Type p1, Type p2, Type p3) {}
abcABCDEF
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsNotMentionedInErrorIfTooSmall/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsNotMentionedInErrorIfTooSmall/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/SequenceIsNotMentionedInErrorIfTooSmall/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/content.txt new file mode 100644 index 0000000000..2de7c82c3f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/content.txt @@ -0,0 +1 @@ +!contents -R2 diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/SequenceCallSecond/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestActions/content.txt new file mode 100644 index 0000000000..5dc95d46f3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestActions/content.txt @@ -0,0 +1,42 @@ +!2 Single-parameter actions have side-effects and can be checked: +!**< def +!define test (!|fitlibrary.specify.workflow.Sum| + +|''add''|1| +|''add''|2| + +|'''check'''|''sum''|3| + +|'''check'''|''sum''|4| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + +
fitlibrary.specify.workflow.Sum
+
+ + + + + + + + +
add1
add2
+
+ + + + + +
checksum3
+
+ + + + + +
checksum4 expected
3 actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestActions/properties.xml new file mode 100644 index 0000000000..e0105405e5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestActions/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232247749015 + 6114357677785175993 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestAnyCharacters/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestAnyCharacters/content.txt new file mode 100644 index 0000000000..9ff67406fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestAnyCharacters/content.txt @@ -0,0 +1,47 @@ +!2 Any characters can be used in the keywords of actions +!**< def +!define test (!|fitlibrary.specify.workflow.AnyCharactersInActions| + +|'''check'''||1|+|2|=|3| + +|'''check'''|"|fit library|"+"|2|"=|fit library 2| + +|'''check'''|[|true|''&&''|false|]=|false| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.AnyCharactersInActions
+
+ + + + + + + + +
check 1+2=3
+
+ + + + + + + + +
check"fit library"+"2"=fit library 2
+
+ + + + + + + + +
check[true&&false]=false
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestAnyCharacters/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestAnyCharacters/properties.xml new file mode 100644 index 0000000000..1e0a9098f8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestAnyCharacters/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232247778062 + 571473061246174392 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestBooleanAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestBooleanAction/content.txt new file mode 100644 index 0000000000..e612483717 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestBooleanAction/content.txt @@ -0,0 +1,43 @@ +!*< defs +!define test (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|''a right action''|1| + +|''a right Boolean action''|1| + +|''a wrong action''|2| + +|''an exception action''| +) +*! +!2 Boolean actions have to return true to be right: +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + +
a right action1
+
+ + + + +
a right Boolean action1
+
+ + + + +
a wrong action
Missing class or Missing method.
2
+
+ + + +
an exception action
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestBooleanAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestBooleanAction/properties.xml new file mode 100644 index 0000000000..167a895146 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestBooleanAction/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1155358197699 + -433676648706204084 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestKeywords/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestKeywords/content.txt new file mode 100644 index 0000000000..08f7d0acb2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestKeywords/content.txt @@ -0,0 +1,120 @@ +!2 Keywords separate several parameters + * There are keywords in the first cell and every second cell after that. + * By convention, such keywords are shown in ''italics''. + * There can be a keyword after the last argument. + * The keywords can be distributed between those cells how you like. +The following ''buy'' actions all call the same method: ''buyAtDollarWithDiscountPercent()'' +!**< def +!define test1 (!|fitlibrary.specify.workflow.Keywords| + +|''buy''|1|''at $''|12.00|''with discount''|10|''%''| +|''buy''|4|''at $''|10.00|''with discount''|10|''%''| + +|'''check'''|''total owing $''|46.80| +) +!define test2 (!|fitlibrary.specify.workflow.Keywords| + +|''buy at $ with discount %''|1||12.00||10| + +|''buy at $''|1||10.00|''with discount %''|10| + +|''buy at $ with discount''|1||10.00||10|''%''| + +||1|''buy at $ with discount''|10.00||10|''%''| + +||1||10.00||10|''buy at $ with discount %''| + +|'''check'''|''total owing $''|46.80| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.workflow.Keywords
+
+ + + + + + + + + + + + + + + + +
buy1at $12.00with discount10%
buy4at $10.00with discount10%
+
+ + + + +
checktotal owing $46.80
-!| + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test2}|!- + + +
fitlibrary.specify.workflow.Keywords
+
+ + + + + + + +
buy at $ with discount %1 12.00 10
+
+ + + + + + + +
buy at $1 10.00with discount %10
+
+ + + + + + + + +
buy at $ with discount1 10.00 10%
+
+ + + + + + + + +
 1buy at $ with discount10.00 10%
+
+ + + + + + + + +
 1 10.00 10buy at $ with discount %
+
+ + + + +
checktotal owing $46.80
-!| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestKeywords/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestKeywords/properties.xml new file mode 100644 index 0000000000..e61bca8933 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestKeywords/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232247736593 + -2590371965394920390 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestMultiStepAccess/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestMultiStepAccess/content.txt new file mode 100644 index 0000000000..376a2181f9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestMultiStepAccess/content.txt @@ -0,0 +1,77 @@ +It's possible to keep stepping into other objects, etc, down the table. If an action in any row returns a ${traverse} or Fixture or an ${entity} that's ${autoWrapped}, that applies to the rest of the table. + +!**< def +!define test (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|point holder| +|point| +|check|x|24| +|check|y|7| +) +!define inner2 (|check|x|24| + +|check|y|7| +) +!define inner1 (|point| +|${inner2}| +) +!define test2 (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|point holder| +|${inner1}| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + + + + + + + +
point holder
point
checkx24
checky7
-!| + +To enable the subsequent rows to be split, use embedded tables: + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test2}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + +
point holder
+ + + + +
point
+ + + + +
checkx24
+
+ + + + +
checky7
+
+
-!| + +Not all objects are ${autoWrapped}, because some provide values which are checked against an ${expected} string, such as Dates. It's not ideal, but we only auto-wrap an ${entity}. A ${valueObject} is not ${autoWrapped}. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestMultiStepAccess/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestMultiStepAccess/properties.xml new file mode 100644 index 0000000000..71fd5c7b09 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestMultiStepAccess/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081101171715 + + + + + + + 1225513035656 + 515028631484242863 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTableWithDomainObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTableWithDomainObject/content.txt new file mode 100644 index 0000000000..ee5302be9a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTableWithDomainObject/content.txt @@ -0,0 +1,32 @@ +!**< def +!define fixture {!-fitlibrary.specify.DoFixtureFlowUnderTest-!} +!define br {!-
-!} +!define inner1 (|x|12| +) +!define Test (|${fixture}| + +|check|copy a point|${inner1}|${inner1}| +${br}) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${Test}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + +
checkcopy a point + + + +
x12
+
+ + + +
x12
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTableWithDomainObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTableWithDomainObject/properties.xml new file mode 100644 index 0000000000..fb2d4b4947 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTableWithDomainObject/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101171726 + + + + + + + + 1225513046765 + -190753359417361322 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesOfLists/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesOfLists/content.txt new file mode 100644 index 0000000000..0aded1d719 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesOfLists/content.txt @@ -0,0 +1,73 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + +
checka list of point + + + + +
xy
00
55
checkcopy of list of point + + + + +
xy
01
23
+ + + +
xy
01
23
-!|!- + +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + +
checka list of point + + + + +
xy
00
55
checkcopy of list of point + + + + +
xy
01
23
+ + + +
xy
01
23
-!| + +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
checkcopy of list of point + + + + +
xy
01
23
+ + +
xy
04
-!|!- + +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
checkcopy of list of point + + + + +
xy
01
23
+ + + + +
xy
04 expected
1 actual
2 surplus 3
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesOfLists/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesOfLists/properties.xml new file mode 100644 index 0000000000..67c525dd38 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesOfLists/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060906010057 + + + + + + + + 1146738571908 + 2609500984913901275 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesWithEntities/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesWithEntities/content.txt new file mode 100644 index 0000000000..4777d0ea7c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesWithEntities/content.txt @@ -0,0 +1,31 @@ + * Entities may be used in nested tables (requiring find method in the fixture) +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
checkcopy of list of entity + + + + +
entity
0
2
+ + + +
entity
0
2
-!|!- + +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
checkcopy of list of entity + + + + +
entity
0
2
+ + + +
entity
0
2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesWithEntities/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesWithEntities/properties.xml new file mode 100644 index 0000000000..c943a51bc0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestNestedTablesWithEntities/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060906010058 + + + + + + + + 1144546022171 + -1112150757990772053 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestPropertyGetter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestPropertyGetter/content.txt new file mode 100644 index 0000000000..560049ced1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestPropertyGetter/content.txt @@ -0,0 +1,24 @@ +If an action has no arguments and doesn't correspond to a method, the property is accessed instead: +!**< def +!define test (!|fitlibrary.specify.workflow.PropertyAccess| + +|''true property''| + +|'''check'''|int property with 3|3| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.PropertyAccess
+
+ + +
true property
+
+ + + + +
checkint property with 33
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestPropertyGetter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestPropertyGetter/properties.xml new file mode 100644 index 0000000000..e441e68643 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestPropertyGetter/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232247764281 + 6041939711765217772 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixture/content.txt new file mode 100644 index 0000000000..ba55db4847 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixture/content.txt @@ -0,0 +1,50 @@ +!2 Use a returned fixture: +|!-fitlibrary.spec.SpecifyFixture-!| +|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + + + +
get0slice0
s
A0a
A0b
+And another: + + + + + +
get1slice2
s
B2a
B2b
+And another is wrong: + + + + + + + +
get1slice2
s
BB2a
BB2b
B2a surplus
B2b surplus
-!|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + + + +
get0slice0
s
A0a
A0b
+And another: + + + + + +
get1slice2
s
B2a
B2b
+And another is wrong: + + + + + + + + + + +
get1slice2
s
BB2a missing
BB2b missing
B2a surplus missing
B2b surplus missing
B2a surplus
B2b surplus
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixture/properties.xml new file mode 100644 index 0000000000..c3e5d49758 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090424111050 + + + + + + + 1240528250000 + -2008003244373586605 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixtureDoesNotWreckFlow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixtureDoesNotWreckFlow/content.txt new file mode 100644 index 0000000000..bfe52a1fb3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixtureDoesNotWreckFlow/content.txt @@ -0,0 +1,34 @@ +!2 Problem identified by Jeff Nielsen: +And now fixed. +|!-fitlibrary.spec.SpecifyFixture-!| +|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + + + + +
add12
get0slice0
s
A0a
A0b
+And another: + + + + + + +
add12
get1slice2
s
B2a
B2b
-!|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + + + + +
add12
get0slice0
s
A0a
A0b
+And another: + + + + + + +
add12
get1slice2
s
B2a
B2b
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixtureDoesNotWreckFlow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixtureDoesNotWreckFlow/properties.xml new file mode 100644 index 0000000000..2e4b1286ee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/TestReturnedFixtureDoesNotWreckFlow/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090424111119 + + + + + + + + 1240528279766 + -3566025096358801701 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/content.txt new file mode 100644 index 0000000000..b7979776d0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/content.txt @@ -0,0 +1,25 @@ +^TestActions, where workflow actions are shown to be mapped to methods. +^TestPropertyGetter, where some workflow actions may be mapped to a property getter. + +^TestKeywords, where some cells takes keywords to help identify the action's argument. +^TestAnyCharacters, where any character is allowed in a keyword. + +^AutoWrapping, in which some returned values from an action are automatically wrapped as a Do table for processing the rest of the table. +^SelectWrapping, in which an action directly selects a Traverse, such as '''calculate''', for processing the rest of the table. + +^TestBooleanAction, in which an action is coloured red or green when it returns a boolean value. + +^TestReturnedFixture +^TestReturnedFixtureDoesNotWreckFlow + +^TestMultiStepAccess + +^TestNestedTablesOfLists +^TestNestedTablesWithEntities +^TestNestedTableWithDomainObject + +^ErrorHandling, in which we specify how various errors are handled + +|^SequenceCallSecond|''If an action, with keywords, doesn't have a corresponding method, we try a sequence call instead (no keywords after the first)''| + +|^PassedText|''Special characters, such as \n and tags can be passed through actions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/properties.xml new file mode 100644 index 0000000000..c4468a9512 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DoWorkflow/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1254344602183 + -8099499345935667879 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/CalculateFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/CalculateFixture/content.txt new file mode 100644 index 0000000000..d95f0a27dc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/CalculateFixture/content.txt @@ -0,0 +1,88 @@ +CalculateFixture can include nested tables as both ''given'' and ''expected'' values. + +This is expecially useful for writing calculation or constraint rules that involve domain objects and/or collections: + * Nested collections are defined in the table form that's used with ''!-ArrayFixture-!'' (etc) and ''!-SetUpFixture-!''. + * Nested domain objects are defined in the table form that's used with ''!-DomainObjectSetUpFixture-!'' and ''!-DomainObjectCheckFixture-!'' +!**< def +!define pt00 (|''x''|0| +|''y''|0| +) +!define pt11 (|''x''|1| +|''y''|1| +) +!define pt577 (|''x''|5| +|''y''|77| +) +!define pt678 (|''x''|6| +|''y''|78| +) +!define pts00 (|''x''|''y''| +|0|0| +) +!define pts0000 (|''x''|''y''| +|0|0| +|0|0| +) +!define pts1234 (|''x''|''y''| +|1|2| +|3|4| +) +**! +!3 Domain Objects +For example, to specify that a given object is expected from a calculation: +|!-fitlibrary.specify.NestedCalculateFixture-!| + +|!-calculate-!| +|''x''|''y''||''point''| +|0|0||${pt00}| +|5|77||${pt577}| + +For example, to specify that a calculation takes an object and results in some simple value: +|!-calculate-!| +|''point''||''x''|''y''| +|${pt577}||5|77| +|${pt00}||0|0| + +For example, to specify that a calculation takes an object and returns another: +|!-calculate-!| +|''point''||''shifted point''| +|${pt577}||${pt678}| +|${pt00}||${pt11}| +!3 Collections of Domain Objects +For example, to specify that a given collection is expected from a calculation: +|!-calculate-!| +|''list''||''points''| +|0,0||${pts00}| +|1,2,3,4||${pts1234}| + +For example, to specify that a calculation takes a collection and results in some simple value: +|!-calculate-!| +|''points''||''first x''| +|${pts00}||0| +|${pts1234}||1| + +For example, to specify that a calculation takes a collection and returns another: +|!-calculate-!| +|''points''||''identity''| +|${pts00}||${pts00}| +|${pts1234}||${pts1234}| + +|!-calculate-!| +|''set of points''||''identity''| +|${pts00}||${pts00}| +|${pts1234}||${pts1234}| + +For example, to specify that the elements of a collection must be unique: +|!-calculate-!| +|''points''||''valid?''| +|${pts00}||true| +|${pts1234}||true| +|${pts0000}||false| + +!3 Objects and Collections +For example, to specify that a point results in a collection of two of that point: +|!-calculate-!| +|''point''||''points''| +|${pt00}||${pts0000}| + +|''expected test results''|39|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/CalculateFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/CalculateFixture/properties.xml new file mode 100644 index 0000000000..47d600e749 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/CalculateFixture/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1225513128015 + -9075003925610771714 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/DomainObjectFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/DomainObjectFixture/content.txt new file mode 100644 index 0000000000..eeac2116bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/DomainObjectFixture/content.txt @@ -0,0 +1,34 @@ +|!-fitlibrary.specify.AggregateDomainObject-!| +!**< def +!define phones (|''phone''| +|411| +|549| +) +!define address1 (|''address1''|Auckland| +|''address2''|NZ| +) +!define address2 (|''address1''|Portland| +|''address2''|USA| +) +!define authors (|''name''|''phones''|''address''| +|Rick|${phones}|${address1}| +|Ward||${address2}| +) +!define attributes (|''name''|''value''| +|''title''|Fit For Developing Software| +|''date''|2005| +) +!define publisher (|''name''|Prentice Hall| +) +**! +|''create book''| +|''attributes''|${attributes}| +|''authors''|${authors}| +|''publisher''|${publisher}| + +|''check book''| +|''attributes''|${attributes}| +|''authors''|${authors}| +|''publisher''|${publisher}| + +|''expected test results''|14|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/DomainObjectFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/DomainObjectFixture/properties.xml new file mode 100644 index 0000000000..84c221c99d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/DomainObjectFixture/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101171905 + + + + + + + + 1225513145000 + 7568125331991260477 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/WorkFlow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/WorkFlow/content.txt new file mode 100644 index 0000000000..c0195826d5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/WorkFlow/content.txt @@ -0,0 +1,29 @@ +|!-fitlibrary.specify.AggregateDoFixture-!| +!**< def +!define vector1 (|''x''|10| +|''y''|20| +) +!define vector2 (|''x''|1| +|''y''|2| +) +!define vector3 (|''x''|11| +|''y''|22| +) +!define vectors1 (|''x''|''y''| +|1|2| +|10|20| +) +!define vectors2 (|''x''|''y''| +|11|22| +|20|40| +) + +**! +|check|''sum''|${vector1}|''and''|${vector2}|''gives''|${vector3}| + +|check|''set''|${vector1}|''and''|${vector2}|''gives''|${vectors1}| + +|check|''add''|${vectors1}|''and''|${vector1}|''gives''|${vectors2}| + +|''expected test results''|10|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/WorkFlow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/WorkFlow/properties.xml new file mode 100644 index 0000000000..50582aab27 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/WorkFlow/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101171914 + + + + + + + + 1225513154609 + 2047854742707084169 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/content.txt new file mode 100644 index 0000000000..1148cf474f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/content.txt @@ -0,0 +1,16 @@ +Nested tables may be used in a general way in ''!-FitLibrary-!'' fixtures, to show nested objects and collections. This can allow for domain objects to be more directly expressed, directly showing the associations. This is instead of having to associate different domain objects through keys, much as with a relational model. + +It's especially useful for showing ''aggregates'', in the ''Domain Driven Design'' sense of ''aggregate''. + +Nested tables may used for the set up of nested objects and collections, as in: + * ''!-SetUpFixture-!'', as shown in ^DomainObjectFixture and ^CalculateFixture; + * ''!-DomainObjectSetUpFixture-!'', as shown in ^DomainObjectFixture, where a property may be an object or a collection; + * the given values in ^CalculateFixture and ''!-ConstraintFixture-!'' + * and the arguments of actions in ^WorkFlow +Nested tables may be used for checking of nested objects and collections, as in + * ''!-ArrayFixture-!'' and the related ''!-SetFixture-!'' and ''!-SubsetFixture-!'', as shown in ^DomainObjectFixture and ^CalculateFixture; + * ^DomainObjectFixture, for ''!-DomainObjectCheckFixture-!''; + * the expected values in ^CalculateFixture + * and the expected value of an action in ^WorkFlow + +!contents \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/properties.xml new file mode 100644 index 0000000000..a15d3be2a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainAggregate/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232248097421 + -4707159708250463948 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ChecksFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ChecksFail/content.txt new file mode 100644 index 0000000000..52f095ea1c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ChecksFail/content.txt @@ -0,0 +1,66 @@ +!**< def +!define phones (|''country''|''region''|''number''| +|64|9|3737597| +|64|27|4556112| +) +!define account (|''id''|45678| +|''payment history''|poor| +) +!define user (|''name''|P. oor Payer| +|''phones''|${phones}| +|''account''|${account}| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''checks''| + +|''slow paying user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + +
checks
+
+ + + +
slow paying user + + + + + + + + + +
nameP. oor Payer expected
Poor Payer actual
Poor Payer diff
phones + + + + + + + + + + + + +
countryregionnumber
6493737597 expected
3737598 actual
64274556112
+
account + + + + + + +
id45678 expected
456778 actual
payment historypoor
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ChecksFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ChecksFail/properties.xml new file mode 100644 index 0000000000..df66ac08cb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ChecksFail/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513169468 + -3645620828127354524 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncompletePair/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncompletePair/content.txt new file mode 100644 index 0000000000..05a014f92e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncompletePair/content.txt @@ -0,0 +1,48 @@ +!3 For each property name, there must be an expected value +!**< def +!define user1 (|''name''|Poor Payer| +|''owe''| +) +!define user2 (|''name''|Poor Payer|''owe''| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''checks''| + +|''slow paying user''|${user1}| + +|''slow paying user''|${user2}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + +
checks
+
+ + + +
slow paying user + + + + + +
namePoor Payer
owe
Missing table cells
+
+
+ + + +
slow paying user + + + + +
namePoor Payerowe
Missing table cells
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncompletePair/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncompletePair/properties.xml new file mode 100644 index 0000000000..5d647b1fc4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncompletePair/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101171939 + + + + + + + + 1225513179859 + -3678135191305079408 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncorrectValueType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncorrectValueType/content.txt new file mode 100644 index 0000000000..f42a7b7713 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncorrectValueType/content.txt @@ -0,0 +1,34 @@ +!3 An error is given if the value is of the wrong type for the property concerned +!**< def +!define user (|''name''|Poor Payer| +|''owe''|true| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''checks''| + +|''slow paying user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + +
checks
+
+ + + +
slow paying user + + + + + + +
namePoor Payer
owetrue
Invalid Number
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncorrectValueType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncorrectValueType/properties.xml new file mode 100644 index 0000000000..2f6eb4d7a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/IncorrectValueType/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101171951 + + + + + + + + 1225513191265 + 6684708619509873068 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ListProperties/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ListProperties/content.txt new file mode 100644 index 0000000000..0dcfa8f564 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ListProperties/content.txt @@ -0,0 +1,87 @@ +!3 The value of a list propery is shown as an embedded table + * The embedded table is the same as a ordered list table, except that it starts with the ''label'' row + * As usual, only some of the properties of elements of the list may be specified + * The same approach is used for a property that is a ''Set'', array or ''Map'' + * Programmers: The processing of the embedded table happens automatically; you don't have to write any fixturing code for that +For example, a ''User'' also has a list of phone numbers: +!**< def +!define phones (|''country''|''region''|''number''| +|64|9|3737598| +|64|27|4556112| +) +!define phones2 (|''number''| +|3737598| +|4556112| +) +!define user1 (|''name''|Poor Payer| +|''phones''|${phones}| +) +!define user2 (|''name''|Poor Payer| +|''phones''|${phones2}| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''checks''| + +|''slow paying user''|${user1}| + +|''slow paying user''|${user2}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + +
checks
+
+ + + +
slow paying user + + + + + + +
namePoor Payer
phones + + + + + + + + + + + + +
countryregionnumber
6493737598
64274556112
+
+
+
+ + + +
slow paying user + + + + + + +
namePoor Payer
phones + + + + + + +
number
3737598
4556112
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ListProperties/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ListProperties/properties.xml new file mode 100644 index 0000000000..de833de88b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ListProperties/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172003 + + + + + + + + 1225513203703 + 4338493004165290712 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ObjectProperties/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ObjectProperties/content.txt new file mode 100644 index 0000000000..fa10f1e393 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ObjectProperties/content.txt @@ -0,0 +1,53 @@ +!3 The value of a propery that's another domain object may be shown as an embedded table + * The embedded table is the same as for the outer table, except that it starts with the ''label'' row + * As usual, only some of the properties of the embedded object may be specified + * Programmers: The processing of the embedded table happens automatically; you don't have to write any fixturing code for that +For example, a ''User'' also has a single ''Account'': +!**< def +!define user ( +|''name''|Poor Payer| +|''account''|${account}| + +) +!define account ( +|''id''|456778| +|''payment history''|poor| + +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''checks''| + +|''slow paying user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + +
checks
+
+ + + +
slow paying user
+ + + + + + +
namePoor Payer
account
+ + + + + + +
id456778
payment historypoor
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ObjectProperties/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ObjectProperties/properties.xml new file mode 100644 index 0000000000..4bf26a4026 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/ObjectProperties/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172014 + + + + + + + + 1225513214656 + 4812483847486067096 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/PrivatePropertyMethods/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/PrivatePropertyMethods/content.txt new file mode 100644 index 0000000000..c98b3188d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/PrivatePropertyMethods/content.txt @@ -0,0 +1,14 @@ +!**< def +!define props ( +|''private prop''|4| + +|''private prop in super''|4| + +) +**! +!|fitlibrary.specify.domain.PrivatePropertyMethods| + +${props} +---- +---- +${props} diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/PrivatePropertyMethods/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/PrivatePropertyMethods/properties.xml new file mode 100644 index 0000000000..d3a3d63951 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/PrivatePropertyMethods/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172034 + + + + + + + + 1225513234906 + -249355517812109237 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/SimpleProperties/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/SimpleProperties/content.txt new file mode 100644 index 0000000000..8834af9c73 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/SimpleProperties/content.txt @@ -0,0 +1,68 @@ +!3 The expected property-value pairs are given across a row of the table. + * More than one pair can be in a row. + * There's no need to check all of the properties +For example, a ''User'' has a ''name'' and an amount they ''owe'' us: + +!**< def +!define user1 (|''name''|Poor Payer| +|''owe''|10000.00| +) +!define user2 (|''name''|Poor Payer|''owe''|10000.00| +) +!define user3 (|''name''|Poor Payer| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''checks''| + +|''slow paying user''|${user1}| + +|''slow paying user''|${user2}| + +|''slow paying user''|${user3}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + +
checks
+
+ + + +
slow paying user + + + + + + +
namePoor Payer
owe10000.00
+
+
+ + + +
slow paying user + + + + + +
namePoor Payerowe10000.00
+
+
+ + + +
slow paying user + + + +
namePoor Payer
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/SimpleProperties/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/SimpleProperties/properties.xml new file mode 100644 index 0000000000..d53dee9708 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/SimpleProperties/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172051 + + + + + + + + 1225513251421 + -368590456633789389 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/UnknownProperty/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/UnknownProperty/content.txt new file mode 100644 index 0000000000..0be5a9aeb0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/UnknownProperty/content.txt @@ -0,0 +1,34 @@ +!3 Unknown properties of the object are marked as such +!**< def +!define user (|''name''|Poor Payer| +|''owing''|10000.00| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''checks''| + +|''slow paying user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + +
checks
+
+ + + +
slow paying user + + + + + + +
namePoor Payer
owing
Missing method
10000.00
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/UnknownProperty/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/UnknownProperty/properties.xml new file mode 100644 index 0000000000..7e72a83158 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/UnknownProperty/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172100 + + + + + + + + 1225513260843 + -4264076524459558809 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/content.txt new file mode 100644 index 0000000000..3e15882abc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/content.txt @@ -0,0 +1,12 @@ +!3 Tables can be used to test (some of) the properties of a domain object. +^SimpleProperties are listed as name-value pairs, similar to how a UI may be laid out with label-entry pairs. +^ListProperties may be included. Lists are shown downwards, as usual. +^ObjectProperties. A property may be another domain object. That can be shown as an embedded table. +^PrivatePropertyMethods + +^ChecksFail - when expectations aren't met, the differences are shown in the report + +^UnknownProperty +^IncorrectValueType +^IncompletePair + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/properties.xml new file mode 100644 index 0000000000..26070a0dcb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectChecking/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061117125113 + + + + + + + + 1163721073561 + 1444661575495377311 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/MissingClassFactoryMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/MissingClassFactoryMethod/content.txt new file mode 100644 index 0000000000..a9f0f52433 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/MissingClassFactoryMethod/content.txt @@ -0,0 +1,28 @@ + * ${fitLibrary} tries to call a concreteFactory method (here ''concreteClassOfAbstractUser()'') but it doesn't exist +!**< def +!define user (||Bad Payer| +|''name''|Brad Prayer| +) +!define test (!|fitlibrary.specify.domain.MissingClassFactoryMethod| + +|''abstract user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.MissingClassFactoryMethod
+
+ + + +
abstract user + + + + + + +
 Bad Payer
Missing method
nameBrad Prayer
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/MissingClassFactoryMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/MissingClassFactoryMethod/properties.xml new file mode 100644 index 0000000000..113affc4e2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/MissingClassFactoryMethod/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172111 + + + + + + + + 1225513271468 + -3712839244038061232 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NoTypeSpecified/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NoTypeSpecified/content.txt new file mode 100644 index 0000000000..def49bd0fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NoTypeSpecified/content.txt @@ -0,0 +1,43 @@ + * No type is specified in the nested table + * As the property type is an abstract class, no object can be created +!**< def +!define user (|''name''|Brad Prayer| +) +!define test (!|fitlibrary.specify.domain.NotConcrete| + +|''abstract user''|${user}| + +|''checks''| + +|''abstract user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.NotConcrete
+
+ + + +
abstract user + + + +
nameBrad Prayer
+
Class is abstract
+
+ + +
checks
+
+ + + +
abstract user + + + +
nameBrad Prayer
+ expected
actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NoTypeSpecified/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NoTypeSpecified/properties.xml new file mode 100644 index 0000000000..9be9dc349c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NoTypeSpecified/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225515088578 + -4042265653191751876 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NullReturnedFromClassFactoryMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NullReturnedFromClassFactoryMethod/content.txt new file mode 100644 index 0000000000..09304c1784 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NullReturnedFromClassFactoryMethod/content.txt @@ -0,0 +1,29 @@ + * The Class returned by the concreteFactory method has to be a subclass of the required type + * Here we get back a String, which is not a subclass of ''!-AbstractUser-!'' +!**< def +!define user (||Null| +|''name''|Brad Prayer| +) +!define test (!|fitlibrary.specify.domain.BadClassFromClassFactoryMethod| + +|''abstract user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.BadClassFromClassFactoryMethod
+
+ + + +
abstract user + + + + + + +
 Null
Unexpected null from method for type Null
nameBrad Prayer
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NullReturnedFromClassFactoryMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NullReturnedFromClassFactoryMethod/properties.xml new file mode 100644 index 0000000000..93b716fde8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/NullReturnedFromClassFactoryMethod/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172133 + + + + + + + + 1225513293718 + 1255646382376968791 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassConstructorIsNotValid/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassConstructorIsNotValid/content.txt new file mode 100644 index 0000000000..c1f507e199 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassConstructorIsNotValid/content.txt @@ -0,0 +1,51 @@ + * The Class returned by the concreteFactory method has to have a nullary constructor so that an object can be created + * But that constructor can be non-public +!**< def +!define user ( +||No Nullary| +|''name''|Brad Prayer| + +) +!define user2 ( +||Private| +|''name''|Brad Prayer| + +) +!define test (!|fitlibrary.specify.domain.BadClassFromClassFactoryMethod| + +|''abstract user''|${user}| + +|''abstract user''|${user2}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.BadClassFromClassFactoryMethod
+
+ + + +
abstract user
+ + + + + + +
 No Nullary
Class has no default constructor
nameBrad Prayer
+
+
+ + + +
abstract user
+ + + + + + +
 Private
nameBrad Prayer
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassConstructorIsNotValid/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassConstructorIsNotValid/properties.xml new file mode 100644 index 0000000000..eb9ddfb6a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassConstructorIsNotValid/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172145 + + + + + + + + 1225513305515 + -7185841278070888928 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassIsNotSubType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassIsNotSubType/content.txt new file mode 100644 index 0000000000..a7d2fc8086 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassIsNotSubType/content.txt @@ -0,0 +1,29 @@ + * The Class returned by the concreteFactory method has to be a subclass of the required type + * Here we get back a String, which is not a subclass of ''!-AbstractUser-!'' +!**< def +!define user (||String| +|''name''|Brad Prayer| +) +!define test (!|fitlibrary.specify.domain.BadClassFromClassFactoryMethod| + +|''abstract user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.BadClassFromClassFactoryMethod
+
+ + + +
abstract user + + + + + + +
 String
Not a subclass
nameBrad Prayer
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassIsNotSubType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassIsNotSubType/properties.xml new file mode 100644 index 0000000000..7369a57bc5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/ReturnedClassIsNotSubType/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172154 + + + + + + + + 1225513314875 + -3216869021083353257 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/WorkingExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/WorkingExample/content.txt new file mode 100644 index 0000000000..7b9fb0b07c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/WorkingExample/content.txt @@ -0,0 +1,51 @@ + * If the type of a property is an interface or an abstract class, ${fitLibrary} can't construct an object of that type + * So the table for the object needs to specify the specific type. This is done with an empty property name. In the example below, the type is expressed as "Bad Payer" + * ${fitLibrary} calls a concreteFactory method (here ''concreteClassOfAbstractUser()'') with the type as a String argument (here "Bad Payer") and gets back the Class for the concrete object that is then created +!**< def +!define user (||Bad Payer| +|''name''|Brad Prayer| +) +!define test (!|fitlibrary.specify.domain.NotConcrete| + +|''abstract user''|${user}| + +|''checks''| + +|''abstract user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.NotConcrete
+
+ + + +
abstract user + + + + + + +
 Bad Payer
nameBrad Prayer
+
+
+ + +
checks
+
+ + + +
abstract user + + + + + + +
 Bad Payer
nameBrad Prayer
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/WorkingExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/WorkingExample/properties.xml new file mode 100644 index 0000000000..8197b3d9cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/WorkingExample/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172204 + + + + + + + + 1225513324609 + -4244550362924927906 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/content.txt new file mode 100644 index 0000000000..e8eb07bc57 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/content.txt @@ -0,0 +1,6 @@ +^WorkingExample - an example that shows how the concrete class of an object is specified in the table +^NoTypeSpecified - the type needs to be specified +^MissingClassFactoryMethod - the method called to get the Class is missing +^ReturnedClassConstructorIsNotValid - the returned class cannot be instantiated +^ReturnedClassIsNotSubType - the returned class is not a subclass of the property type +^NullReturnedFromClassFactoryMethod diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/properties.xml new file mode 100644 index 0000000000..247f55edd9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/AbstractClassType/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060921180544 + + + + + + + + 1158818744455 + 1777512567932709731 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/BadConstructors/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/BadConstructors/content.txt new file mode 100644 index 0000000000..9edf0f00bc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/BadConstructors/content.txt @@ -0,0 +1,44 @@ +!**< def +!define manager (|''name''|Yellow| +) +!define department (|''city''|Auckland| +) +!define employee (|''name''|Red| +|''manager''|${manager}| +|''department''|${department}| +) +!define test (!|fitlibrary.specify.domain.BadConstructorsInNestedObjects| + +|''employee''|${employee}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.BadConstructorsInNestedObjects
+
+ + + +
employee + + + + + + + + + +
nameRed
manager + + + +
nameYellow

Class has no default constructor
department + + + +
cityAuckland
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/BadConstructors/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/BadConstructors/properties.xml new file mode 100644 index 0000000000..fb30b880b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/BadConstructors/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172214 + + + + + + + + 1225513334000 + -7097016539190241731 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/EmptyCellIsNull/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/EmptyCellIsNull/content.txt new file mode 100644 index 0000000000..9805cc64a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/EmptyCellIsNull/content.txt @@ -0,0 +1,51 @@ + * An empty cell for a domain object means that there isn't one (ie, null) +!**< def +!define user ( +|''name''|Brad Split| +|''manager''|| + +) +!define test (!|fitlibrary.specify.domain.EmptyCellIsNull| + +|''user''|${user}| + +|''checks''| + +|''user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.EmptyCellIsNull
+
+ + + +
user
+ + + + + + +
nameBrad Split
manager 
+
+
+ + +
checks
+
+ + + +
user
+ + + + + + +
nameBrad Split
manager 
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/EmptyCellIsNull/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/EmptyCellIsNull/properties.xml new file mode 100644 index 0000000000..aef426495b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/EmptyCellIsNull/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172226 + + + + + + + + 1225513346265 + -3336723093006739663 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncompletePair/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncompletePair/content.txt new file mode 100644 index 0000000000..10fdd14fa0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncompletePair/content.txt @@ -0,0 +1,27 @@ +!3 There needs to be a value for each named property +!**< def +!define user (|''name''|Poor Payer| +|''owe''| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + + +
user + + + + + +
namePoor Payer
owe
Missing table cells
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncompletePair/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncompletePair/properties.xml new file mode 100644 index 0000000000..eef827c386 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncompletePair/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172235 + + + + + + + + 1225513355750 + 2238196824544851420 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncorrectValueType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncorrectValueType/content.txt new file mode 100644 index 0000000000..0c8f8bd991 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncorrectValueType/content.txt @@ -0,0 +1,28 @@ +!3 Incorrect type of value supplied for a property +!**< def +!define user (|''name''|Poor Payer| +|''owe''|green| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + + +
user + + + + + + +
namePoor Payer
owegreen
Invalid Number
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncorrectValueType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncorrectValueType/properties.xml new file mode 100644 index 0000000000..f747b798d7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/IncorrectValueType/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172247 + + + + + + + + 1225513367796 + -7408978479798163051 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/MissingClassFactoryMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/MissingClassFactoryMethod/content.txt new file mode 100644 index 0000000000..2614eb60b2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/MissingClassFactoryMethod/content.txt @@ -0,0 +1,28 @@ + * ${fitLibrary} tries to call a concreteFactory method (here ''concreteClassOfAbstractUser()'') but it doesn't exist +!**< def +!define user (||Bad Payer| +|''name''|Brad Prayer| +) +!define test (!|fitlibrary.specify.domain.MissingClassFactoryMethodForInterface| + +|''abstract user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.MissingClassFactoryMethodForInterface
+
+ + + +
abstract user + + + + + + +
 Bad Payer
Missing method
nameBrad Prayer
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/MissingClassFactoryMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/MissingClassFactoryMethod/properties.xml new file mode 100644 index 0000000000..d5ad1b17a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/MissingClassFactoryMethod/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172258 + + + + + + + + 1225513378218 + 8564056721076865058 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/NoTypeSpecified/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/NoTypeSpecified/content.txt new file mode 100644 index 0000000000..a67d63a0a5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/NoTypeSpecified/content.txt @@ -0,0 +1,41 @@ + * No type is specified in the nested table + * As the property type is an abstract class, no object can be created +!**< def +!define user (|''name''|Brad Prayer| +) +!define test (!|fitlibrary.specify.domain.PropertyOfInterfaceType| + +|''abstract user''|${user}| + +|''checks''| + +|''abstract user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.PropertyOfInterfaceType
+
+ + + +
abstract user + + + +
nameBrad Prayer

Class is abstract
+
+ + +
checks
+
+ + + +
abstract user + + + +
nameBrad Prayer
expected
actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/NoTypeSpecified/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/NoTypeSpecified/properties.xml new file mode 100644 index 0000000000..49a9bf799e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/NoTypeSpecified/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172311 + + + + + + + + 1225513391578 + 7030603661359237844 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassConstructorIsNotValid/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassConstructorIsNotValid/content.txt new file mode 100644 index 0000000000..85e921564a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassConstructorIsNotValid/content.txt @@ -0,0 +1,52 @@ + * The Class returned by the concreteFactory method has to have a nullary constructor so that an object can be created + * That constructor can be non-public +!**< def +!define user ( +||No Nullary| +|''name''|Brad Prayer| + +) +!define user2 ( +||Private| +|''name''|Brad Prayer| + +) +!define test (!|fitlibrary.specify.domain.BadClassFromClassFactoryMethodForInterface| + +|''abstract user''|${user}| + +|''abstract user''|${user2}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.BadClassFromClassFactoryMethodForInterface
+
+ + + +
abstract user
+ + + + + + +
 No Nullary
Class has no default constructor
nameBrad Prayer
+
+
+ + + +
abstract user
+ + + + + + +
 Private
nameBrad Prayer
+
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassConstructorIsNotValid/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassConstructorIsNotValid/properties.xml new file mode 100644 index 0000000000..dc17a1ef88 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassConstructorIsNotValid/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172322 + + + + + + + + 1225513402796 + -5774436713745328205 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassIsNotSubType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassIsNotSubType/content.txt new file mode 100644 index 0000000000..ff2dd12568 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassIsNotSubType/content.txt @@ -0,0 +1,29 @@ + * The Class returned by the concreteFactory method has to be a subclass of the required type + * Here we get back a String, which is not a subclass of ''!-AbstractUser-!'' +!**< def +!define user (||String| +|''name''|Brad Prayer| +) +!define test (!|fitlibrary.specify.domain.BadClassFromClassFactoryMethodForInterface| + +|''abstract user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.BadClassFromClassFactoryMethodForInterface
+
+ + + +
abstract user + + + + + + +
 String
Not a subclass
nameBrad Prayer
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassIsNotSubType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassIsNotSubType/properties.xml new file mode 100644 index 0000000000..d0bebcdd9b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/ReturnedClassIsNotSubType/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172332 + + + + + + + + 1225513412187 + -5680116017626799171 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/WorkingExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/WorkingExample/content.txt new file mode 100644 index 0000000000..50bc11b789 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/WorkingExample/content.txt @@ -0,0 +1,51 @@ + * If the type of a property is an interface or an abstract class, ${fitLibrary} can't construct an object of that type + * So the table for the object needs to specify the specific type. This is done with an empty property name. In the example below, the type is expressed as "Bad Payer" + * ${fitLibrary} calls a concreteFactory method (here ''concreteClassOfAbstractUser()'') with the type as a String argument (here "Bad Payer") and gets back the Class for the concrete object that is then created +!**< def +!define user (||Bad Payer| +|''name''|Brad Prayer| +) +!define test (!|fitlibrary.specify.domain.PropertyOfInterfaceType| + +|''abstract user''|${user}| + +|''checks''| + +|''abstract user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.PropertyOfInterfaceType
+
+ + + +
abstract user + + + + + + +
 Bad Payer
nameBrad Prayer
+
+
+ + +
checks
+
+ + + +
abstract user + + + + + + +
 Bad Payer
nameBrad Prayer
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/WorkingExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/WorkingExample/properties.xml new file mode 100644 index 0000000000..e8b8ce9e86 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/WorkingExample/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172340 + + + + + + + + 1225513420750 + 6117764644894034841 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/content.txt new file mode 100644 index 0000000000..fe329b2bfb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/content.txt @@ -0,0 +1,5 @@ +^WorkingExample - an example that shows how the concrete class of an object is specified in the table +^NoTypeSpecified - the type needs to be specified +^MissingClassFactoryMethod - the method called to get the Class is missing +^ReturnedClassConstructorIsNotValid - the returned class cannot be instantiated +^ReturnedClassIsNotSubType - the returned class is not a subclass of the property type diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/properties.xml new file mode 100644 index 0000000000..6c71d139b7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/InterfaceType/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060921182526 + + + + + + + + 1158819926314 + -1039241083232355586 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/SetUpSucceeds/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/SetUpSucceeds/content.txt new file mode 100644 index 0000000000..d0f685fd57 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/SetUpSucceeds/content.txt @@ -0,0 +1,115 @@ + * Domain object setup follows exactly the same pattern as with checking + * Progammers: a factory method is required for setting up the embedded ''phone'' list +!**< def +!define account (|''id''|456778| +|''payment history''|poor| +) +!define phones (|''country''|''region''|''number''| +|64|9|7375000| +|64|27|4222112| +) +!define user (|''name''|Bad Payer| +|''owe''|30000.00| +|''phones''|${phones}| +|''account''|${account}| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''user''|${user}| + +|''checks''| + +|''user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + + +
user + + + + + + + + + + + + +
nameBad Payer
owe30000.00
phones + + + + + + + + + + + + +
countryregionnumber
6497375000
64274222112
+
account + + + + + + +
id456778
payment historypoor
+
+
+
+ + +
checks
+
+ + + +
user + + + + + + + + + + + + +
nameBad Payer
owe30000.00
phones + + + + + + + + + + + + +
countryregionnumber
6497375000
64274222112
+
account + + + + + + +
id456778
payment historypoor
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/SetUpSucceeds/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/SetUpSucceeds/properties.xml new file mode 100644 index 0000000000..637f8c01c3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/SetUpSucceeds/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172350 + + + + + + + + 1225513430015 + -3593686101688460577 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/UnknownProperty/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/UnknownProperty/content.txt new file mode 100644 index 0000000000..a53374072d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/UnknownProperty/content.txt @@ -0,0 +1,43 @@ +!3 A named property is not a property of the object concerned +!**< def +!define account (|''ID''|456778| +|''payment history''|poor| +) +!define user (|''name''|Poor Payer| +|''owing''|10000.00| +|''account''|${account}| +) +!define test (!|fitlibrary.specify.domain.UserAdapter| + +|''user''|${user}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.domain.UserAdapter
+
+ + + +
user + + + + + + + + + +
namePoor Payer
owing
Missing
10000.00
account + + + + + + +
ID
Missing
456778
payment historypoor
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/UnknownProperty/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/UnknownProperty/properties.xml new file mode 100644 index 0000000000..1e71182962 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/UnknownProperty/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172402 + + + + + + + + 1225513442453 + 4338308767140979545 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/content.txt new file mode 100644 index 0000000000..06ff31362f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/content.txt @@ -0,0 +1,10 @@ +^SetUpSucceeds +^AbstractClassType +^InterfaceType +^EmptyCellIsNull + +^UnknownProperty +^IncorrectValueType +^IncompletePair +^BadConstructors + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/properties.xml new file mode 100644 index 0000000000..8b5d458ddb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/DomainObjectInjection/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061103214322 + + + + + + + + 1162543402726 + 3013782329824966177 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/content.txt new file mode 100644 index 0000000000..5fd43f9455 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/content.txt @@ -0,0 +1,4 @@ +Tables may check the values of a domain object, as well as create it. + * Such tables refer directly to the properties of the domain object. + * A property may, in turn, be a collection or another domain object. So such tables may include nested tables. +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/properties.xml new file mode 100644 index 0000000000..f72887f19a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainObject/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118160408 + + + + + + + + 1232247848875 + 8781515712382741941 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/AnArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/AnArray/content.txt new file mode 100644 index 0000000000..10f01c74f9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/AnArray/content.txt @@ -0,0 +1,3 @@ +|''colour''|''count''| +|red|101| +|blue|102| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/AnArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/AnArray/properties.xml new file mode 100644 index 0000000000..88adde229c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/AnArray/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137721449379 + 4338092096573891327 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/BlackObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/BlackObject/content.txt new file mode 100644 index 0000000000..f818f2e448 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/BlackObject/content.txt @@ -0,0 +1 @@ +|''colour''|black| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/BlackObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/BlackObject/properties.xml new file mode 100644 index 0000000000..8104e1e746 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/BlackObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137799332250 + 2177796375319787163 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMap/content.txt new file mode 100644 index 0000000000..86a372fcf0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMap/content.txt @@ -0,0 +1,4 @@ +|''key''|''value''| +|red|!include GreenObject| +|white|!include BlackObject| +|blue|!include YellowObject| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMap/properties.xml new file mode 100644 index 0000000000..e648ef920e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMap/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137799321093 + 199105646019364062 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMapValues/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMapValues/content.txt new file mode 100644 index 0000000000..009586c027 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMapValues/content.txt @@ -0,0 +1,4 @@ +|''colour''| +|green| +|black| +|yellow| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMapValues/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMapValues/properties.xml new file mode 100644 index 0000000000..7bda715404 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColorMapValues/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1140387677191 + 7949244108340192181 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourList/content.txt new file mode 100644 index 0000000000..8bda6e5eb2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourList/content.txt @@ -0,0 +1,4 @@ +|''colour''| +|blue| +|red| +|green| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourList/properties.xml new file mode 100644 index 0000000000..703060579e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourList/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137721566297 + -1663045918540418480 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSet/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSet/content.txt new file mode 100644 index 0000000000..cf52afd7c4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSet/content.txt @@ -0,0 +1,4 @@ +|''colour''| +|green| +|red| +|white| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSet/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSet/properties.xml new file mode 100644 index 0000000000..c1d75214ca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSet/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137721625612 + 693213905635863430 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSetUp/content.txt new file mode 100644 index 0000000000..6c20e94b48 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSetUp/content.txt @@ -0,0 +1 @@ +|''colour''|purple| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSetUp/properties.xml new file mode 100644 index 0000000000..5da10087d2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourSetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137722878333 + 8289689912535980410 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourTwo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourTwo/content.txt new file mode 100644 index 0000000000..394aec9973 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourTwo/content.txt @@ -0,0 +1,3 @@ +|''colour''|purple| +|''count''|200| +|''sub colours''|!include SubColours| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourTwo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourTwo/properties.xml new file mode 100644 index 0000000000..88cc1c2755 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ColourTwo/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1138148863805 + -2117854345156844103 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/GreenObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/GreenObject/content.txt new file mode 100644 index 0000000000..ab8d25d35a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/GreenObject/content.txt @@ -0,0 +1 @@ +|''colour''|green| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/GreenObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/GreenObject/properties.xml new file mode 100644 index 0000000000..105026a109 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/GreenObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137799253765 + 1541396963445971307 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray/content.txt new file mode 100644 index 0000000000..cb13d70072 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray/content.txt @@ -0,0 +1,3 @@ +|1| +|2| +|3| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray/properties.xml new file mode 100644 index 0000000000..fb44fe3ca2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137809533718 + -7247060596283292575 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray2/content.txt new file mode 100644 index 0000000000..a3cf12790d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray2/content.txt @@ -0,0 +1,2 @@ +|!include .FitLibrary.SpecifiCations.DomainWorkflow.Phase1SetUp.IntArray| +|!include .FitLibrary.SpecifiCations.DomainWorkflow.Phase1SetUp.IntArray| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray2/properties.xml new file mode 100644 index 0000000000..4457c2400b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/IntArray2/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137983836605 + -7818675197452331202 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ListColourList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ListColourList/content.txt new file mode 100644 index 0000000000..1d419df08a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ListColourList/content.txt @@ -0,0 +1 @@ +|!include ColourList| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ListColourList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ListColourList/properties.xml new file mode 100644 index 0000000000..5e71b6bbef --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ListColourList/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137984327611 + 7095790099670634621 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/MixedCollections/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/MixedCollections/content.txt new file mode 100644 index 0000000000..692db3f78c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/MixedCollections/content.txt @@ -0,0 +1,8 @@ + * Set> +|''a set of lists''|!include ListColourList| + * List> +|''a list of sets''|!include ListColourList| + * Empty Set> +|''an empty set of lists''|| + * Empty List> +|''an empty list of sets''|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/MixedCollections/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/MixedCollections/properties.xml new file mode 100644 index 0000000000..363874f10d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/MixedCollections/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1138147391818 + -6530720904142526333 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SimpleColorMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SimpleColorMap/content.txt new file mode 100644 index 0000000000..a642af580d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SimpleColorMap/content.txt @@ -0,0 +1,4 @@ +|''key''|''value''| +|red|green| +|white|black| +|blue|yellow| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SimpleColorMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SimpleColorMap/properties.xml new file mode 100644 index 0000000000..3fadf9ebb6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SimpleColorMap/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137799672921 + 7353568318333890031 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeArrays/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeArrays/content.txt new file mode 100644 index 0000000000..7bb59163e3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeArrays/content.txt @@ -0,0 +1,6 @@ + * Colour[] +|''an array''|!include .FitLibrary.SpecifiCations.DomainWorkflow.Phase1SetUp.AnArray| + * int[] +|''an int array''|!include .FitLibrary.SpecifiCations.DomainWorkflow.Phase1SetUp.IntArray| + * int[][] +|''a 2D array''|!include IntArray2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeArrays/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeArrays/properties.xml new file mode 100644 index 0000000000..6cee4f1ae9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeArrays/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137983806192 + 8483169022081899338 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeLists/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeLists/content.txt new file mode 100644 index 0000000000..73a206d1ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeLists/content.txt @@ -0,0 +1,4 @@ + * List +|''a list''|!include ColourList| + * List> +|''a list of lists''|!include ListColourList| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeLists/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeLists/properties.xml new file mode 100644 index 0000000000..a8b97b99e3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeLists/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137984311328 + -514747439011148919 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeObject/content.txt new file mode 100644 index 0000000000..e4a25c7242 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeObject/content.txt @@ -0,0 +1 @@ +|''colour''|!include ColourTwo| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeObject/properties.xml new file mode 100644 index 0000000000..c00ba9587d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1138148430752 + -1242561685241294245 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeSets/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeSets/content.txt new file mode 100644 index 0000000000..cb0df5e104 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeSets/content.txt @@ -0,0 +1,4 @@ + * Set +|''a set''|!include ColourSet| + * Set> +|''a set of sets''|!include ListColourList| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeSets/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeSets/properties.xml new file mode 100644 index 0000000000..d85625cba0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SomeSets/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1138147019894 + -6059827348945822562 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyArrays/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyArrays/content.txt new file mode 100644 index 0000000000..3928d1a50b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyArrays/content.txt @@ -0,0 +1,26 @@ +!**< def +!define intArray (|10| +|20| +) +!define colourArray (|''colour''| +|red| +) +!define intArray2 (|${intArray}| +|${intArray}| +) +**! +!|fitlibrary.specify.domain.Array| + * int[]: +|''an int array''|${intArray}| + * Colour[]: +|''a colour array''|${colourArray}| + * int[][] +|''a 2D array''|${intArray2}| +---- +---- + * int[]: +|''an int array''|${intArray}| + * Colour[]: +|''a colour array''|${colourArray}| + * int[][] +|''a 2D array''|${intArray2}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyArrays/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyArrays/properties.xml new file mode 100644 index 0000000000..cdf1afae73 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyArrays/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172415 + + + + + + + + 1225513455421 + -8372358178056533169 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyLists/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyLists/content.txt new file mode 100644 index 0000000000..af61ef810c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyLists/content.txt @@ -0,0 +1,13 @@ +!**< def +!define colours (|''colour''| +|black| +|white| +) +**! +!|fitlibrary.specify.domain.Lists| + * List +|''a colour list''|${colours}| +---- +---- + * List +|''a colour list''|${colours}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyLists/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyLists/properties.xml new file mode 100644 index 0000000000..cfa5ed852a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyLists/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172426 + + + + + + + + 1225513466265 + -5609901114267643652 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyMaps/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyMaps/content.txt new file mode 100644 index 0000000000..f69f687506 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyMaps/content.txt @@ -0,0 +1,11 @@ +!**< def +!define map (|a|b| +|b|c| +) +**! +!|fitlibrary.specify.domain.Maps| + +|''a string map''|${map}| +---- +---- +|''a string map''|${map}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyMaps/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyMaps/properties.xml new file mode 100644 index 0000000000..7c4434a6b2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyMaps/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172439 + + + + + + + + 1225513479046 + 2460164640600480460 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyObject/content.txt new file mode 100644 index 0000000000..78aad844e3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyObject/content.txt @@ -0,0 +1,16 @@ +!**< def +!define account ( +|''id''|1| +|''payment history''|bad payer| +) +!define user ( +|''name''|George| +|''account''|${account}| +) +**! +!|fitlibrary.specify.domain.Objects| + +|''user''|${user}| +---- +---- +|''user''|${user}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyObject/properties.xml new file mode 100644 index 0000000000..b1f425795a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyObject/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172450 + + + + + + + + 1225513490937 + -8780588539033629507 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyPrimitive/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyPrimitive/content.txt new file mode 100644 index 0000000000..05af2e69a5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyPrimitive/content.txt @@ -0,0 +1,18 @@ +!|fitlibrary.specify.domain.Primitives| + +|''an int''|303| + +|''a double''|4| + +|''a boolean''|false| + +|''a string''|String| +---- +---- +|''an int''|303| + +|''a double''|4| + +|''a boolean''|false| + +|''a string''|String| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyPrimitive/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyPrimitive/properties.xml new file mode 100644 index 0000000000..fe0f5af777 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifyPrimitive/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061111171958 + + + + + + + + 1163218798261 + 6713863992086868342 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifySets/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifySets/content.txt new file mode 100644 index 0000000000..299b1550b6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifySets/content.txt @@ -0,0 +1,12 @@ +!**< def +!define colours (|''colour''| +|orange| +|lime| +) +**! +!|fitlibrary.specify.domain.Sets| + +|''a set of colours''|${colours}| +---- +---- +|''a set of colours''|${colours}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifySets/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifySets/properties.xml new file mode 100644 index 0000000000..d92360f8a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SpecifySets/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172501 + + + + + + + + 1225513501468 + 5514595691873737345 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubColours/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubColours/content.txt new file mode 100644 index 0000000000..d2d2faa994 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubColours/content.txt @@ -0,0 +1,3 @@ +|''colour''|''count''|''sub colours''| +|violet|33|!include SubSubColours| +|orange|44|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubColours/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubColours/properties.xml new file mode 100644 index 0000000000..8b74a7a6b5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubColours/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1138148976397 + 707255986603815402 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubObject/content.txt new file mode 100644 index 0000000000..acff514398 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubObject/content.txt @@ -0,0 +1 @@ +|''subtype property''|!include .FitLibrary.SpecifiCations.DomainWorkflow.Phase1SetUp.SubType| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubObject/properties.xml new file mode 100644 index 0000000000..32bf29729a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1138156658804 + -2379547517660262748 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubSubColours/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubSubColours/content.txt new file mode 100644 index 0000000000..a35490a523 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubSubColours/content.txt @@ -0,0 +1,2 @@ +|''colour''| +|black| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubSubColours/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubSubColours/properties.xml new file mode 100644 index 0000000000..eae8e2dfe7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubSubColours/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1138148990968 + 4188495723031450313 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubType/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubType/content.txt new file mode 100644 index 0000000000..d70dc601a2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubType/content.txt @@ -0,0 +1,2 @@ +|''class''|concrete one| +|''count''|3| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubType/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubType/properties.xml new file mode 100644 index 0000000000..ebd10a64c9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/SubType/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1138427070335 + 2274719000157066062 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ThePoints/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ThePoints/content.txt new file mode 100644 index 0000000000..5c121a279d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ThePoints/content.txt @@ -0,0 +1,2 @@ +|''x''|3| +|''y''|4| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ThePoints/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ThePoints/properties.xml new file mode 100644 index 0000000000..43385665d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/ThePoints/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137722958829 + -3211242172247750333 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/YellowObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/YellowObject/content.txt new file mode 100644 index 0000000000..662391de59 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/YellowObject/content.txt @@ -0,0 +1 @@ +|''colour''|yellow| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/YellowObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/YellowObject/properties.xml new file mode 100644 index 0000000000..07832faf1f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/YellowObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165603 + + + + + + + 1137799345890 + 2382316442754115034 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/content.txt new file mode 100644 index 0000000000..982eee8247 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/content.txt @@ -0,0 +1,7 @@ +^SpecifyPrimitive + +^SpecifyArrays +^SpecifyLists +^SpecifySets +^SpecifyMaps +^SpecifyObject diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/properties.xml new file mode 100644 index 0000000000..0707a18fb3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase1SetUp/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061111165603 + + + + + + + + 1157465811720 + -3443572261650480948 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifyActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifyActions/content.txt new file mode 100644 index 0000000000..8544a6350e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifyActions/content.txt @@ -0,0 +1,7 @@ +!|fitlibrary.specify.domain.PrimitiveActions| + +|''an int''|303| +---- +|''double it''| +---- +|''an int''|606| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifyActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifyActions/properties.xml new file mode 100644 index 0000000000..5d48a94161 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifyActions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061111172942 + + + + + + + + 1163219289517 + -3178748422680632095 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifySpecialActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifySpecialActions/content.txt new file mode 100644 index 0000000000..0d0dbd9592 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifySpecialActions/content.txt @@ -0,0 +1,7 @@ +!|fitlibrary.specify.domain.PrimitiveActions| + +|''an int''|303| +---- +|'''check'''|''double it''|606| +---- +|''an int''|606| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifySpecialActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifySpecialActions/properties.xml new file mode 100644 index 0000000000..38d325dc03 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/SpecifySpecialActions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061111173048 + + + + + + + + 1163219426564 + 5064945865803523079 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/content.txt new file mode 100644 index 0000000000..b7938fcc9d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/content.txt @@ -0,0 +1,5 @@ +!3 All the usual workflow actions can be carried out in the ${actions} +Here's a sample of them. See .FitLibrary.SpecifiCations.DoWorkflow for further details of actions + +^SpecifyActions +^SpecifySpecialActions diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/properties.xml new file mode 100644 index 0000000000..809e6f56ef --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase2Actions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061111173203 + + + + + + + + 1163219506800 + 573866192960905973 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/BlackObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/BlackObject/content.txt new file mode 100644 index 0000000000..f818f2e448 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/BlackObject/content.txt @@ -0,0 +1 @@ +|''colour''|black| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/BlackObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/BlackObject/properties.xml new file mode 100644 index 0000000000..eeca97d3d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/BlackObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137799332250 + 2177796375319787163 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColorMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColorMap/content.txt new file mode 100644 index 0000000000..86a372fcf0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColorMap/content.txt @@ -0,0 +1,4 @@ +|''key''|''value''| +|red|!include GreenObject| +|white|!include BlackObject| +|blue|!include YellowObject| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColorMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColorMap/properties.xml new file mode 100644 index 0000000000..1b1607ddbc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColorMap/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137799321093 + 199105646019364062 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourArray/content.txt new file mode 100644 index 0000000000..8f12519382 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourArray/content.txt @@ -0,0 +1,3 @@ +|''colour''|''count''| +|red|3| +|green|4| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourArray/properties.xml new file mode 100644 index 0000000000..03f72b226b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourArray/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1138589701371 + -6970954990332876444 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourObject/content.txt new file mode 100644 index 0000000000..c5f46a86a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourObject/content.txt @@ -0,0 +1,3 @@ +|''colour''|yellow| +|''count''|200| +|''point''|!include ThePoints| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourObject/properties.xml new file mode 100644 index 0000000000..24cc94d52c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137722633061 + 6459561140365561563 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourSet/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourSet/content.txt new file mode 100644 index 0000000000..0e0a427199 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourSet/content.txt @@ -0,0 +1,3 @@ +|''colour''| +|green| +|red| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourSet/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourSet/properties.xml new file mode 100644 index 0000000000..0dc5fbb2c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ColourSet/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137722273374 + -6194612289936138401 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GenericArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GenericArray/content.txt new file mode 100644 index 0000000000..3f951781df --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GenericArray/content.txt @@ -0,0 +1,2 @@ +|!include ColourArray| +|!include ColourArray| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GenericArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GenericArray/properties.xml new file mode 100644 index 0000000000..67087283d6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GenericArray/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137910556390 + -2527602910441217724 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GreenObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GreenObject/content.txt new file mode 100644 index 0000000000..ab8d25d35a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GreenObject/content.txt @@ -0,0 +1 @@ +|''colour''|green| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GreenObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GreenObject/properties.xml new file mode 100644 index 0000000000..913ed8e773 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/GreenObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137799253765 + 1541396963445971307 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/InnerColours/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/InnerColours/content.txt new file mode 100644 index 0000000000..81e4c3ebe3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/InnerColours/content.txt @@ -0,0 +1,3 @@ +|''colour''| +|red| +|green| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/InnerColours/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/InnerColours/properties.xml new file mode 100644 index 0000000000..bf82f8ded2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/InnerColours/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137719816311 + 1090111592630874944 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray/content.txt new file mode 100644 index 0000000000..7f79d6ca2d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray/content.txt @@ -0,0 +1,3 @@ +|1| +|2| +|4| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray/properties.xml new file mode 100644 index 0000000000..62a1df9a4a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137806382500 + 3144286598571750273 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray2/content.txt new file mode 100644 index 0000000000..a031081193 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray2/content.txt @@ -0,0 +1,2 @@ +|!include IntArray| +|!include IntArray| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray2/properties.xml new file mode 100644 index 0000000000..30f3e2b500 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/IntArray2/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137894750015 + 7270652436105786811 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ListColourList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ListColourList/content.txt new file mode 100644 index 0000000000..af0245f64a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ListColourList/content.txt @@ -0,0 +1 @@ +|!include ColourList| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ListColourList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ListColourList/properties.xml new file mode 100644 index 0000000000..dc925c662a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ListColourList/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137813486140 + 2428753506036212399 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SimpleColorMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SimpleColorMap/content.txt new file mode 100644 index 0000000000..a642af580d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SimpleColorMap/content.txt @@ -0,0 +1,4 @@ +|''key''|''value''| +|red|green| +|white|black| +|blue|yellow| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SimpleColorMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SimpleColorMap/properties.xml new file mode 100644 index 0000000000..b8cc40cda4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SimpleColorMap/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137799672921 + 7353568318333890031 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyArrays/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyArrays/content.txt new file mode 100644 index 0000000000..1840c40bda --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyArrays/content.txt @@ -0,0 +1,22 @@ +!**< def +!define intArray (|1| +|2| +|4| +) +!define colourArray (|''colour''| +|red| +|green| +) +!define intArray2 (|${intArray}| +|${intArray}| +) +**! +!|fitlibrary.specify.domain.Array| +---- +---- + * int[]: +|''an int array''|${intArray}| + * Colour[]: +|''a colour array''|${colourArray}| + * int[][] +|''a 2D array''|${intArray2}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyArrays/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyArrays/properties.xml new file mode 100644 index 0000000000..f622d4a806 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyArrays/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172511 + + + + + + + + 1225513511593 + 717468195341521522 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyLists/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyLists/content.txt new file mode 100644 index 0000000000..85ab4834d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyLists/content.txt @@ -0,0 +1,14 @@ +!**< def +!define colours (|''colour''| +|red| +|green| +) +!define listOfColours (|${colours}| +) +**! +!|fitlibrary.specify.domain.Lists| +---- +---- + * List +|''a colour list''|${colours}| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyLists/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyLists/properties.xml new file mode 100644 index 0000000000..ffff737d82 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyLists/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172521 + + + + + + + + 1225513521234 + -81495154211605774 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyMaps/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyMaps/content.txt new file mode 100644 index 0000000000..e02d86ccba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyMaps/content.txt @@ -0,0 +1,9 @@ +!**< def +!define map (|red|green| +|yellow|blue| +) +**! +!|fitlibrary.specify.domain.Maps| +---- +---- +|''a colour map''|${map}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyMaps/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyMaps/properties.xml new file mode 100644 index 0000000000..a9dfb1e41d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyMaps/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172531 + + + + + + + + 1225513531250 + 6059176886796564963 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyObject/content.txt new file mode 100644 index 0000000000..3cdd25714e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyObject/content.txt @@ -0,0 +1,13 @@ +!**< def +!define account (|''id''|2| +|''payment history''|good payer| +) +!define user (|''name''|Paul| +|''account''|${account}| +) +**! +!|fitlibrary.specify.domain.Objects| +---- +---- +|''user''|${user}| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyObject/properties.xml new file mode 100644 index 0000000000..9ec8afb5c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyObject/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172540 + + + + + + + + 1225513540906 + -438792329120463826 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyPrimitive/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyPrimitive/content.txt new file mode 100644 index 0000000000..0065049461 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyPrimitive/content.txt @@ -0,0 +1,10 @@ +!|fitlibrary.specify.domain.Primitives| +---- +---- +|''an int''|3| + +|''a double''|3.14159| + +|''a boolean''|true| + +|''a string''|my value| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyPrimitive/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyPrimitive/properties.xml new file mode 100644 index 0000000000..2f68f69951 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifyPrimitive/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061111170129 + + + + + + + + 1163217689216 + -8654030133204883535 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifySets/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifySets/content.txt new file mode 100644 index 0000000000..1a6581bbdd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifySets/content.txt @@ -0,0 +1,10 @@ +!**< def +!define colours (|''colour''| +|red| +|green| +) +**! +!|fitlibrary.specify.domain.Sets| +---- +---- +|''a set of colours''|${colours}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifySets/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifySets/properties.xml new file mode 100644 index 0000000000..fcb40a15c0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/SpecifySets/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172550 + + + + + + + + 1225513550015 + -8886246324863779521 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ThePoints/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ThePoints/content.txt new file mode 100644 index 0000000000..5c121a279d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ThePoints/content.txt @@ -0,0 +1,2 @@ +|''x''|3| +|''y''|4| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ThePoints/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ThePoints/properties.xml new file mode 100644 index 0000000000..fcba99a07f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/ThePoints/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137722648403 + 1099427208213128249 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/YellowObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/YellowObject/content.txt new file mode 100644 index 0000000000..662391de59 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/YellowObject/content.txt @@ -0,0 +1 @@ +|''colour''|yellow| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/YellowObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/YellowObject/properties.xml new file mode 100644 index 0000000000..20e9c4d5d4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/YellowObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061111165759 + + + + + + + 1137799345890 + 2382316442754115034 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/content.txt new file mode 100644 index 0000000000..dc8a912f00 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/content.txt @@ -0,0 +1,11 @@ +!2 Checking only +So the fixture moves immediately to a ''checking'' state and uses one of the list fixtures or domain object fixture to check each of the tables + +^SpecifyPrimitive + +^SpecifyArrays +^SpecifyLists +^SpecifySets +^SpecifyMaps + +^SpecifyObject diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/properties.xml new file mode 100644 index 0000000000..c4996964a8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/Phase3Checking/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061111165758 + + + + + + + + 1157463612208 + -2847161414766042969 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/content.txt new file mode 100644 index 0000000000..babf144938 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/content.txt @@ -0,0 +1,8 @@ +!2 ''!-DomainFixture-!'' is a new type of fixture + * It aims to provide a more direct way of expressing the business domain, without the need for fixtures that mediate/map between the storytests and the SUT + * It operates on the SUT as a bean object with properties, methods, etc + * So it can handle checking, setup, etc without mentioning other fixtures + * It has 3 phases: ${setup}, ${actions}, and ${checks}. In each state, it interprets tables differently + * It is a subclass of ''!-DoFixture-!'' and inherits all of the workflow processing from that + +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/properties.xml new file mode 100644 index 0000000000..2906f69de0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DomainWorkflow/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118160732 + + + + + + + + 1232248052437 + -5988181413961706575 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/DefineDynamicVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/DefineDynamicVariable/content.txt new file mode 100644 index 0000000000..e2d0a00aa0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/DefineDynamicVariable/content.txt @@ -0,0 +1,23 @@ +The value of a ''dynamic variable'' can be '''set''' at any point. Eg, ''prop.a'' is set to the text "A": + +|'''set'''|prop.a|''to''|A| + +To use the value of a ''dynamic variable'', use the @{} form. + +Eg, here we use the action ''get'' to access the literal text "A" and compare it to the value: + +|''get''|A|'''is'''|@{prop.a}| + +Here we reverse things and use the action ''get'' to access the value of the ''dynamic variable'': + +|''get''|@{prop.a}|'''is'''|A| + +|''get''|@{prop.a}|'''is'''|@{prop.a}| + +A cell may contain several ''dynamic variables along with text: + +|'''set'''|prop.b|''to''|B| + +|''get''|--@{prop.a}++@{prop.b}|'''is'''|--A++B| + +|''get''|@{prop.b}+@{prop.a}|'''is'''|B+A| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/DefineDynamicVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/DefineDynamicVariable/properties.xml new file mode 100644 index 0000000000..4db646a6a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/DefineDynamicVariable/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1225523746218 + -2504923023021146040 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/GetDynamicVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/GetDynamicVariable/content.txt new file mode 100644 index 0000000000..ad8412641d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/GetDynamicVariable/content.txt @@ -0,0 +1,11 @@ +!|fitlibrary.DoFixture| + +|'''set'''|prop|''to''|Value| +|'''set'''|colour|''to''|red| +|'''set'''|both|''to''|@{prop}/@{colour}| + +|show|''get''|@{prop} @{colour}| +|show|''get''|@{both}| + +|''get''|@{prop} @{colour}|'''is'''| Value red | + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/GetDynamicVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/GetDynamicVariable/properties.xml new file mode 100644 index 0000000000..b2c73920b9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/GetDynamicVariable/properties.xml @@ -0,0 +1,16 @@ + + + + + 20081101201609 + + + + + + + + + 1225523769234 + -1370075790640211926 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/HowTagsAreHandled/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/HowTagsAreHandled/content.txt new file mode 100644 index 0000000000..3f8f03a8e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/HowTagsAreHandled/content.txt @@ -0,0 +1,21 @@ +When a ''dynamic variable'' value contains html or xml tags, they are treated in a special way. + +|'''set'''|xml|''to''|A| + +|''get''|A|'''is'''|@{xml}| + +|'''show'''|''get''|(@{xml})| + +|'''show with tags'''|''get''|@{xml}| + +The result is the same when the same text comes from an action: + +!|fitlibrary.specify.dynamicVariable.Xml| + +|'''set'''|xml2|''some xml''| + +|'''show'''|''get''|(@{xml2})| + +|'''show with tags'''|''get''|@{xml2}| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/HowTagsAreHandled/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/HowTagsAreHandled/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/HowTagsAreHandled/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/MissingDynamicVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/MissingDynamicVariable/content.txt new file mode 100644 index 0000000000..34eadafc39 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/MissingDynamicVariable/content.txt @@ -0,0 +1,3 @@ +!|fitlibrary.DoFixture| + +|''get''|@{prop}|'''is'''|@{prop}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/MissingDynamicVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/MissingDynamicVariable/properties.xml new file mode 100644 index 0000000000..fad58585a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/MissingDynamicVariable/properties.xml @@ -0,0 +1,16 @@ + + + + + 20081101201627 + + + + + + + + + 1225523787781 + 6912700522509323100 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/NestedTablesArePermitedAsTheValueOfDynamicVariables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/NestedTablesArePermitedAsTheValueOfDynamicVariables/content.txt new file mode 100644 index 0000000000..69f0c2652e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/NestedTablesArePermitedAsTheValueOfDynamicVariables/content.txt @@ -0,0 +1,14 @@ +!**< def +!define t {|''a''|0| +|''b''|2| +} +**! + +|set|x|to|${t}| + +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|object|'''is'''|${t}| + + +|object|''is''|@{x}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/NestedTablesArePermitedAsTheValueOfDynamicVariables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/NestedTablesArePermitedAsTheValueOfDynamicVariables/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/NestedTablesArePermitedAsTheValueOfDynamicVariables/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/DefinedActions/content.txt new file mode 100644 index 0000000000..f95809a701 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/DefinedActions/content.txt @@ -0,0 +1,7 @@ +|''random variable values''| + +|''select''|title|''randomly''| +|Mr| +|Mrs| + +|show|get|@{title}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/DefinedActions/properties.xml new file mode 100644 index 0000000000..0a403949f6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/DefinedActions/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090826152139 + true + true + true + true + true + true + 1251244956465 + -8344126729994812885 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/content.txt new file mode 100644 index 0000000000..6986459d73 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/content.txt @@ -0,0 +1,22 @@ +!3 A Dynamic Variable can be set and used in storytests +!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|'''set'''|D|''to''|d| + +|''select''|colour|''randomly''| +|green| +|re@{D}| +|yellow| +|$white| + +|''get''|@{colour}|'''is'''|red| +|''get''|@{colour}|'''is'''|green| +|''get''|@{colour}|'''is'''|yellow| +|''get''|@{colour}|'''is'''|$white| + +|''expected test results''|1|''right''|3|''wrong''|0|''ignored''|0|''exceptions''| + +|''select''|colour|''randomly''| + +|''expected test results''|1|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/properties.xml new file mode 100644 index 0000000000..6dbbfd9a80 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelection/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1251236052176 + 3106957363325356860 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelectionWithDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelectionWithDefinedAction/content.txt new file mode 100644 index 0000000000..eddf0669d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelectionWithDefinedAction/content.txt @@ -0,0 +1,8 @@ +!3 A Dynamic Variable can be set and used in storytests +!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|''define actions at''|.FitLibrary.SpecifiCations.DynamicVariables.RandomSelection.DefinedActions| + +|''random variable values''| + +|'''show'''|''get''|@{register.title}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelectionWithDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelectionWithDefinedAction/properties.xml new file mode 100644 index 0000000000..29dd81a77a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RandomSelectionWithDefinedAction/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090826120216 + + + + + + + + + 1251244936902 + -8789802224947745734 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/ExistingPropertyFile/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/ExistingPropertyFile/content.txt new file mode 100644 index 0000000000..9ee8be7ea8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/ExistingPropertyFile/content.txt @@ -0,0 +1,130 @@ +If we try recording to a property file that already exists, we make use of the properties already defined in it. However, any undefined properties that are used in the storytest (with '''is''', '''check''', and '''becomes''') are added to the property file. +!**< def +!define suite1 (!|fitlibrary.DoFixture| + +|''remove file''|testPropertyFile.txt| + +|''record to file''|testPropertyFile.txt| + +|''get''|a-value|'''is'''|@{a}| + +|''get''|@{a}|'''is'''|a-value| + +|'''check'''|''get''|@{c}|c-value| +) +!define suite2 (!|fitlibrary.DoFixture| + +|''record to file''|testPropertyFile.txt| + +|'''check'''|''get''|c-value|@{c}| + +|''get''|@{a}|'''is'''|a-value| + +|'''check'''|''get''|@{c}|c-value| +) +!define suite3 (!|fitlibrary.DoFixture| + +|''add dynamic variables from file''|testPropertyFile.txt| + +|''get''|@{a}|'''is'''|a-value| + +|'''check'''|''get''|@{c}|c-value| + +|''remove file''|testPropertyFile.txt| +) +**! + +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|${suite1}|!- + + +
fitlibrary.DoFixture
+
+ + + +
remove filetestPropertyFile.txt
+
+ + + +
record to filetestPropertyFile.txt
+
+ + + + + +
geta-valueis@{a}
a-value actual
+
+ + + + + +
geta-valueisa-value
+
+ + + + + +
checkget@{c}c-value expected
@{c} actual
-!| +|${suite2}|!- + + +
fitlibrary.DoFixture
+
+ + + +
record to filetestPropertyFile.txt
+
+ + + + + +
checkgetc-value@{c}
c-value actual
+
+ + + + + +
geta-valueisa-value
+
+ + + + + +
checkgetc-valuec-value
-!| +|${suite3}|!- + + +
fitlibrary.DoFixture
+
+ + + +
add dynamic variables from filetestPropertyFile.txt
+
+ + + + + +
geta-valueisa-value
+
+ + + + + +
checkgetc-valuec-value
+
+ + + +
remove filetestPropertyFile.txt
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/ExistingPropertyFile/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/ExistingPropertyFile/properties.xml new file mode 100644 index 0000000000..422d11e6fc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/ExistingPropertyFile/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1232237171953 + -7660379945494542986 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/FileProblem/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/FileProblem/content.txt new file mode 100644 index 0000000000..3c8630be21 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/FileProblem/content.txt @@ -0,0 +1,32 @@ +!**< def +!define test (|''record to file''|pleaseThrowAnExceptionOnThisFile| + +|''get''|a-value|'''is'''|@{a}| + +|''get''|@{a}|'''is'''|a-value| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + +
record to filepleaseThrowAnExceptionOnThisFile
+
+ + + + + +
geta-valueis@{a}
a-value actual
+
+ + + + + +
geta-valueisa-value
+ + + +
note Problem on writing property file:
Some file exception
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/FileProblem/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/FileProblem/properties.xml new file mode 100644 index 0000000000..d0cc0c89e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/FileProblem/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1232235498875 + -8784086397936118822 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NewPropertyFile/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NewPropertyFile/content.txt new file mode 100644 index 0000000000..b3e61a6948 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NewPropertyFile/content.txt @@ -0,0 +1,114 @@ +!**< def +!define suite1 (|''remove file''|testPropertyFile.txt| + +|''record to file''|testPropertyFile.txt| + +|''get''|a-value|'''is'''|@{a}| + +|''get''|b-value|'''becomes'''|@{b}| + +|'''check'''|''get''|c-value|@{c}| + +|''get''|@{a}|'''is'''|a-value| + +|''get''|@{b}|'''becomes'''|b-value| + +|'''check'''|''get''|@{c}|c-value| +) +!define suite2 (|''add dynamic variables from file''|testPropertyFile.txt| + +|''get''|@{a}|'''is'''|a-value| + +|''get''|@{b}|'''becomes'''|b-value| + +|'''check'''|''get''|@{c}|c-value| + +|''remove file''|testPropertyFile.txt| +) +**! + + +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|${suite1}|!- + + + +
remove filetestPropertyFile.txt
+
+ + + +
record to filetestPropertyFile.txt
+
+ + + + + +
geta-valueis@{a}
a-value actual
+
+ + + + + +
getb-valuebecomes@{b}
b-value actual
+
+ + + + + +
checkgetc-value@{c}
c-value actual
+
+ + + + + +
geta-valueisa-value
+
+ + + + + +
getb-valuebecomesb-value
+
+ + + + + +
checkgetc-valuec-value
-!| +|${suite2}|!- + + + +
add dynamic variables from filetestPropertyFile.txt
+
+ + + + + +
geta-valueisa-value
+
+ + + + + +
getb-valuebecomesb-value
+
+ + + + + +
checkgetc-valuec-value
+
+ + + +
remove filetestPropertyFile.txt
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NewPropertyFile/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NewPropertyFile/properties.xml new file mode 100644 index 0000000000..c65494c23d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NewPropertyFile/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1232164887156 + 1443883455641971622 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NotJustDynamicVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NotJustDynamicVariable/content.txt new file mode 100644 index 0000000000..2436d76922 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NotJustDynamicVariable/content.txt @@ -0,0 +1,113 @@ +!**< def +!define suite1 (|''remove file''|testPropertyFile.txt| + +|''record to file''|testPropertyFile.txt| + +|''get''|a-value|'''is'''|@{a}ue| + +|''get''|b-value|'''becomes'''|b-@{b}| + +|'''check'''|''get''|c-value|@{a}v@{c}| + +|''get''|@{a}|'''is'''|@{a}| + +|''get''|@{b}|'''becomes'''|@{b}| + +|'''check'''|''get''|@{c}|@{c}| +) +!define suite2 (|''add dynamic variables from file''|testPropertyFile.txt| + +|''get''|@{a}|'''is'''|@{a}| + +|''get''|@{b}|'''becomes'''|@{b}| + +|'''check'''|''get''|@{c}|@{c}| + +|''remove file''|testPropertyFile.txt| +) +**! + +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|${suite1}|!- + + + +
remove filetestPropertyFile.txt
+
+ + + +
record to filetestPropertyFile.txt
+
+ + + + + +
geta-valueis@{a}ue expected
a-value actual
+
+ + + + + +
getb-valuebecomesb-@{b} expected
b-value actual
+
+ + + + + +
checkgetc-value@{a}v@{c} expected
c-value actual
+
+ + + + + +
get@{a}is@{a}
@{a} actual
+
+ + + + + +
get@{b}becomes@{b}
@{b} actual
+
+ + + + + +
checkget@{c}@{c}
@{c} actual
-!| +|${suite2}|!- + + + +
add dynamic variables from filetestPropertyFile.txt
+
+ + + + + +
get@{a}is@{a}
@{a} actual
+
+ + + + + +
get@{b}becomes@{b}
@{b} actual
+
+ + + + + +
checkget@{c}@{c}
@{c} actual
+
+ + + +
remove filetestPropertyFile.txt
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NotJustDynamicVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NotJustDynamicVariable/properties.xml new file mode 100644 index 0000000000..dfca6ae5af --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/NotJustDynamicVariable/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1232246227500 + 7860846994236682846 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/content.txt new file mode 100644 index 0000000000..56ea4a6604 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/content.txt @@ -0,0 +1,18 @@ +${fitLibrary} provides a limited means of recording storytests: those in which dynamic variables are used. + +A single unbound dynamic variable that is used as the expected value in '''is''', '''becomes''' or '''check''' can be recorded. This depends on a recording having been started, in which the property file name is specified. + +If a property file defines a subset of the values, any unbound ones will be added. + +|^NewPropertyFile|''Any such unbound dynamic variables are written to a new file.''| +|^ExistingPropertyFile|''Any such unbound dynamic variables are written to an existing file.''| +|^NotJustDynamicVariable|''Recording only works with a single dynamic variable, with no extra text.''| +|^FileProblem|''There is a problem in writing the property file at the end of a storytest.''| + +It would be possible to generalise the binding process so that it included expected values such as the following: + * AB@{cd}CD + * @{a}/@{b} + * @{a}+@{a} +As well as bindings for '''matches'''. + +Let Rick know if you have a need for this generality. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/properties.xml new file mode 100644 index 0000000000..c3193a7564 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RecordPropertyFile/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1232247954437 + -878873759433080337 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RedefineDynamicVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RedefineDynamicVariable/content.txt new file mode 100644 index 0000000000..31e3aa47f5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RedefineDynamicVariable/content.txt @@ -0,0 +1,10 @@ +!|fitlibrary.DoFixture| + +|'''set'''|prop|''to''|Value| + +|''get''|@{prop}|''matches''|Value| + +|'''set'''|prop|''to''|Value Two| + +|''get''|@{prop}|''matches''|Value Two| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RedefineDynamicVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RedefineDynamicVariable/properties.xml new file mode 100644 index 0000000000..e9a57d2ef3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/RedefineDynamicVariable/properties.xml @@ -0,0 +1,16 @@ + + + + + 20081101201645 + + + + + + + + + 1225523805078 + -5030502314445301697 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SimpleUse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SimpleUse/content.txt new file mode 100644 index 0000000000..0c1959a63d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SimpleUse/content.txt @@ -0,0 +1,69 @@ +!3 A Dynamic Variable can be set and used in storytests +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|'''set'''|colour|''to''|red| + +|''get''|@{colour}|'''is'''|red| + +|''get''|@{colour}|'''is'''|@{colour}| + +|''get''|red|'''is'''|@{colour}| + +|''get''|green|'''is'''|@{colour}| + +|''expected test results''|3|''right''|1|''wrong''|0|''ignored''|0|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
setcolourtored
+
+ + + + + +
getredisred
+
+ + + + + +
getredisred
+
+ + + + + +
getredisred
+
+ + + + + +
getgreenisred expected
green actual
+
+ + + + + + + + + + +
expected test results3right1wrong0ignored0exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SimpleUse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SimpleUse/properties.xml new file mode 100644 index 0000000000..86783befa2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SimpleUse/properties.xml @@ -0,0 +1,16 @@ + + + + + 20081123204201 + + + + + + + + + 1227426121203 + -7150991684194133901 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyConvertFromToFitSymbols/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyConvertFromToFitSymbols/content.txt new file mode 100644 index 0000000000..831051a4cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyConvertFromToFitSymbols/content.txt @@ -0,0 +1,16 @@ +!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +!|fitnesse.fixtures.ColumnFixtureTestFixture| +|input|=output?| +|1|theSymbolOne| + +|set|avar|get symbol named|theSymbolOne| + +|set symbol named|anotherSymbol|get|@{avar}| + +|set symbol named|yetAnotherSymbol|to|2| + +!|fitnesse.fixtures.ColumnFixtureTestFixture| +|input=|output?| +|anotherSymbol|1| +|yetAnotherSymbol|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyConvertFromToFitSymbols/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyConvertFromToFitSymbols/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyConvertFromToFitSymbols/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadPropertiesFile/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadPropertiesFile/content.txt new file mode 100644 index 0000000000..e594e441bb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadPropertiesFile/content.txt @@ -0,0 +1,25 @@ +!*> file +!define contents (eg1=Example One\n +eg2=a,b,c\n +eg3=abc\n +) +**! +!|fitlibrary.DoFixture| + +|''file''|vars.properties| +|''write''|${contents}| + +|''add dynamic variables from file''|vars.properties| + +|show|get|@{eg1}| + +|get|@{eg1}|is|Example One| + +|get|@{eg2}|is|a,b,c | + +|get|@{eg3}|is|abc| + +|get|@{eg333}|is|@{eg333}| + +|''file''|vars.properties| +|''delete''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadPropertiesFile/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadPropertiesFile/properties.xml new file mode 100644 index 0000000000..60434ec628 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadPropertiesFile/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1255208705984 + 3326360555554183660 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadUnicodePropertiesFile/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadUnicodePropertiesFile/content.txt new file mode 100644 index 0000000000..3fc84c6c04 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadUnicodePropertiesFile/content.txt @@ -0,0 +1,23 @@ +!*> file contents +!define contents (eg1=索する前の月へ前の月へ\n +eg2=オンラインヘルプ 連絡先\n +eg3=abc\n +) +**! +!|fitlibrary.DoFixture| + +|''file''|unicode.properties| +|''write unicode''|${contents}| + +|''add dynamic variables from unicode file''|unicode.properties| + +|show|get|@{eg1}| + +|get|@{eg1}|is|索する前の月へ前の月へ| + +|get|@{eg2}|is|オンラインヘルプ 連絡先| + +|get|@{eg3}|is|abc| + +|''file''|unicode.properties| +|''delete''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadUnicodePropertiesFile/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadUnicodePropertiesFile/properties.xml new file mode 100644 index 0000000000..e50faf0c3c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/SpecifyLoadUnicodePropertiesFile/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20091011101429 + + + + + + + + + 1255209269078 + 6015492097579502424 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UseDynamicVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UseDynamicVariable/content.txt new file mode 100644 index 0000000000..7e5f7ebc62 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UseDynamicVariable/content.txt @@ -0,0 +1,19 @@ +!|fitlibrary.DoFixture| + +|'''set'''|prop|''to''|Value| + +|''get''|@{prop}|'''is'''|@{prop}| + +|''get''|Value|'''is'''|@{prop}| + +|''get''|@{prop}|'''is'''|Value| + +|''get''|--@{prop}++|'''is'''|--Value++| + +|''get''|@{prop}+@{prop}|'''is'''|Value+Value| + +|'''set'''|other|''to''|Other| + +|''set''|prop|''get''|@{other}| + +|''get''|@{prop}|'''is'''|Other| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UseDynamicVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UseDynamicVariable/properties.xml new file mode 100644 index 0000000000..51b128e786 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UseDynamicVariable/properties.xml @@ -0,0 +1,16 @@ + + + + + 20081125192026 + + + + + + + + + 1227594026468 + -2154642142785596209 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UsingCalculations/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UsingCalculations/content.txt new file mode 100644 index 0000000000..a62e921b74 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UsingCalculations/content.txt @@ -0,0 +1,74 @@ +!3 A Dynamic Variable can be set and used in storytests +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|'''set'''|colour|''to''|1| + +|'''set'''|sum|=|1+2| + +|get|@{sum}|is|3| + +|'''set'''|sum|=|@{sum}*@{sum}| + +|get|@{sum}|is|9| + +|'''set'''|sum|=|@{sum}*0| + +|get|@{sum}|is|0| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + + + + +
setcolourto1
+
+ + + + + +
setsum=1+2
+
+ + + + + +
get3is3
+
+ + + + + +
setsum=3*3
+
+ + + + + +
get9is9
+
+ + + + + +
setsum=9*0
+
+ + + + + +
get0is0
+-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UsingCalculations/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UsingCalculations/properties.xml new file mode 100644 index 0000000000..9010453815 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/UsingCalculations/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090623134548 + + + + + + + + + 1245721548549 + 311072925583995487 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/content.txt new file mode 100644 index 0000000000..a8b018e1ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/content.txt @@ -0,0 +1,5 @@ +!2 Dynamic variables allow a storytest to be used with variations of data, where the variations are defined by ''dynamic variables'' that are set in the storytest (or loaded from a property file). +|!contents -R| + +^HowTagsAreHandled + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/properties.xml new file mode 100644 index 0000000000..715b5dad6d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/DynamicVariables/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + null + + + 1255050797250 + 4228988196052684752 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/EntityIsIncorrect/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/EntityIsIncorrect/content.txt new file mode 100644 index 0000000000..ea5beb1761 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/EntityIsIncorrect/content.txt @@ -0,0 +1,23 @@ +!3 Reference that fails because the actual entity is not expected +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + +
checkwiththe firstthe second account
-!|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + +
checkwiththe firstthe second account expected
the first Account actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/EntityIsIncorrect/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/EntityIsIncorrect/properties.xml new file mode 100644 index 0000000000..4c5b93a1aa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/EntityIsIncorrect/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160009 + + + + + + + + 1131874832031 + 3196379978516921338 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/NestedWithCollections/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/NestedWithCollections/content.txt new file mode 100644 index 0000000000..32441f42e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/NestedWithCollections/content.txt @@ -0,0 +1,42 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.References
+ + + + + +
set up accounts
owing
10
100
+ + + + + +
set up account references
account
the first
the second
+ + + + + +
check account references
account
the first
the second
-!|!- + +
fitlibrary.specify.References
+ + + + + +
set up accounts
owing
10
100
+ + + + + +
set up account references
account
the first
the second
+ + + + + +
check account references
account
the first
the second
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/NestedWithCollections/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/NestedWithCollections/properties.xml new file mode 100644 index 0000000000..3d07eba881 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/NestedWithCollections/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160009 + + + + + + + + 1131874862265 + -2781176909746630133 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ParsedReferences/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ParsedReferences/content.txt new file mode 100644 index 0000000000..9037f80078 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ParsedReferences/content.txt @@ -0,0 +1,42 @@ +!3 Some references are handled internally and result in a call to a method, such as findClient(0) +!|fitlibrary.specify.References| + +|''calculate reference''|client| +|''text''||''index''| +|the||0| +|this||0| +|the first||0| +|this first||0| +|the client||0| +|this client||0| +|the first client||0| +|this first client||0| +|!-client#1-!||0| + +|''calculate reference''|account| +|''text''||''index''| +|the second||1| +|this second||1| +|the second account||1| +|this second account||1| +|!-account#2-!||1| + +|''calculate reference''|project| +|''text''||''index''| +|the third||2| +|the third project||2| +|!-project#3-!||2| +|the fourth||3| +|the fourth project||3| +|!-project#4-!||3| +|!-project#5-!||4| +|!-project#6-!||5| +|!-project#7-!||6| + +|''calculate reference''|person| +|''text''||''index''| +|the last||-1| +|this last||-1| +|the last person||-1| +|this last person||-1| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ParsedReferences/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ParsedReferences/properties.xml new file mode 100644 index 0000000000..a19b8e5931 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ParsedReferences/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160009 + + + + + + + + 1131487248734 + -8272306623987546383 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ReflectiveCallsAreMadeToSut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ReflectiveCallsAreMadeToSut/content.txt new file mode 100644 index 0000000000..92de2444e1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ReflectiveCallsAreMadeToSut/content.txt @@ -0,0 +1,10 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + +
fitlibrary.specify.References
with personthe person
checknameward
-!|!- + + + +
fitlibrary.specify.References
with personthe person
checknameward
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ReflectiveCallsAreMadeToSut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ReflectiveCallsAreMadeToSut/properties.xml new file mode 100644 index 0000000000..ea04154587 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/ReflectiveCallsAreMadeToSut/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160009 + + + + + + + + 1131874878890 + 7066844608852093183 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceFails/content.txt new file mode 100644 index 0000000000..3312eb2513 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceFails/content.txt @@ -0,0 +1,39 @@ +!3 The reference '2nd' is a special one and so results in a call to the fixture method ''findClient("1st")'' - but this fails to parse the string +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + +
add10 to 2nd
+ + + + + +
accounts
owing
20
100
-!| +|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + +
add10 to 2nd
+ + + + + + + + +
accounts
owing
20 missing
100 missing
10 surplus
100 surplus
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceFails/properties.xml new file mode 100644 index 0000000000..8fa42057c2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceFails/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160009 + + + + + + + + 1131488472562 + -4285344165202789237 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceSucceeds/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceSucceeds/content.txt new file mode 100644 index 0000000000..07334e9de7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceSucceeds/content.txt @@ -0,0 +1,35 @@ +!3 The reference '1st' is a special one and so results in a call to the fixture method ''findClient("1st")'' +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + +
add10 to 1st
+ + + + + +
accounts
owing
20
100
-!|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + +
add10 to 1st
+ + + + + +
accounts
owing
20
100
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceSucceeds/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceSucceeds/properties.xml new file mode 100644 index 0000000000..709f7c146a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/SpecialReferenceSucceeds/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160009 + + + + + + + + 1131874895109 + -3882291534409463041 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceFailsDueToMissingEntity/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceFailsDueToMissingEntity/content.txt new file mode 100644 index 0000000000..5d861aaceb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceFailsDueToMissingEntity/content.txt @@ -0,0 +1,26 @@ +!3 References that fail because the entity is missing +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + + +
add20 to the third account
add20 to account#4
-!| +|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + + +
add20 to the third account
add20 to account#4
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceFailsDueToMissingEntity/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceFailsDueToMissingEntity/properties.xml new file mode 100644 index 0000000000..05fbd43145 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceFailsDueToMissingEntity/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160009 + + + + + + + + 1131491843984 + 6277015008929494763 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceSucceeds/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceSucceeds/content.txt new file mode 100644 index 0000000000..ddaa77ec37 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceSucceeds/content.txt @@ -0,0 +1,49 @@ +!3 References to first and second succeed +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + +
add10 to the second account
+ + + + + +
accounts
owing
10
110
+ + +
add20 to the first account
+ + + +
withthe firstaccount
checkowing30
-!|!- + +
fitlibrary.specify.References
+ + + + +
set up accounts
owing
10
100
+ + +
add10 to the second account
+ + + + + +
accounts
owing
10
110
+ + +
add20 to the first account
+ + + +
withthe firstaccount
checkowing30
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceSucceeds/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceSucceeds/properties.xml new file mode 100644 index 0000000000..b29948e128 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/StandardReferenceSucceeds/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160009 + + + + + + + + 1131874911984 + -6004272818844853870 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/content.txt new file mode 100644 index 0000000000..67e2d3f897 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/content.txt @@ -0,0 +1,8 @@ +!3 Entity References like ''the first client'' are used in Fit table cells to refer to particular entities +If a class doesn't have a parse mechanism (other than classes Object and String), it's treated as an Entity class (in the ''!-DomainDrivenDesign-!'' sense) and the cell text is treated as a reference to an Entity of that class. + +Here we specify how a reference can be in terms of its position in a collection, such as "first account". + +If a cell is expected to hold an Entity (or Entity reference) and it's of the form "the first orange", a call is made to a finder method, passing the index of the element in the collection. Eg, if an Orange is expected, a call will be made to the method Orange findOrange(int index). This is expected to look up the particular Orange by relative position in some collection. + +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/properties.xml new file mode 100644 index 0000000000..fcab56e3dc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/SpecifyRelativeReferences/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160009 + + + + + + + + 1146697912796 + -8839758991998854752 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/content.txt new file mode 100644 index 0000000000..2135a209da --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/content.txt @@ -0,0 +1,5 @@ +The ${storytest}s in here are experimental. They may be altered or removed entirely, so I suggest that you don't depend on them. + +If you have any comments about these, please contact ${rick}. + +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/properties.xml new file mode 100644 index 0000000000..1694c09844 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ExperiMental/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118160849 + true + true + true + true + true + true + 1232248129046 + -6157089666133296124 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ActionsOnColour/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ActionsOnColour/content.txt new file mode 100644 index 0000000000..08c919472c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ActionsOnColour/content.txt @@ -0,0 +1,3 @@ +|''set point''|!include ThePointRef| + +|check|''point''|!include ThePointRef| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ActionsOnColour/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ActionsOnColour/properties.xml new file mode 100644 index 0000000000..b09cc4f01f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ActionsOnColour/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202806 + + + + + + + 1138596126630 + 2494688101753987366 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ColourObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ColourObject/content.txt new file mode 100644 index 0000000000..2f688ba36c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ColourObject/content.txt @@ -0,0 +1,7 @@ +|''set colour''|sky blue| + +|check|''colour''|sky blue| + +|''set point''|!include .FitLibrary.SpecifiCations.FitLibraryGeneric.ThePoint| + +|check|''point''|!include .FitLibrary.SpecifiCations.FitLibraryGeneric.ThePoint| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ColourObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ColourObject/properties.xml new file mode 100644 index 0000000000..e7ae38b4c2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ColourObject/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081207134956 + + + + + + + 1228610996281 + -7991089926535164015 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/DoColourReference/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/DoColourReference/content.txt new file mode 100644 index 0000000000..5f2bef6c27 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/DoColourReference/content.txt @@ -0,0 +1 @@ +|use|first|of|a list| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/DoColourReference/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/DoColourReference/properties.xml new file mode 100644 index 0000000000..392bf79099 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/DoColourReference/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202806 + + + + + + + 1138595505237 + -8341506429121637880 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCalculate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCalculate/content.txt new file mode 100644 index 0000000000..cd9ab0b87e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCalculate/content.txt @@ -0,0 +1,32 @@ +!2 The generic type of an object that's returned from a do action is retained so that any subsequent calls into that object are bound correctly. +!**< def +!define test ( +!|fitlibraryGeneric.specify.calculate.GenericCalculate| + +|''gen''| +|''calculate''| +|||''identity''| +|red||red| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.calculate.GenericCalculate
+
+ + + + + + + + + + + + +
gen
calculate
  identity
red red
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCalculate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCalculate/properties.xml new file mode 100644 index 0000000000..f612d22d92 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCalculate/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225515265437 + 1359448756531339960 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCollectionsUseObjectFactoryMethodToEaseMigration/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCollectionsUseObjectFactoryMethodToEaseMigration/content.txt new file mode 100644 index 0000000000..0aeeae22a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCollectionsUseObjectFactoryMethodToEaseMigration/content.txt @@ -0,0 +1,27 @@ +!**< def +!define rgRenamed ( +|''colour renamed''| +|red| +|green| + +) +!define rg ( +|''colour''| +|red| +|green| + +) +**! + * A list is expressed as a nested table + * A list of lists is expressed as a doubly-nested table + +!|fitlibraryGeneric.specify.collections.GenericCollectionsUseObjectFactory| + +|''a list''|${rgRenamed}| +|''a set''|${rgRenamed}| + +---- +---- +|''a list''|${rg}| +|''a set''|${rg}| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCollectionsUseObjectFactoryMethodToEaseMigration/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCollectionsUseObjectFactoryMethodToEaseMigration/properties.xml new file mode 100644 index 0000000000..7f90a0532d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericCollectionsUseObjectFactoryMethodToEaseMigration/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175434 + + + + + + + + 1225515274250 + 2602856723640875994 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericCheck/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericCheck/content.txt new file mode 100644 index 0000000000..04d7480251 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericCheck/content.txt @@ -0,0 +1,16 @@ +!**< def +!define obj ( +|''t''|red| + +) +!define int ( +|''t''|23| + +) +**! +!|fitlibraryGeneric.specify.workflow.Check| + +---- +|'''check'''|''a generic colour object''|${obj}| + +|'''check'''|''a generic integer object''|${int}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericCheck/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericCheck/properties.xml new file mode 100644 index 0000000000..55ffa5c308 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericCheck/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175449 + + + + + + + + 1225515289968 + 6223287697041528234 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericObjectFollows/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericObjectFollows/content.txt new file mode 100644 index 0000000000..0f77d12a60 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericObjectFollows/content.txt @@ -0,0 +1,20 @@ +!**< def +!define colour ( +|'''check'''|''identity''|red|red| + +|'''check'''|''identity''|green|green| +) +**! +!|fitlibraryGeneric.specify.workflow.GenericObjectFollows| + +|''a generic colour object''| +|'''check'''|''identity''|red|red| +|'''check'''|''identity''|green|green| + +|''a generic colour object''| +|${colour}| + +|''a generic integer object''| +|'''check'''|''identity''|0|0| +|'''check'''|''identity''|535|535| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericObjectFollows/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericObjectFollows/properties.xml new file mode 100644 index 0000000000..d1872b5580 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/GenericObjectFollows/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225515298250 + 5315349167359087159 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/content.txt new file mode 100644 index 0000000000..2da299bffd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/content.txt @@ -0,0 +1,3 @@ +!3 Generic types are also retained with the result of an action +^GenericCheck +^GenericObjectFollows diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/properties.xml new file mode 100644 index 0000000000..fbbec5775e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericDo/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20080727202805 + true + true + true + true + true + true + 1163663498343 + -2551036106318060261 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/BothNonGenericAndGenericFinder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/BothNonGenericAndGenericFinder/content.txt new file mode 100644 index 0000000000..a6f8cc8df0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/BothNonGenericAndGenericFinder/content.txt @@ -0,0 +1,13 @@ +!3 A generic finder is used in preference to a non-generic one +!*< def +!define pair ( +|first|1| +|second|2| +) +**! +|!-fitlibraryGeneric.specify.genericFinder.GenericAndNonGenericFinder-!| + +|integer integer pair|first pair| +---- +---- +|integer integer pair|${pair}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/BothNonGenericAndGenericFinder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/BothNonGenericAndGenericFinder/properties.xml new file mode 100644 index 0000000000..14eae08dda --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/BothNonGenericAndGenericFinder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175507 + + + + + + + + 1225515307312 + -7669253367815143110 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderException/content.txt new file mode 100644 index 0000000000..a4b3db1646 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderException/content.txt @@ -0,0 +1,17 @@ +!**< def +!define test ( +!|fitlibraryGeneric.specify.genericFinder.GenericFinderException| + +|integer integer pair|first pair| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.genericFinder.GenericFinderException
+
+ + + +
integer integer pairfirst pair
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderException/properties.xml new file mode 100644 index 0000000000..c216b7bab8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderException/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175519 + + + + + + + + 1225515319953 + -5349485441829491494 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderSucceeds/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderSucceeds/content.txt new file mode 100644 index 0000000000..7e7b72b150 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderSucceeds/content.txt @@ -0,0 +1,20 @@ +!**< def +!define pair ( +|first|1| +|second|2| +) +!define pair2 ( +|first|a| +|second|4.0| +) +**! +|!-fitlibraryGeneric.specify.genericFinder.GenericFinder-!| + +|integer integer pair|first pair| + +|string double pair|first pair| +---- +---- +|integer integer pair|${pair}| + +|string double pair|${pair2}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderSucceeds/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderSucceeds/properties.xml new file mode 100644 index 0000000000..9d15e5fc29 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderSucceeds/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175535 + + + + + + + + 1225515335718 + 1933136716296676160 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderWhereTypeDoesNotMatch/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderWhereTypeDoesNotMatch/content.txt new file mode 100644 index 0000000000..17d8e40d37 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderWhereTypeDoesNotMatch/content.txt @@ -0,0 +1,36 @@ +!**< def +!define pair ( +|first|1| +|second|2| +) +!define test ( +!|fitlibraryGeneric.specify.genericFinder.GenericFinderMismatches| + +|integer integer pair|first pair| +---- +---- +|integer integer pair|${pair}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.genericFinder.GenericFinderMismatches
+
+ + + +
integer integer pairfirst pair
+



+ + + +
integer integer pair
+ + + + + + +
first1
second2
expected
actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderWhereTypeDoesNotMatch/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderWhereTypeDoesNotMatch/properties.xml new file mode 100644 index 0000000000..e76f320615 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericFinderWhereTypeDoesNotMatch/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175545 + + + + + + + + 1225515345218 + 9079449577680811668 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShow/content.txt new file mode 100644 index 0000000000..cdc3190a86 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShow/content.txt @@ -0,0 +1,25 @@ +!**< def +!define test ( +!|fitlibraryGeneric.specify.genericFinder.GenericFinder| + +|integer integer pair|first pair| +---- +---- +|integer integer pair|other| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.genericFinder.GenericFinder
+
+ + + +
integer integer pairfirst pair
+



+ + + +
integer integer pairother expected
Got Pair[1,2] actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShow/properties.xml new file mode 100644 index 0000000000..d57f7ff371 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShow/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175554 + + + + + + + + 1225515354781 + -6735152855032251139 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShowException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShowException/content.txt new file mode 100644 index 0000000000..c89b31ee41 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShowException/content.txt @@ -0,0 +1,25 @@ +!**< def +!define test ( +!|fitlibraryGeneric.specify.genericFinder.GenericShowException| + +|integer integer pair|first pair| +---- +---- +|integer integer pair|other| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.genericFinder.GenericShowException
+
+ + + +
integer integer pairfirst pair
+



+ + + +
integer integer pairother
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShowException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShowException/properties.xml new file mode 100644 index 0000000000..dedd0f38df --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/GenericShowException/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175602 + + + + + + + + 1225515362765 + 282855986115711139 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/OnlyNonGenericFinder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/OnlyNonGenericFinder/content.txt new file mode 100644 index 0000000000..1b69ef641d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/OnlyNonGenericFinder/content.txt @@ -0,0 +1,12 @@ +!**< def +!define pair ( +|first|1| +|second|2| +) +**! +|!-fitlibraryGeneric.specify.genericFinder.NonGenericFinderForGeneric-!| + +|integer integer pair|first pair| +---- +---- +|integer integer pair|${pair}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/OnlyNonGenericFinder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/OnlyNonGenericFinder/properties.xml new file mode 100644 index 0000000000..9edb42bc2b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/OnlyNonGenericFinder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175610 + + + + + + + + 1225515370859 + -1064685006865576016 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/content.txt new file mode 100644 index 0000000000..6fc6851818 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/content.txt @@ -0,0 +1,7 @@ +^OnlyNonGenericFinder +^GenericFinderSucceeds +^GenericFinderException +^GenericFinderWhereTypeDoesNotMatch +^BothNonGenericAndGenericFinder +^GenericShow +^GenericShowException diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/properties.xml new file mode 100644 index 0000000000..5c889d2701 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericFinder/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080727202806 + + + + + + + + 1174384179437 + 7431740216656883766 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListChecks/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListChecks/content.txt new file mode 100644 index 0000000000..1cf568a4b8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListChecks/content.txt @@ -0,0 +1,23 @@ +!***< def +!define rg (|''colour''| +|red| +|green| +) +!define yb (|''colour''| +|yellow| +|blue| +) +!define listOfLists (|${rg}| +|${yb}| +) +**! + * A list is expressed as a nested table + * A list of lists is expressed as a doubly-nested table + +!|fitlibraryGeneric.specify.collections.GenericCollections| + +|''checks''| + * List +|''a list''|${rg}| + * List> +|''a list of lists''|${listOfLists}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListChecks/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListChecks/properties.xml new file mode 100644 index 0000000000..32ba242013 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListChecks/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175619 + + + + + + + + 1225515379578 + -7692122015565308855 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListSetUp/content.txt new file mode 100644 index 0000000000..2e608271db --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListSetUp/content.txt @@ -0,0 +1,36 @@ +!***< def +!define strings ( +|abc| +|def| +) +!define colours ( +|''colour''| +|blue| +|red| +|green| +) +!define black ( +|''colour''| +|black| +) +!define listOfLists ( +|${colours}| +|${black}| +|| +) +!define someLists ( + * List +|''a list of string''|${strings}| + * List +|''a list''|${colours}| + * List> +|''a list of lists''|${listOfLists}| +) +**! +!|fitlibraryGeneric.specify.collections.GenericCollections| + +${someLists} + +|''checks''| + +${someLists} diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListSetUp/properties.xml new file mode 100644 index 0000000000..06d2b00fe9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/ListSetUp/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175628 + + + + + + + + 1225515388046 + 7772585409962876057 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/content.txt new file mode 100644 index 0000000000..920591482b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/content.txt @@ -0,0 +1 @@ +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/properties.xml new file mode 100644 index 0000000000..ce2de5bade --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericLists/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1159057030983 + 2493221747536846778 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/GenericSubsetMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/GenericSubsetMap/content.txt new file mode 100644 index 0000000000..791d19a7b9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/GenericSubsetMap/content.txt @@ -0,0 +1,19 @@ +!|fitlibraryGeneric.specify.collections.GenericMaps| + +---- +|''a map''| +|green|blue| +|black|yellow| + +|''a subset map''| +|green|blue| +|black|yellow| + +|''a subset map''| +|green|blue| + +|''a subset map''| +|black|yellow| + +|''a subset map''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/GenericSubsetMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/GenericSubsetMap/properties.xml new file mode 100644 index 0000000000..28fea9db8b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/GenericSubsetMap/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090928134342 + + + + + + + + + 1254098622794 + -5432920504490153855 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/ListOfMaps/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/ListOfMaps/content.txt new file mode 100644 index 0000000000..200b838a8b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/ListOfMaps/content.txt @@ -0,0 +1,16 @@ +!2 A list of maps can be handled in a convenient table when the maps are Map + +!|fitlibraryGeneric.specify.collections.GenericMaps| + +---- +|''a list of maps''| +|''color''|''count''| +|red|1| +|green|2| +|yellow|three| + +|''a list of maps with empty''| +|''color''|''count''| +|red|1| +||2| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/ListOfMaps/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/ListOfMaps/properties.xml new file mode 100644 index 0000000000..e00720689d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/ListOfMaps/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090928143049 + + + + + + + + + 1254101449629 + -7387555696938561913 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapChecks/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapChecks/content.txt new file mode 100644 index 0000000000..725d954f03 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapChecks/content.txt @@ -0,0 +1,26 @@ +!***< def +!define map (|green|blue| +|black|yellow| +) +!define gr (|green|red| +) +!define bw (|black|white| +) +!define yb (|yellow|blue| +) +!define mapOfMaps (|red|${gr}| +|white|${bw}| +|blue|${yb}| +) +**! +!|fitlibraryGeneric.specify.collections.GenericMaps| + +---- +|''a map''| +|green|blue| +|black|yellow| +---- + +|''a map''|${map}| + +|''a map of maps''|${mapOfMaps}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapChecks/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapChecks/properties.xml new file mode 100644 index 0000000000..3f67cc5323 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapChecks/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090928134140 + + + + + + + + 1254098500518 + 8234372781169653472 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapSetUp/content.txt new file mode 100644 index 0000000000..91d575faca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapSetUp/content.txt @@ -0,0 +1,19 @@ +!***< def +!define map (|red|green| +|white|black| +|blue|yellow| +) +!define mapOfMaps (|black|${map}| +) +**! +!|fitlibraryGeneric.specify.collections.GenericMaps| + +|''a map''|${map}| + +|''a map of maps''|${mapOfMaps}| + +|''checks''| + +|''a map''|${map}| + +|''a map of maps''|${mapOfMaps}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapSetUp/properties.xml new file mode 100644 index 0000000000..c5b1306924 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/MapSetUp/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175645 + + + + + + + + 1225515405218 + -1147489615743818504 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/content.txt new file mode 100644 index 0000000000..e9e5236c59 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/content.txt @@ -0,0 +1,4 @@ +|!contents| + +^GenericSubsetMap +^ListOfMaps diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/properties.xml new file mode 100644 index 0000000000..f113fabe5a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericMaps/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090928134950 + true + true + true + true + true + true + 1254098990021 + 63387157114130046 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/BindSuperGenerics/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/BindSuperGenerics/content.txt new file mode 100644 index 0000000000..a53fc280c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/BindSuperGenerics/content.txt @@ -0,0 +1,17 @@ +!***< def +!define t ( +|''colour''|red| + +) +!define gen ( +|''t''|${t}| + +) +**! +!|fitlibraryGeneric.specify.object.BindSuperGenerics| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/BindSuperGenerics/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/BindSuperGenerics/properties.xml new file mode 100644 index 0000000000..087c8bae0b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/BindSuperGenerics/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175654 + + + + + + + + 1225515414156 + 4606080033180388696 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericListOfSets/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericListOfSets/content.txt new file mode 100644 index 0000000000..12a3e28680 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericListOfSets/content.txt @@ -0,0 +1,23 @@ +!***< def +!define set ( +|''colour''| +|red| + +) +!define list ( +|${set}| +|${set}| + +) +!define gen ( +|''ts''|${list}| + +) +**! +!|fitlibraryGeneric.specify.object.GenericListOfSets| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericListOfSets/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericListOfSets/properties.xml new file mode 100644 index 0000000000..dd9a1500d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericListOfSets/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175701 + + + + + + + + 1225515421375 + -1413622362568185331 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainGeneric/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainGeneric/content.txt new file mode 100644 index 0000000000..9a24160a2b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainGeneric/content.txt @@ -0,0 +1,13 @@ +!***< def +!define t (|''colour''|red| +) +!define gen (|''t''|${t}| +) +**! +!|fitlibraryGeneric.specify.object.GenericObjectContainsGeneric| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainGeneric/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainGeneric/properties.xml new file mode 100644 index 0000000000..9b7da6f8bf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainGeneric/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175710 + + + + + + + + 1225515430609 + -3718742131339692736 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainMap/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainMap/content.txt new file mode 100644 index 0000000000..8521ef0545 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainMap/content.txt @@ -0,0 +1,15 @@ +!***< def +!define ts ( +|true|1| +|false|2| +) +!define gen (|''fun''|${ts}| +) +**! +!|fitlibraryGeneric.specify.object.GenericObjectContainsMap| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainMap/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainMap/properties.xml new file mode 100644 index 0000000000..89a8215f83 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainMap/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175719 + + + + + + + + 1225515439609 + -5153727079445943015 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsArrayOfGenericList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsArrayOfGenericList/content.txt new file mode 100644 index 0000000000..e11e81f4ea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsArrayOfGenericList/content.txt @@ -0,0 +1,24 @@ +!***< def +!define ls ( +|''colour''| +|red| +|green| + +) +!define ts ( +|${ls}| +|${ls}| + +) +!define gen ( +|''ts''|${ts}| + +) +**! +!|fitlibraryGeneric.specify.object.GenericObjectContainsArrayOfGenericList| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsArrayOfGenericList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsArrayOfGenericList/properties.xml new file mode 100644 index 0000000000..4d0dc8520e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsArrayOfGenericList/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175728 + + + + + + + + 1225515448578 + -359555574990367809 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericArray/content.txt new file mode 100644 index 0000000000..22d74c9787 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericArray/content.txt @@ -0,0 +1,19 @@ +!***< def +!define ts ( +|''colour''| +|red| +|green| + +) +!define gen ( +|''ts''|${ts}| + +) +**! +!|fitlibraryGeneric.specify.object.GenericObjectContainsGenericArray| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericArray/properties.xml new file mode 100644 index 0000000000..6cac773ba4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericArray/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175737 + + + + + + + + 1225515457312 + 3276080942018785115 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericPrimitiveArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericPrimitiveArray/content.txt new file mode 100644 index 0000000000..c9c2206e87 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericPrimitiveArray/content.txt @@ -0,0 +1,18 @@ +!***< def +!define ts ( +|1| +|2| + +) +!define gen ( +|''ts''|${ts}| + +) +**! +!|fitlibraryGeneric.specify.object.GenericObjectContainsGenericPrimitiveArray| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericPrimitiveArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericPrimitiveArray/properties.xml new file mode 100644 index 0000000000..1ce6128391 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsGenericPrimitiveArray/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175744 + + + + + + + + 1225515464843 + 192989318457788948 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsList/content.txt new file mode 100644 index 0000000000..8b35c4b732 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsList/content.txt @@ -0,0 +1,18 @@ +!***< def +!define ts ( +|''colour''| +|red| + +) +!define gen ( +|''ts''|${ts}| + +) +**! +!|fitlibraryGeneric.specify.object.GenericObjectContainsList| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsList/properties.xml new file mode 100644 index 0000000000..3cec436450 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsList/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175754 + + + + + + + + 1225515474750 + 9086963760117821971 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsListOfGenericArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsListOfGenericArray/content.txt new file mode 100644 index 0000000000..aa9aea0bd1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsListOfGenericArray/content.txt @@ -0,0 +1,24 @@ +!***< def +!define ls ( +|''colour''| +|red| +|green| + +) +!define ts ( +|${ls}| +|${ls}| + +) +!define gen ( +|''ts''|${ts}| + +) +**! +!|fitlibraryGeneric.specify.object.GenericObjectContainsListOfGenericArray| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsListOfGenericArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsListOfGenericArray/properties.xml new file mode 100644 index 0000000000..3132703b27 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsListOfGenericArray/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175802 + + + + + + + + 1225515482750 + 1735460291030759808 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsMapOfGenericArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsMapOfGenericArray/content.txt new file mode 100644 index 0000000000..61469e9275 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsMapOfGenericArray/content.txt @@ -0,0 +1,30 @@ +!***< def +!define ls ( +|''colour''| +|red| +|green| + +) +!define ls2 ( +|''colour''| +|yellow| +|blue| + +) +!define ts ( +|1|${ls2}| +|2|${ls}| + +) +!define gen ( +|''ts''|${ts}| + +) +**! +!|fitlibraryGeneric.specify.object.GenericObjectContainsMapOfGenericArray| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsMapOfGenericArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsMapOfGenericArray/properties.xml new file mode 100644 index 0000000000..08c3d406f8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsMapOfGenericArray/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175811 + + + + + + + + 1225515491015 + 5698245602306881154 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsSetOfGenericArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsSetOfGenericArray/content.txt new file mode 100644 index 0000000000..f141d6c316 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsSetOfGenericArray/content.txt @@ -0,0 +1,24 @@ +!***< def +!define ls ( +|''colour''| +|red| +|green| + +) +!define ts ( +|${ls}| +|${ls}| + +) +!define gen ( +|''ts''|${ts}| + +) +**! +!|fitlibraryGeneric.specify.object.GenericObjectContainsSetOfGenericArray| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsSetOfGenericArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsSetOfGenericArray/properties.xml new file mode 100644 index 0000000000..5b4778c8ae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/GenericObjectContainsSetOfGenericArray/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175818 + + + + + + + + 1225515498796 + 2734766785881129793 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/NestedGenericObjects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/NestedGenericObjects/content.txt new file mode 100644 index 0000000000..cd2b2f186f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/NestedGenericObjects/content.txt @@ -0,0 +1,21 @@ +!***< def +!define v ( +|''colour''|red| + +) +!define t ( +|''v''|${v}| + +) +!define gen ( +|''t''|${t}| + +) +**! +!|fitlibraryGeneric.specify.object.NestedGenericObjects| + +|''gen''|${gen}| + +|''checks''| + +|''gen''|${gen}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/NestedGenericObjects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/NestedGenericObjects/properties.xml new file mode 100644 index 0000000000..ef98ea8ecb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/NestedGenericObjects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175827 + + + + + + + + 1225515507515 + 1096495530785734119 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/content.txt new file mode 100644 index 0000000000..42bf0fc088 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/content.txt @@ -0,0 +1,4 @@ +|!contents| + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/properties.xml new file mode 100644 index 0000000000..2bd2ea74f4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericObjects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080801173804 + + + + + + + + 1217569084234 + -969646086053560798 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetChecks/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetChecks/content.txt new file mode 100644 index 0000000000..cc1d58a87b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetChecks/content.txt @@ -0,0 +1,23 @@ +!***< def +!define rg (|''colour''| +|green| +|red| +) +!define yb (|''colour''| +|yellow| +|blue| +) +!define listOfLists (|${yb}| +|${rg}| +) +**! + * A set is expressed as a nested table + * A set of sets is expressed as a doubly-nested table +!|fitlibraryGeneric.specify.collections.GenericCollections| + +|''checks''| + * Set +|''a set''|${rg}| + * Set> +|''a set of sets''|${listOfLists}| + * Note: Checking nested sets is not handled correctly, in general, at the moment diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetChecks/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetChecks/properties.xml new file mode 100644 index 0000000000..d8310749ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetChecks/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175836 + + + + + + + + 1225515516234 + -4230286448595695463 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetSetUp/content.txt new file mode 100644 index 0000000000..f7133c0a4c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetSetUp/content.txt @@ -0,0 +1,26 @@ +!**< defs +!define colours (|''colour''| +|blue| +|red| +|green| +) +!define black (|''colour''| +|black| +) +!define listOfLists (|${colours}| +|${black}| +|| +) +!define someLists ( * Set +|''a set''|${colours}| + * Set> +|''a set of sets''|${listOfLists}| +) +**! +!|fitlibraryGeneric.specify.collections.GenericCollections| + +${someLists} + +|''checks''| + +${someLists} diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetSetUp/properties.xml new file mode 100644 index 0000000000..6bad181de6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/SetSetUp/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118170152 + + + + + + + + 1232251312937 + -8960929662466230961 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/content.txt new file mode 100644 index 0000000000..d0255e7f46 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/content.txt @@ -0,0 +1,2 @@ +^SetChecks +^SetSetUp diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/properties.xml new file mode 100644 index 0000000000..898c29344a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/GenericSets/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080727202805 + + + + + + + + 1159059256994 + 2155474440681264900 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/ListOfSets/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/ListOfSets/content.txt new file mode 100644 index 0000000000..28ec1c3e7f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/ListOfSets/content.txt @@ -0,0 +1,27 @@ +!***< def +!define list ( +|''colour''| +|green| + +) +!define list2 ( +|''colour''| +|yellow| +|black| +|white| + +) +!define listOfList ( +|${list2}| +|${list}| + +) +**! +!|fitlibraryGeneric.specify.collections.GenericCollections| + + * List> +|''a list of sets''|${listOfList}| + +|''checks''| + * List> +|''a list of sets''|${listOfList}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/ListOfSets/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/ListOfSets/properties.xml new file mode 100644 index 0000000000..d4b60224aa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/ListOfSets/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175845 + + + + + + + + 1225515525687 + -8087192002659726974 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/MixedChecks/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/MixedChecks/content.txt new file mode 100644 index 0000000000..be44f040f6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/MixedChecks/content.txt @@ -0,0 +1,24 @@ +!**< defs +!define list (|''colour''| +|red| +|green| +) +!define list2 (|''colour''| +|yellow| +|blue| +) +!define listOfList (|${list}| +|${list2}| +) +**! +!|fitlibraryGeneric.specify.collections.GenericCollections| +---- +---- + * Set> +|''a set of lists''|${listOfList}| + * List> +|''a list of sets''|${listOfList}| + * Empty Set> +|''an empty set of lists''|| + * Empty List> +|''an empty list of sets''|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/MixedChecks/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/MixedChecks/properties.xml new file mode 100644 index 0000000000..f00e3ec903 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/MixedChecks/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118170213 + + + + + + + + 1232251333828 + 2873458109862361689 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/SetOfList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/SetOfList/content.txt new file mode 100644 index 0000000000..cddddd1014 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/SetOfList/content.txt @@ -0,0 +1,27 @@ +!**< defs +!define list ( +|''colour''| +|green| + +) +!define list2 ( +|''colour''| +|yellow| +|black| +|white| + +) +!define listOfList ( +|${list2}| +|${list}| + +) +**! +!|fitlibrary2.specify.collections.GenericCollections| + + * Set> +|''a set of lists''|${listOfList}| + +|''checks''| + * Set> +|''a set of lists''|${listOfList}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/SetOfList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/SetOfList/properties.xml new file mode 100644 index 0000000000..a9f73fe7d7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/SetOfList/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118170202 + + + + + + + 1232251322875 + 1542787103894788336 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/content.txt new file mode 100644 index 0000000000..d8cca61398 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/content.txt @@ -0,0 +1,3 @@ +|!contents| +^ListOfSets +^SetOfList \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/properties.xml new file mode 100644 index 0000000000..8ddeaa781f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/MixedCollections/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080727202806 + + + + + + + + 1161542926601 + -1906707625195233987 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NonGenericCollections/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NonGenericCollections/content.txt new file mode 100644 index 0000000000..1fd8df0f25 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NonGenericCollections/content.txt @@ -0,0 +1,30 @@ +!***< def +!define rg ( +|''colour''| +|red| +|green| + +) +!define map ( +|a|b| +|c|d| + +) +**! + * A non-generic list or set is handled in the usual way + +!|fitlibraryGeneric.specify.collections.NonGenericCollections| + +|''a list''|${rg}| + +|''a set''|${rg}| + +|''a map''|${map}| +---- +---- +|''a list''|${rg}| + +|''a set''|${rg}| + +|''a map''|${map}| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NonGenericCollections/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NonGenericCollections/properties.xml new file mode 100644 index 0000000000..7b8b8b3eaa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NonGenericCollections/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175854 + + + + + + + + 1225515534171 + 4754281492823159339 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NullGenericCollections/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NullGenericCollections/content.txt new file mode 100644 index 0000000000..28e5924fe3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NullGenericCollections/content.txt @@ -0,0 +1,205 @@ +!***< def +!define colours ( +|''colour''| +|blue| +|red| +|green| + +) +!define black ( +|''colour''| +|black| + +) +!define listOfLists ( +|${colours}| +|${black}| +|| + +) +!define map ( +|red|green| + +) +!define someLists ( + * List +|''a list''|| + +|''a list''|${colours}| + +|''a list of lists''|| + +|''a list of lists''|${listOfLists}| + +|''a set''|| + +|''a set''|${colours}| + +|''a set of sets''|| + +|''a set of sets''|${listOfLists}| + +|''a map''|| + +|''a map''|${map}| + +|''an array''|| + +|''an array''|${colours}| + +) +!define test ( +!|fitlibraryGeneric.specify.collections.NullGenericCollections| +---- +---- +${someLists} + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.collections.NullGenericCollections
+




    +
  • List<Colour>
  • +
+ + + + +
a list 
+
+ + + +
a list
+ + + + + + + + +
colour
blue
red
green
expected
actual
+
+ + + +
a list of lists 
+
+ + + +
a list of lists
+ + + + + + +

+ + + + + + + + +
colour
blue
red
green
+

+ + + + +
colour
black
+
 
expected
actual
+
+ + + +
a set 
+
+ + + +
a set
+ + + + + + + + +
colour
blue
red
green
expected
actual
+
+ + + +
a set of sets 
+
+ + + +
a set of sets
+ + + + + + +

+ + + + + + + + +
colour
blue
red
green
+

+ + + + +
colour
black
+
 
expected
actual
+
+ + + +
a map 
+
+ + + +
a map
+ + + +
redgreen
expected
actual
+
+ + + +
an array 
+
+ + + +
an array
+ + + + + + + + +
colour
blue
red
green
expected
actual
+


-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NullGenericCollections/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NullGenericCollections/properties.xml new file mode 100644 index 0000000000..2e34bb10a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/NullGenericCollections/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175902 + + + + + + + + 1225515542859 + -6927972916949293915 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ArrayOfEnum/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ArrayOfEnum/content.txt new file mode 100644 index 0000000000..c08fd5af74 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ArrayOfEnum/content.txt @@ -0,0 +1,15 @@ +!3 An array of enums +!*< def +!define list ( +|light red| +|blue green| +) +**! +!|fitlibraryGeneric.specify.enumerator.BareEnum| + +|''array''|${list}| +---- +---- +|''array''|${list}| + +|''array''|light red, blue green| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ArrayOfEnum/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ArrayOfEnum/properties.xml new file mode 100644 index 0000000000..b789cd6d7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ArrayOfEnum/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175914 + + + + + + + + 1225515554265 + -1666047278473540783 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnum/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnum/content.txt new file mode 100644 index 0000000000..f87f59b835 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnum/content.txt @@ -0,0 +1,13 @@ +!3 The enum LIGHTRED can be written in various ways + * Spaces added + * Case changed +!|fitlibraryGeneric.specify.enumerator.BareEnum| + +|''enumeration''|light red| +---- +---- +|''enumeration''|lightred| + +|''enumeration''|light red| + +|''enumeration''|LIGHTRED| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnum/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnum/properties.xml new file mode 100644 index 0000000000..c4ac926333 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnum/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080727204112 + + + + + + + + 1217148072921 + -7853921250246436848 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumFailing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumFailing/content.txt new file mode 100644 index 0000000000..ab3454b45a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumFailing/content.txt @@ -0,0 +1,40 @@ +!***< def +!define test ( +!|fitlibraryGeneric.specify.enumerator.BareEnum| + +|''enumeration''|light red| +---- +---- +|''enumeration''|green| + +|''enumeration''|${list}| + +) +!define list ( +|light red| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.enumerator.BareEnum
+
+ + + +
enumerationlight red
+



+ + + +
enumerationgreen expected
LIGHTRED actual
+
+ + + +
enumeration
+ + +
light red
unexpected collection
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumFailing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumFailing/properties.xml new file mode 100644 index 0000000000..c6c19ff352 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumFailing/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175929 + + + + + + + + 1225515569562 + 4655516100581749250 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumUnknown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumUnknown/content.txt new file mode 100644 index 0000000000..4e654d56b2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumUnknown/content.txt @@ -0,0 +1,27 @@ +!***< def +!define test ( +!|fitlibraryGeneric.specify.enumerator.BareEnum| + +|''enumeration''|light red| +---- +---- +|''enumeration''|orange| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.enumerator.BareEnum
+
+ + + +
enumerationlight red
+



+ + + +
enumerationorange
Unknown
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumUnknown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumUnknown/properties.xml new file mode 100644 index 0000000000..1192973bbe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumUnknown/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175937 + + + + + + + + 1225515577765 + -4212869106141773734 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumWithUnderscore/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumWithUnderscore/content.txt new file mode 100644 index 0000000000..8da0f70b8f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumWithUnderscore/content.txt @@ -0,0 +1,19 @@ +!3 The enum BLUE_GREEN with an underscore can be written in various ways + * Spaces added + * Underscore replaced by a single space + * Case changed +!|fitlibraryGeneric.specify.enumerator.BareEnum| + +|''enumeration''|blue_green| +---- +---- +|''enumeration''|blue _ green| + +|''enumeration''|blue green| + +|''enumeration''|blue green| + +|''enumeration''|BLUE_GREEN| + +|''enumeration''|BLUE GREEN| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumWithUnderscore/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumWithUnderscore/properties.xml new file mode 100644 index 0000000000..90e2ea9628 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/BareEnumWithUnderscore/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080727204147 + + + + + + + + 1217148107093 + -5963070565341455990 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumAndNull/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumAndNull/content.txt new file mode 100644 index 0000000000..72ec6f13f3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumAndNull/content.txt @@ -0,0 +1,29 @@ +!***< def +!define test ( +!|fitlibraryGeneric.specify.enumerator.BareEnum| + +|''enumeration''|| +---- +---- +|''enumeration''|| + +) +**! +An empty cell is interpreted as a null for an enum + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.enumerator.BareEnum
+
+ + + +
enumeration 
+



+ + + +
enumeration 
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumAndNull/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumAndNull/properties.xml new file mode 100644 index 0000000000..6159a3761b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumAndNull/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101175946 + + + + + + + + 1225515586437 + 2441205988856564624 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumWithParse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumWithParse/content.txt new file mode 100644 index 0000000000..86129a8534 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumWithParse/content.txt @@ -0,0 +1,9 @@ +!3 The enum LIGHTRED can be written in various ways + * Spaces added + * Case changed +!|fitlibraryGeneric.specify.enumerator.EnumWithParse| + +|''enumeration''|light red| +---- +---- +|''enumeration''|lightred| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumWithParse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumWithParse/properties.xml new file mode 100644 index 0000000000..fdf3c86cae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/EnumWithParse/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1217148128953 + -7949290185923323694 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ListOfEnum/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ListOfEnum/content.txt new file mode 100644 index 0000000000..f571dd6a17 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ListOfEnum/content.txt @@ -0,0 +1,15 @@ +!3 A list of enums +!**< def +!define list ( +|light red| +|blue green| +) +**! +!|fitlibraryGeneric.specify.enumerator.BareEnum| + +|''list''|${list}| +---- +---- +|''list''|${list}| + +|''list''|light red, blue green| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ListOfEnum/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ListOfEnum/properties.xml new file mode 100644 index 0000000000..aa995d3659 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/ListOfEnum/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101180001 + + + + + + + + 1225515601671 + 6806274822833507978 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/PojoEnumWithParse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/PojoEnumWithParse/content.txt new file mode 100644 index 0000000000..c2bd9dab72 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/PojoEnumWithParse/content.txt @@ -0,0 +1,3 @@ +!|fitlibraryGeneric.specify.enumerator.PojoWithEnumWithParse| + +|process|Red|is|my name is red| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/PojoEnumWithParse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/PojoEnumWithParse/properties.xml new file mode 100644 index 0000000000..1665cb9759 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/PojoEnumWithParse/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/content.txt new file mode 100644 index 0000000000..ce3e5fd61c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/content.txt @@ -0,0 +1,9 @@ +^BareEnum +^BareEnumWithUnderscore +^BareEnumFailing +^BareEnumUnknown +^EnumAndNull +^EnumWithParse +^PojoEnumWithParse +^ArrayOfEnum +^ListOfEnum diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/properties.xml new file mode 100644 index 0000000000..23564391a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyEnum/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1174201938937 + -9172690224962298793 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyNestedDo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyNestedDo/content.txt new file mode 100644 index 0000000000..99abf11785 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyNestedDo/content.txt @@ -0,0 +1,8 @@ +!|fitlibraryGeneric.specify.DomainFixtureUnderTest| + +|''actions''| + +|''colour''| +|!include ColourObject| + +|''checks''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyNestedDo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyNestedDo/properties.xml new file mode 100644 index 0000000000..c6a99058f7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyNestedDo/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080727204234 + + + + + + + + 1217148154312 + -7183487297214876692 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/BlackColour/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/BlackColour/content.txt new file mode 100644 index 0000000000..f818f2e448 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/BlackColour/content.txt @@ -0,0 +1 @@ +|''colour''|black| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/BlackColour/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/BlackColour/properties.xml new file mode 100644 index 0000000000..2276f29399 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/BlackColour/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138590715450 + 2834365309651942411 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourArrayIndexRef/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourArrayIndexRef/content.txt new file mode 100644 index 0000000000..d67a545157 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourArrayIndexRef/content.txt @@ -0,0 +1 @@ +|use|first|of|an array| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourArrayIndexRef/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourArrayIndexRef/properties.xml new file mode 100644 index 0000000000..bbe242ee5c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourArrayIndexRef/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138589359229 + 7120103681415979745 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef/content.txt new file mode 100644 index 0000000000..f0d73891b2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef/content.txt @@ -0,0 +1 @@ +|use|point|of|first|of|a list| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef/properties.xml new file mode 100644 index 0000000000..dd58a1026e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138591005727 + -7981593303680520840 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef2/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef2/content.txt new file mode 100644 index 0000000000..2ab8e634e1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef2/content.txt @@ -0,0 +1 @@ +|use|second|of|a list| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef2/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef2/properties.xml new file mode 100644 index 0000000000..5ea52f681d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourIndexRef2/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138589058848 + -69260193722691614 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRef/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRef/content.txt new file mode 100644 index 0000000000..8ba971647a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRef/content.txt @@ -0,0 +1 @@ +|''use''|''colour''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRef/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRef/properties.xml new file mode 100644 index 0000000000..4531b407b0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRef/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138580058826 + 5124443258802931777 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRefWrong/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRefWrong/content.txt new file mode 100644 index 0000000000..22b36c036a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRefWrong/content.txt @@ -0,0 +1 @@ +|use|unknown property| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRefWrong/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRefWrong/properties.xml new file mode 100644 index 0000000000..551e97ff64 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ColourRefWrong/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138594458372 + -6271847286485231167 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/MapRef/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/MapRef/content.txt new file mode 100644 index 0000000000..0008d02bb7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/MapRef/content.txt @@ -0,0 +1 @@ +|use|white|of|a nested map| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/MapRef/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/MapRef/properties.xml new file mode 100644 index 0000000000..22e3ab11d8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/MapRef/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138590643746 + -3274980178339154000 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/PointRef/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/PointRef/content.txt new file mode 100644 index 0000000000..a1536a9061 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/PointRef/content.txt @@ -0,0 +1 @@ +|use|point|of|colour| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/PointRef/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/PointRef/properties.xml new file mode 100644 index 0000000000..66c364d506 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/PointRef/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138585651418 + 4575813633459187338 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/RedColourIndexRef/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/RedColourIndexRef/content.txt new file mode 100644 index 0000000000..c9f78d9a99 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/RedColourIndexRef/content.txt @@ -0,0 +1 @@ +|use|first|of|a list| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/RedColourIndexRef/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/RedColourIndexRef/properties.xml new file mode 100644 index 0000000000..33c85b6a47 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/RedColourIndexRef/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138592921552 + 752049628105140543 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReference/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReference/content.txt new file mode 100644 index 0000000000..864c5034f0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReference/content.txt @@ -0,0 +1,11 @@ +!|fitlibrary2.specify.DomainFixtureUnderTest| + +|''colour 2''|!include -seamless ColourRef| + +|''actions''| + +|''checks''| + +|''colour 2''|!include -seamless TheColourYellow| + +|''colour 2''|!include -seamless ColourRef| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReference/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReference/properties.xml new file mode 100644 index 0000000000..6ab9bd7afa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReference/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1159060956808 + 1589641354630348654 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReferenceErrors/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReferenceErrors/content.txt new file mode 100644 index 0000000000..15176e78e3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReferenceErrors/content.txt @@ -0,0 +1,11 @@ +!|fitlibrary.specify.DomainFixtureUnderTest| + +|''colour 2''|!include -seamless ColourRefWrong| + +|''actions''| + +|''checks''| + +|''colour 2''|!include -seamless TheColourBlueGreen| + +|''colour 2''|!include -seamless ColourRef| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReferenceErrors/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReferenceErrors/properties.xml new file mode 100644 index 0000000000..13e2e3cced --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SinglePropertyReferenceErrors/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138594701631 + -734642774808314807 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedArrayReference/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedArrayReference/content.txt new file mode 100644 index 0000000000..922a06b840 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedArrayReference/content.txt @@ -0,0 +1,12 @@ +!|fitlibrary.specify.DomainFixtureUnderTest| + +|''colour 2''|!include ColourArrayIndexRef| + +|''actions''| + +|''checks''| + +|''colour 2''|!include TheColour| + +|''colour 2''|!include ColourArrayIndexRef| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedArrayReference/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedArrayReference/properties.xml new file mode 100644 index 0000000000..a3b301e026 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedArrayReference/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138589402702 + -77496653381229275 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedReference/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedReference/content.txt new file mode 100644 index 0000000000..b51c47659e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedReference/content.txt @@ -0,0 +1,17 @@ +!|fitlibrary.specify.DomainFixtureUnderTest| + +|''colour 2''|!include RedColourIndexRef| + +|''colour 3''|!include ColourIndexRef2| + +|''actions''| + +|''checks''| + +|''colour 2''|!include TheColour| + +|''colour 2''|!include RedColourIndexRef| + +|''colour 3''|!include ColourIndexRef2| + +|''colour 3''|!include TheColour3| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedReference/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedReference/properties.xml new file mode 100644 index 0000000000..67ad129b89 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyIndexedReference/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138592956913 + 5401165169280980164 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMapReference/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMapReference/content.txt new file mode 100644 index 0000000000..5dc5adb2c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMapReference/content.txt @@ -0,0 +1,13 @@ +!|fitlibrary.specify.DomainFixtureUnderTest| + +|''colour 3''|!include .FitLibraryGeneric.SpecifyReferences.MapRef| + +|''actions''| + +|''checks''| + +|''colour 3''|!include .FitLibraryGeneric.SpecifyReferences.MapRef| + +|''colour 3''|!include BlackColour| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMapReference/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMapReference/properties.xml new file mode 100644 index 0000000000..5ba728949d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMapReference/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138590706196 + -5694827085301163646 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMixedReferences/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMixedReferences/content.txt new file mode 100644 index 0000000000..e4b53cd4d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMixedReferences/content.txt @@ -0,0 +1,11 @@ +!|fitlibrary.specify.DomainFixtureUnderTest| + +|''point 2''|!include ColourIndexRef| + +|''actions''| + +|''checks''| + +|''point 2''|!include ThisPoint| + +|''point 2''|!include ColourIndexRef| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMixedReferences/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMixedReferences/properties.xml new file mode 100644 index 0000000000..fc85276f69 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyMixedReferences/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138591039586 + -5098544921103885192 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyOfPropertyReference/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyOfPropertyReference/content.txt new file mode 100644 index 0000000000..fd603ffeae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyOfPropertyReference/content.txt @@ -0,0 +1,11 @@ +!|fitlibrary.specify.DomainFixtureUnderTest| + +|''point 2''|!include .FitLibraryGeneric.SpecifyReferences.PointRef| + +|''actions''| + +|''checks''| + +|''point 2''|!include .FitLibraryGeneric.SpecifyReferences.ThePoint| + +|''point 2''|!include .FitLibraryGeneric.SpecifyReferences.PointRef| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyOfPropertyReference/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyOfPropertyReference/properties.xml new file mode 100644 index 0000000000..61b7fa2f5a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifyOfPropertyReference/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138587554574 + 8425519493641938592 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReference/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReference/content.txt new file mode 100644 index 0000000000..6e5b8890bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReference/content.txt @@ -0,0 +1,44 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!include -seamless SinglePropertyReference|!- + + +
fitlibrary2.specify.DomainFixtureUnderTest
+
+ + + +
colour 2 + + + +
usecolour
+
+
+ + +
actions
+
+ + +
checks
+
+ + + +
colour 2 + + + +
colouryellow
+
+
+ + + +
colour 2 + + + +
usecolour
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReference/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReference/properties.xml new file mode 100644 index 0000000000..0dc3434f70 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReference/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1159060932903 + 2820115825770329863 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReferenceErrors/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReferenceErrors/content.txt new file mode 100644 index 0000000000..f1eea607cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReferenceErrors/content.txt @@ -0,0 +1,43 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!include -seamless SinglePropertyReferenceErrors|!- + + +
fitlibrary.specify.DomainFixtureUnderTest
+
+ + + +
colour 2 + + + +
useunknown property
Missing method
+
+ + +
actions
+
+ + +
checks
+
+ + + +
colour 2 + + + +
colourblue-green
+
+
+ + + +
colour 2 + + + +
usecolour
expected
MyColour[blue-green] actual
+
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReferenceErrors/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReferenceErrors/properties.xml new file mode 100644 index 0000000000..bc3774506d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/SpecifySinglePropertyReferenceErrors/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1153481151026 + 2778455570142495700 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour/content.txt new file mode 100644 index 0000000000..a91d0922d4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour/content.txt @@ -0,0 +1 @@ +|''colour''|red| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour/properties.xml new file mode 100644 index 0000000000..a271c14a69 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138588422002 + 1524907663088437224 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour3/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour3/content.txt new file mode 100644 index 0000000000..ab8d25d35a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour3/content.txt @@ -0,0 +1 @@ +|''colour''|green| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour3/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour3/properties.xml new file mode 100644 index 0000000000..add372d881 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColour3/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138589127556 + -2848414991421274250 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourBlueGreen/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourBlueGreen/content.txt new file mode 100644 index 0000000000..70653a1bd7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourBlueGreen/content.txt @@ -0,0 +1 @@ +|''colour''|blue-green| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourBlueGreen/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourBlueGreen/properties.xml new file mode 100644 index 0000000000..b9a8fdf399 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourBlueGreen/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138594545938 + -4207254555820731342 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourYellow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourYellow/content.txt new file mode 100644 index 0000000000..662391de59 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourYellow/content.txt @@ -0,0 +1 @@ +|''colour''|yellow| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourYellow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourYellow/properties.xml new file mode 100644 index 0000000000..579c007d71 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/TheColourYellow/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138589849765 + -3364220722939748950 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThePoint/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThePoint/content.txt new file mode 100644 index 0000000000..5c121a279d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThePoint/content.txt @@ -0,0 +1,2 @@ +|''x''|3| +|''y''|4| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThePoint/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThePoint/properties.xml new file mode 100644 index 0000000000..c5944a54a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThePoint/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138587622612 + 6142699443335521352 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThisPoint/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThisPoint/content.txt new file mode 100644 index 0000000000..5c121a279d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThisPoint/content.txt @@ -0,0 +1,2 @@ +|''x''|3| +|''y''|4| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThisPoint/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThisPoint/properties.xml new file mode 100644 index 0000000000..3b215cd3ee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/ThisPoint/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138591074326 + 8867517649326865041 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/content.txt new file mode 100644 index 0000000000..4abb2037ac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/content.txt @@ -0,0 +1,7 @@ +^SpecifySinglePropertyReference +^SpecifySinglePropertyReferenceErrors +^SpecifyOfPropertyReference +^SpecifyIndexedReference +^SpecifyIndexedArrayReference +^SpecifyMapReference +^SpecifyMixedReferences diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/properties.xml new file mode 100644 index 0000000000..32d689384d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifyReferences/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138594389753 + 939701210721434764 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifySubTypeCollections/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifySubTypeCollections/content.txt new file mode 100644 index 0000000000..f69c6770d8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifySubTypeCollections/content.txt @@ -0,0 +1,24 @@ +!|fitlibraryGeneric.specify.DomainFixtureUnderTest| +!***< def +!define typed (||''count''| +|concrete one|3| +) +!define set ( * Set contains Colours +|''a set of attribute''|${typed}| +) +!define listAttribute (||''count''| +|concrete one|3| +) +!define colours ( * List contains Colours +|''a list of attribute''|${listAttribute}| +) +**! +${set} +${colours} + +|''actions''| + +|''checks''| + +${set} +${colours} diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifySubTypeCollections/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifySubTypeCollections/properties.xml new file mode 100644 index 0000000000..108f91943d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/SpecifySubTypeCollections/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225515610843 + 1470249121048465647 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePoint/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePoint/content.txt new file mode 100644 index 0000000000..363651aaf5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePoint/content.txt @@ -0,0 +1,2 @@ +|''x''|123| +|''y''|456| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePoint/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePoint/properties.xml new file mode 100644 index 0000000000..fd3a169c7c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePoint/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202805 + + + + + + + 1138433602287 + -465093672764266765 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePointRef/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePointRef/content.txt new file mode 100644 index 0000000000..591323ffac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePointRef/content.txt @@ -0,0 +1 @@ +|use|point|of|second|of|a list| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePointRef/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePointRef/properties.xml new file mode 100644 index 0000000000..578ef4cf35 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/ThePointRef/properties.xml @@ -0,0 +1,14 @@ + + + + + 20080727202806 + + + + + + + 1138596232343 + -4850826955200778898 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/GenericMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/GenericMethod/content.txt new file mode 100644 index 0000000000..0cb46e9b8c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/GenericMethod/content.txt @@ -0,0 +1,39 @@ +!***< def +!define t ( +|''colour''|red| + +) +!define test (!|fitlibraryGeneric.specify.unbound.MethodHasUnboundTypeVariable| + +|''actions''| + +|'''check'''|''same''|${t}|${t}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibraryGeneric.specify.unbound.MethodHasUnboundTypeVariable
+
+ + +
actions
+
+ + + + + +
check
Missing class or Missing method. Possibly:
  • Type variable T is unbound in public T fitlibraryGeneric.specify.unbound.MethodHasUnboundTypeVariable.same(T)
  • public Type check(Type1 arg1, Type2 arg2) { }
  • public Type check(Type p1, Type p2, Type p3) {}

Possibly in class:
  • fitlibraryGeneric.specify.unbound.MethodHasUnboundTypeVariable
same
+ + + +
colourred
+

+ + + +
colourred
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/GenericMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/GenericMethod/properties.xml new file mode 100644 index 0000000000..5322226065 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/GenericMethod/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225515619359 + -6127261642125267746 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundGenericArrayTypeVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundGenericArrayTypeVariable/content.txt new file mode 100644 index 0000000000..d4d9af157f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundGenericArrayTypeVariable/content.txt @@ -0,0 +1,49 @@ +!***< def +!define t ( +|green| +|red| + +) +!define test ( +!|fitlibraryGeneric.specify.unbound.ClassHasUnboundGenericArrayTypeVariable| + +|''t''|${t}| + +|''checks''| + +|''t''|${t}| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.unbound.ClassHasUnboundGenericArrayTypeVariable
+
+ + + +
t
Type variable T is unbound

+ + + + +
green
red
+
+
+ + +
checks
+
+ + + +
t
Type variable T is unbound

+ + + + +
green
red
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundGenericArrayTypeVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundGenericArrayTypeVariable/properties.xml new file mode 100644 index 0000000000..f44fb76031 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundGenericArrayTypeVariable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101180027 + + + + + + + + 1225515627937 + 1093497331867705450 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundParametricTypeVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundParametricTypeVariable/content.txt new file mode 100644 index 0000000000..66ba673db8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundParametricTypeVariable/content.txt @@ -0,0 +1,49 @@ +!***< def +!define t ( +|''colour''| +|red| + +) +!define test ( +!|fitlibraryGeneric.specify.unbound.ClassHasUnboundParametricTypeVariable| + +|''t''|${t}| + +|''checks''| + +|''t''|${t}| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.unbound.ClassHasUnboundParametricTypeVariable
+
+ + + +
t
Type variable T is unbound

+ + + + +
colour
red
+
+
+ + +
checks
+
+ + + +
t
Type variable T is unbound

+ + + + +
colour
red
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundParametricTypeVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundParametricTypeVariable/properties.xml new file mode 100644 index 0000000000..ab991fb398 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundParametricTypeVariable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101180039 + + + + + + + + 1225515639890 + -8865952520338587891 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundTypeVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundTypeVariable/content.txt new file mode 100644 index 0000000000..14c3f4f4e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundTypeVariable/content.txt @@ -0,0 +1,46 @@ +!***< def +!define t ( +|''colour''|red| + +) +!define test ( +!|fitlibraryGeneric.specify.unbound.ClassHasUnboundTypeVariable| + +|''t''|${t}| + +|''checks''| + +|''t''|${t}| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.unbound.ClassHasUnboundTypeVariable
+
+ + + +
t
Type variable T is unbound

+ + + +
colourred
+
+
+ + +
checks
+
+ + + +
t
Type variable T is unbound

+ + + +
colourred
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundTypeVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundTypeVariable/properties.xml new file mode 100644 index 0000000000..377ece1f7b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/InitialClassHasUnboundTypeVariable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101180049 + + + + + + + + 1225515649187 + -6406660563070888120 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/SuperClassHasUnboundTypeVariable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/SuperClassHasUnboundTypeVariable/content.txt new file mode 100644 index 0000000000..c16c873e13 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/SuperClassHasUnboundTypeVariable/content.txt @@ -0,0 +1,46 @@ +!**< def +!define t ( +|''colour''|red| + +) +!define test ( +!|fitlibraryGeneric.specify.unbound.SuperClassHasUnboundTypeVariable| + +|''t''|${t}| + +|''checks''| + +|''t''|${t}| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!-
+ + +
fitlibraryGeneric.specify.unbound.SuperClassHasUnboundTypeVariable
+
+ + + +
t
Type variable T is unbound

+ + + +
colourred
+
+
+ + +
checks
+
+ + + +
t
Type variable T is unbound

+ + + +
colourred
+
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/SuperClassHasUnboundTypeVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/SuperClassHasUnboundTypeVariable/properties.xml new file mode 100644 index 0000000000..33fee9ca23 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/SuperClassHasUnboundTypeVariable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101180058 + + + + + + + + 1225515658750 + -1921004789137819965 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/content.txt new file mode 100644 index 0000000000..b0e4871a99 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/content.txt @@ -0,0 +1,6 @@ +!3 There are various cases when a type variable may not be bound +^InitialClassHasUnboundTypeVariable +^InitialClassHasUnboundParametricTypeVariable +^InitialClassHasUnboundGenericArrayTypeVariable +^SuperClassHasUnboundTypeVariable +^GenericMethod diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/properties.xml new file mode 100644 index 0000000000..0e9fb1e31a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/UnboundTypeVariables/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080727202805 + + + + + + + + 1163209922037 + -1309056576379917675 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/content.txt new file mode 100644 index 0000000000..e308a1b28c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/content.txt @@ -0,0 +1,32 @@ +!2 FitLibraryGeneric supports generic classes +${fitLibrary2} mainly has an impact at the fixture code level: + * Direct use of enums (See ^SpecifyEnum) + * It takes account of the generic class type parameters for built-in classes like List as well as generic classes that are used in an application (^GenericObjects). It tracks the generic types used at runtime (thus avoiding the loss of type information that's usual in Java: so-called ''type erasure''). + * With generic collections, such as List, Set, Map, etc, ${fitLibrary2} can create objects as elements of the collection without the need for helper methods (see >GenericLists, >GenericSets, >GenericMaps). + +At the storytest table level, ${fitLibrary2} enables the use of nested lists, sets, maps and arrays (see >GenericLists, >GenericSets, >GenericMaps, ^GenericObjects). + +Note that generics don't necessarily require that nested tables be used, even though the following specifications tend to use nested tables for convenience. + +>GenericLists +>GenericSets +>GenericMaps +>GenericObjects + +>MixedCollections + +>NonGenericCollections +>GenericCollectionsUseObjectFactoryMethodToEaseMigration +>NullGenericCollections + +>GenericCalculate +>GenericDo + +>SpecifyEnum +>GenericFinder + +>SpecifySubTypeCollections +>SpecifyNestedDo +>SpecifyReferences - disabled (experimental, but will probably not be kept.) + +>UnboundTypeVariables diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/properties.xml new file mode 100644 index 0000000000..1c5cace6ee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/FitLibraryGeneric/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1228610725125 + -3021817495126795797 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/AbandonStorytest/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/AbandonStorytest/content.txt new file mode 100644 index 0000000000..c45aa31690 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/AbandonStorytest/content.txt @@ -0,0 +1,38 @@ +!2 A storytest can be abandoned, so that the rest doesn't run +When a storytest is abandoned with ''abandon storytest'', the rest of the storytest is not run and that table is coloured as ignored. This allows for test selection to be managed both in the storytest and programmatically. +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.global.ExtraGlobal
+ + +
abandon storytest
+ + +
add1
+ + +
add2
+ + +
checksum3
+ + +
checksum4
-!|!- + +
fitlibrary.specify.global.ExtraGlobal
+ + +
abandon storytest
+ + +
add1
+ + +
add2
+ + +
checksum3
+ + +
checksum4
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/AbandonStorytest/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/AbandonStorytest/properties.xml new file mode 100644 index 0000000000..3ab43b98aa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/AbandonStorytest/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1254091626229 + -6132655432696490165 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/ElapsedTimesAdded/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/ElapsedTimesAdded/content.txt new file mode 100644 index 0000000000..c5c95669fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/ElapsedTimesAdded/content.txt @@ -0,0 +1,27 @@ +Can request that elapsed time information is added to tables. + +The setting applies to this and subsequent storytests (until it's changed), so it can be set at a suite level (eg, in ''!-SuiteSetUp-!''). + +The timing information is in milliseconds. + +The timing information has a tooltip which gives date/time information. + +|''runtime configuration''| +|''add timings''|true| + +|''start stop watch''| + +|''stop watch''|<|200| + +|''sleep for''|20| + +|''stop watch''|<|200| + +|''sleep for''|100| + +|''stop watch''|<|200| + +|''runtime configuration''| +|''add timings''|false| + +|''stop watch''|>|100| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/ElapsedTimesAdded/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/ElapsedTimesAdded/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/ElapsedTimesAdded/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/FileProcessing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/FileProcessing/content.txt new file mode 100644 index 0000000000..bd472ca20b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/FileProcessing/content.txt @@ -0,0 +1,51 @@ +The ''file'' global action gives access to several actions (in the same table) for manipulating files. + +As well as the standard File methods, it provides an easy way to read and write data to files. + +|''file''|!-FitNesseRoot-!| +|''directory''|'''is'''|true| +|'''show'''|''absolute path''| +|'''show'''|''last modified''| +|'''show'''|''list''| +|'''show'''|''length''| + +|''file''|!-FitNesseRoot/files/tempExample.txt-!| +|''write''|Some text| +|'''show'''|''length''| +|''append''|Some text| +|'''show'''|''length''| +|''directory''|'''is'''|false| +|'''show'''|''absolute path''| +|'''show'''|''last modified''| +|'''show'''|''list''| +|'''show'''|''read''| +|''delete''| +|''exists''|'''is'''|false| + +Standard Java ''File'' methods that may be useful: + + * createNewFile() + * delete() + * deleteOnExit() + * exists() + * getAbsolutePath() + * getName() + * getParent() + * getPath() + * isAbsolute() + * isDirectory() + * isFile() + * isHidden() + * lastModified() + * length() + * list() + * mkdir() + * mkdirs() + +Additional actions for reading/writing/appending files are: + + * write(String) + * writeUnicode(String) + * append(String) + * appendUnicode(String) + * String read() diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/FileProcessing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/FileProcessing/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/FileProcessing/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/DoesNotMatch/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/DoesNotMatch/content.txt new file mode 100644 index 0000000000..0f7cd38a2e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/DoesNotMatch/content.txt @@ -0,0 +1,27 @@ +!**< def +!define group {(.*)} +!define test (|''harvest''|match, stick|''using pattern''|pre${group};${group}post|''from''|preMatch,Stickpost| + +|''get''|@{match}-@{stick}|'''is'''|@{match}-@{stick}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + + + + + + +
harvest
Pattern doesn't match
match, stickusing patternpre(.*);(.*)postfrompreMatch,Stickpost
+
+ + + + + +
get@{match}-@{stick}is@{match}-@{stick}
+-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/DoesNotMatch/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/DoesNotMatch/properties.xml new file mode 100644 index 0000000000..10d4bd9fdc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/DoesNotMatch/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1247538757861 + 8758385271721807253 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/HarvestSucceeds/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/HarvestSucceeds/content.txt new file mode 100644 index 0000000000..f40cdbfeea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/HarvestSucceeds/content.txt @@ -0,0 +1,3 @@ +|''harvest''|match, stick|''using pattern''|pre(.*),(.*)post|''from''|preMatch,Stickpost| + +|''get''|@{match}-@{stick}|'''is'''|Match-Stick| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/HarvestSucceeds/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/HarvestSucceeds/properties.xml new file mode 100644 index 0000000000..6dd5054e58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/HarvestSucceeds/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1247538579644 + -4247708827415203736 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/NotEnoughGroups/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/NotEnoughGroups/content.txt new file mode 100644 index 0000000000..5fb9a64209 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/NotEnoughGroups/content.txt @@ -0,0 +1,25 @@ +!**< def +!define group {(.*)} +!define test (|''harvest''|match, stick|''using pattern''|pre${group}|''from''|preMatch,Stickpost| + +|''get''|@{match}-@{stick}|'''is'''|@{match}-@{stick}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + + + + + + +
harvest
Expected 2 bracketed groups, but there is only 1
match, stickusing patternpre(.*)frompreMatch,Stickpost
+
+ + + + + +
get@{match}-@{stick}is@{match}-@{stick}
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/NotEnoughGroups/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/NotEnoughGroups/properties.xml new file mode 100644 index 0000000000..fe34f49cb2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/NotEnoughGroups/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1247539154984 + 6194502252301310516 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/content.txt new file mode 100644 index 0000000000..4f448ce503 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/content.txt @@ -0,0 +1,3 @@ +^HarvestSucceeds +^DoesNotMatch +^NotEnoughGroups diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/properties.xml new file mode 100644 index 0000000000..768772b8a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/HarvestFromText/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090714143944 + + + + + + + + + 1247538467051 + -4258993236477606882 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/DefinedActions/content.txt new file mode 100644 index 0000000000..60761d617e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/DefinedActions/content.txt @@ -0,0 +1,3 @@ +|an act|m| + +|''log text''|@{m}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/DefinedActions/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/DefinedActions/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/content.txt new file mode 100644 index 0000000000..5a8fc763a2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/content.txt @@ -0,0 +1,11 @@ +!2 '''logged''' logs the result of an action, if any +# +|''log text''|Here's a message| + +|''define actions at''|.FitLibrary.SpecifiCations.GlobalActionsProvided.LogText.DefinedActions| + +|''an act''|A message| + +|''set expand defined actions''|true| + +|''an act''|A message| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/LogText/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/OnErrorListener/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/OnErrorListener/content.txt new file mode 100644 index 0000000000..eeb95cb6c0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/OnErrorListener/content.txt @@ -0,0 +1,126 @@ +!**< def +!define test1 (!|fitlibrary.specify.global.OnErrorHandler| + +|''fails''| + +|''exceptions''| + +|''exceptions''| + +|''fails''| +) +!define test2 (!|fitlibrary.specify.global.OnErrorHandler| + +|'''inform on fail or error in storytest'''|''listener''| + +|''fails''| + +|''exceptions''| + +|''exceptions''| + +|''fails''| +) +*! +!3 This is a technical action, intended for programmers. +# +By default, a storytest continues running through to the end. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + + +
fitlibrary.specify.global.OnErrorHandler
+
+ + + +
fails
+
+ + + +
exceptions
error
+
+ + + +
exceptions
error
+
+ + + +
fails
-!| + +An on-error listener may be registered with ''!-FitLibrary-!'', so that is stops after 2 exceptions. + +In the following, we add a show cell each time the stopOnError() method is called. + +When there have been 2 errors, an extra show cell is added to show that, and it stops: + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test2}|!- + + + +
fitlibrary.specify.global.OnErrorHandler
+
+ + + + +
inform on fail or error in storytestlistener
+
+ + + +
failsstopOnError with 1 fails and 0 errors
+
+ + + +
exceptions
error
stopOnError with 1 fails and 1 errors
+
+ + + +
exceptions
error
stopOnError with 1 fails and 2 errorsStopping
+
+ + + +
fails
-!| + +''!-OnErrorHandler-!'' is as follows: +{{{public class OnErrorHandler implements RuntimeContextual, OnError { + private RuntimeContextInternal runtime; + + public boolean stopOnError(int fails, int errors) { + runtime.currentRow().addShow("stopOnError with "+fails+" fails and "+errors+" errors"); + if (errors >= 2) + runtime.currentRow().addShow("Stopping"); + return errors >= 2; + } + + public Object listener() { + return this; + } + + public boolean fails() { + return false; + } + + public boolean exceptions() { + throw new FitLibraryException("error"); + } + + public Object getSystemUnderTest() { + return null; + } + + public void setRuntimeContext(RuntimeContextInternal runtime) { + this.runtime = runtime; + } +} +}}} \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/OnErrorListener/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/OnErrorListener/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/OnErrorListener/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/RelativeFileHandling/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/RelativeFileHandling/content.txt new file mode 100644 index 0000000000..303a59bfc1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/RelativeFileHandling/content.txt @@ -0,0 +1,25 @@ +The ''file'' global action gives access to several actions (in the same table) for manipulating files. + +As well as the standard File methods, it provides an easy way to read and write data to files. + +|''relative file''|.| +|''directory''|'''is'''|true| +|'''show'''|''absolute path''| +|'''show'''|''last modified''| +|'''show'''|''list''| +|'''show'''|''length''| + +|''relative file''|tempExample.txt| +|''write''|Some text| +|'''show'''|''length''| +|''append''|Some text| +|'''show'''|''length''| +|''directory''|'''is'''|false| +|'''show'''|''absolute path''| +|'''show'''|''last modified''| +|'''show'''|''list''| +|'''show'''|''read''| +|''delete''| +|''exists''|'''is'''|false| + +See FileProcessing for a list of further actions that also apply here. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/RelativeFileHandling/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/RelativeFileHandling/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/RelativeFileHandling/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/SetSystemProperty/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/SetSystemProperty/content.txt new file mode 100644 index 0000000000..8d7ae79448 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/SetSystemProperty/content.txt @@ -0,0 +1,7 @@ + * The following sets the system property: + +|''set system property''|abc|''to''|def| + + * And it also sets the corresponding dynamic variable: + +|''get''|@{abc}|'''is'''|def| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/SetSystemProperty/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/SetSystemProperty/properties.xml new file mode 100644 index 0000000000..819551d626 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/SetSystemProperty/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1253746280376 + 4993344144509653399 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StopWatch/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StopWatch/content.txt new file mode 100644 index 0000000000..fea928a027 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StopWatch/content.txt @@ -0,0 +1,65 @@ +!**< def +!define test (|''start stop watch''| + +|''stop watch''|<|200| + +|''sleep for''|20| + +|''stop watch''|<|200| + +|''sleep for''|100| + +|''stop watch''|<|200| + +|''stop watch''|>|100| +) +**! +A stopwatch is handy if you want a storytest to fail if too much time has elapsed. That is, it can be used to test performance. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
start stop watch
+
+ + + + +
stop watch<200
+
+ + + +
sleep for20
+
+ + + + +
stop watch<200
+
+ + + +
sleep for100
+
+ + + + +
stop watch<200
+
+ + + + +
stop watch>100
-!| + +|''start stop watch''| + +|''sleep for''|20| + +|'''show'''|''stop watch''| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StopWatch/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StopWatch/properties.xml new file mode 100644 index 0000000000..733a4b9230 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StopWatch/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254347868205 + 7341229692732829801 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StoppingOnErrors/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StoppingOnErrors/content.txt new file mode 100644 index 0000000000..3fd592a420 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StoppingOnErrors/content.txt @@ -0,0 +1,293 @@ +!**< def +!define test1 (!|fitlibrary.specify.workflow.PojoGivesErrorsAndFails| + +|''returns false''|'''is'''|true| + +|''throws exception''|'''is'''|3| + +|''returns false''|'''is'''|true| + +|''throws exception''|'''is'''|3| +) +!define test2 (!|fitlibrary.specify.workflow.PojoGivesErrorsAndFails| + +|''set stop on error''|true| + +|''returns false''|'''is'''|true| + +|''throws exception''|'''is'''|3| + +|''returns false''|'''is'''|true| + +|''throws exception''|'''is'''|3| +) +!define test3 (!|fitlibrary.specify.workflow.PojoGivesErrorsAndFails| + +|''set stop on error''|true| + +|''throws exception''|'''is'''|3| + +|''returns false''|'''is'''|true| + +|''throws exception''|'''is'''|3| +) +!define test4 (!|fitlibrary.specify.workflow.PojoGivesErrorsAndFails| + +|''runtime configuration''| +|''stop after''|2|''errors or''|2|''fails''| + +|''returns false''|'''is'''|true| + +|''throws exception''|'''is'''|3| + +|''returns false''|'''is'''|true| + +|''throws exception''|'''is'''|3| +) +!define test5 (!|fitlibrary.specify.workflow.PojoGivesErrorsAndFails| + +|''runtime configuration''| +|''stop after''|2|''errors or''|2|''fails''| + +|''throws exception''|'''is'''|3| + +|''returns false''|'''is'''|true| + +|''throws exception''|'''is'''|3| + +|''returns false''|'''is'''|true| +) +**! +Sometimes a storytest can take more than a few seconds to run, such as with web testing. + +Once an error or two occurs, the following errors tend to be irrelevant anyway, so there's not point wasting time by continuing. + +For example, when a click on a link fails because the link is not there, there's little point in testing the contents of the expected page. +# +!2 1. Here's what happens by default: +# +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + + +
fitlibrary.specify.workflow.PojoGivesErrorsAndFails
+
+ + + + + +
returns falseistrue expected
false actual
+
+ + + + + +
throws exceptionis3
error
+
+ + + + + +
returns falseistrue expected
false actual
+
+ + + + + +
throws exceptionis3
error
-!| +# +!2 2. Stop on any error or fail +# +To stop a storytest on errors, one approach is to stop on any error or fail (yellow or red). + +In the following, we stop on a fail (red). The setting applies to this and subsequent storytests (until it's changed), so it can be set at a suite level (eg, in ''!-SuiteSetUp-!''). + +The rest of the tables are marked in gray to show they've been ignored: + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test2}|!- + + + +
fitlibrary.specify.workflow.PojoGivesErrorsAndFails
+
+ + + + +
set stop on errortrue
+
+ + + + + +
returns falseistrue expected
false actual
+
+ + + + + +
throws exceptionis3
+
+ + + + + +
returns falseistrue
+
+ + + + + +
throws exceptionis3
-!| + +In the following, we stop on an error (yellow): + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test3}|!- + + + +
fitlibrary.specify.workflow.PojoGivesErrorsAndFails
+
+ + + + +
set stop on errortrue
+
+ + + + + +
throws exceptionis3
error
+
+ + + + + +
returns falseistrue
+
+ + + + + +
throws exceptionis3
-!| +# +!2 3. Finer-scale control of stopping +# +Here we stop after 2 fails: + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test4}|!- + + + +
fitlibrary.specify.workflow.PojoGivesErrorsAndFails
+
+ + + + + + + + + + +
runtime configuration
stop after2errors or2fails
+
+ + + + + +
returns falseistrue expected
false actual
+
+ + + + + +
throws exceptionis3
error
+
+ + + + + +
returns falseistrue expected
false actual
+
+ + + + + +
throws exceptionis3
-!| + +Here we stop after 2 errors: + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test5}|!- + + + +
fitlibrary.specify.workflow.PojoGivesErrorsAndFails
+
+ + + + + + + + + + +
runtime configuration
stop after2errors or2fails
+
+ + + + + +
throws exceptionis3
error
+
+ + + + + +
returns falseistrue expected
false actual
+
+ + + + + +
throws exceptionis3
error
+
+ + + + + +
returns falseistrue
-!| + +!2 4. Stopping when response is too slow +# +It can be handy to test that things happen within a given expected response time. + +A stopwatch can be used to do this. See: .FitLibrary.SpecifiCations.GlobalActionsProvided.StopWatch diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StoppingOnErrors/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StoppingOnErrors/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/StoppingOnErrors/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/AnnotationsForHelp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/AnnotationsForHelp/content.txt new file mode 100644 index 0000000000..0a4fcfef9e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/AnnotationsForHelp/content.txt @@ -0,0 +1,96 @@ +!2 1. Help by default +# +By default, ''help'' reflects on the methods of each object that is in scope and displays information about them. + + * It can determine the method name and the types of the parameters, but that's all + * It cannot determine how to break the method name up into keywords, so can't show it in the standard ''!-DoFixture-!'' style of alternating keywords and data. + * I suppose it could reflect on the javaDocs, but I'm not sure that that would help very often. + * I will later consider how to handle annotations for methods in classes that cannot be changed. + * An advanced tutorial will be added that explains ''scope'' and the general execution model of ''!-FitLibrary-!'' +# +!2 2. Providing better help by adding annotations +# +The methods that are available as actions in ''!-FitLibrary-!'' have had annotations added to them. + +These annotations can also be used for your fixturing code, if you wish. However, if you don't want to use this approach with your fixturing code, simply add the class annotation below. + +There are 5 different annotations, although you probably only need the first 4. Let's start with the class annotation. +# +!2 3. ''!-@ShowSelectedActions-!'' +# +If this annotation is added to a class or interface, then only the methods with action-specific annotations will be listed. + +Here's an example: +{{{ @ShowSelectedActions + public class AbstractFileHandler implements DomainAdapter {...} +}}} +If this annotation is not added to the class of an object in scope, then a method will be listed unless it has an annotation to ignore it (see below). +# +!2 4. ''!-@SimpleAction-!'' +# +This annotation has two elements, as can be seen in the example below: + + * ''wiki'' contains the HTML text for the action, and can contain unicode. The italics/bold tags will affect the display, but won't be copied by the user. + * ''tooltip'' contains the text that is shown when the user hovers the mouse over the displayed action. + * The ''tooltip'' can contain \n. + * Any double-quote in the ''tooltip'' will be changed to a single quote (due to limitations of Javascript). + * The ''tooltip'' text is plain text; html tags do not affect the formatting. + +Here's an example: +{{{ @SimpleAction(wiki="|''write''|contents|", + tooltip="Write the contents to the file.") + public void write(String content) throws IOException {...} +}}} +# +!2 4. ''!-@NullaryAction-!'' +# +This annotation has one element, as can be seen in the example below. This is the tooltip, as in ''!-@SimpleAction-!''. + +Where an action has no arguments, the name can usually be generated automatically from the method name (with appropriate formatting). So using this saves some effort. + +But the result will not be right if: + + * You want to retain capitals or some camel casing in your action name. + * The action uses special characters, such as "$", which are translated into text, such as "dollar" by ''!-FitLibrary-!'' when looking up a method for an action. + * You use unicode + +In which case, use ''!-@SimpleAction-!'' instead. + +Here's an example from ''!-AbstractFileHandler-!'': +{{{ @NullaryAction(tooltip="Read the contents of the file, so we can use it or check (parts of) it.") + public String read() throws IOException {...} +}}} +# +!2 5. ''!-@CompoundAction-!'' +# +This is intended for actions that return an object, for further actions to be carried out on the result. Eg, this is used with the ''!-FileHandler-!'' that's returned from the ''file'' action. + +This annotation has two elements, the same as with ''!-@SimpleAction-!'', as can be seen in the example below. + +As well as displaying details of this action, this also displays the extra actions that are available in the rest of the table. + +Here's an example from ''!-GlobalActionScope-!'': +{{{ @CompoundAction(wiki="|''file''|absolute file name|", + tooltip="Access the given file and allow actions on it in the rest of the table.") + public FileHandler file(String fileName) {...} + +}}} +# +!2 5. ''!-@AnAction-!'' +# +This is the most general, and you'll only need to use it if you want to explicitly ignore a method or if you've written your own ''special actions''. + +This annotation has 4 elements, as can be seen in the example below: + + * ''wiki'', as above. If this is the empty string, this will be automatically generated from the method name. + * ''tooltip'', as above. + * ''actionType'', which is one of: + * SIMPLE, this is not really needed, as it's covered by the annotations above + * PREFIX, for a ''special'' action that appears at the start of the row, such as '''show'''. The string "action...|" is automatically added to the end of the wiki. + * SUFFIX, for a ''special'' action that appears at the end of the row, such as '''is'''. + * SELF_FORMAT, for a PREFIX that needs specialised formatting of the wiki, such as '''check''', because of the expected value on the end of the row. + * IGNORE, so that the action is not listed + * ''isCompound'', which is true if the action is a compound action (in the sense of ''!-@CompoundAction-!'' above) + +See the ''!-FitLibrary-!'' class ''!-GlobalActionScope-!'' for examples of the use of these. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/AnnotationsForHelp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/AnnotationsForHelp/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/AnnotationsForHelp/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/content.txt new file mode 100644 index 0000000000..c09bdc9248 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/content.txt @@ -0,0 +1,43 @@ +Run ('''Test''') this page to see the help documentation. + +!2 1. Actions always available +# +Here are the actions that are always available: + +|''help''| + +Notice that they have tooltips, with further information. The display is designed to make it easy to copy and paste an action, before altering any arguments. + +!2 2. Now we add an object +# +Now we add an object, so it's added to the scope: + +!|fitlibrary.specify.workflow.Keywords| + +And the actions are now extended: + +|''help''| + +Notice that the first few actions are not in flow style (alternating keywords and data) and don't have tooltips. That's because there is no documentation associated with them. + +If you need better documentation, ask the developer of the fixturing code to do some work. Here's how: ^AnnotationsForHelp + +!2 3. Add another object +# +Let's add an object into scope (and this has a chain of System Under Tests - ignore that if it doesn't make sense to you): + +|'''also run'''|''add object''| + +|''help''| + +!2 4. Finding some help +# +We can also look for actions with some text in the name or the tooltip associated with it: + +|''help with''|show| + +|''help with''|<| + +|''help with''|greater| + +|''help with''|file| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/WhatIsInScope/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/content.txt new file mode 100644 index 0000000000..2dc0ab6547 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/content.txt @@ -0,0 +1,7 @@ +!contents + +Also see SpecialActions + +^OnErrorListener + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GlobalActionsProvided/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GoingIntoFlow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GoingIntoFlow/content.txt new file mode 100644 index 0000000000..db13005e0d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GoingIntoFlow/content.txt @@ -0,0 +1,51 @@ +!2 If we start in non-flow, such as with a column fixture, when we hit a table later in the storytest that can be used in flow, it will be + +!**< def +!define test (!|fit.specify.MyColumnFixture| +|x|x?| +|0|0| +|1|1| + +!|fitlibrary.specify.SystemUnderTest| + +|int property|is|2| + +!|fitlibrary.specify.SystemUnderTest| + +|int property|is|2| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + + + + + + + + + +
fit.specify.MyColumnFixture
xx?
00
11
+
+ + +
fitlibrary.specify.SystemUnderTest
+
+ + + + +
int propertyis2
+
+ + +
fitlibrary.specify.SystemUnderTest
+
+ + + + +
int propertyis2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GoingIntoFlow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GoingIntoFlow/properties.xml new file mode 100644 index 0000000000..6b33e91684 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/GoingIntoFlow/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1232247860562 + 4548066656572392348 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasing/content.txt new file mode 100644 index 0000000000..207cd5091b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasing/content.txt @@ -0,0 +1,72 @@ +Extended camel is used with all of ${fitLibrary}, taking camel casing one step further. It converts a name into a valid identifier in the language concerned. For example, in Java the name "% discount" is translated into "percent discount", which is then camel-cased into "percentDiscount". + +|!-fitlibrary.specify.utility.CamelCase-!| + +|''calculate''| +|name || identifier | +|" hi " || quoteHiQuote | +|^`{}~ || caretBackquoteLeftBraceRightBraceTilde | +|two words || twoWords | +|2 words || twoWords | +|cost $ || costDollar | +|!! || bangBang | +|meet @ || meetAt | +|rick@rimuResearch.com || rickAtRimuResearchDotCom | +| || blank | + +|''calculate''| +|name || identifier | +|abstract||abstract_| +|assert||assert_| +|boolean||boolean_| +|break||break_| +|byte||byte_| +|case || case_ | +|catch || catch_ | +|char||char_| +|class || class_ | +|const||const_| +|continue||continue_| +|default||default_| +|do || do_ | +|double||double_| +|else || else_ | +|enum||enum_| +|extends || extends_ | +|false||false_| +|final||final_| +|finally || finally_ | +|float||float_| +|for || for_ | +|goto||goto_| +|if || if_ | +|implements || implements_ | +|import||import_| +|instanceof || instanceof_ | +|int||int_| +|interface || interface_ | +|long||long_| +|native||native_| +|new||new_| +|null || null_ | +|package||package_| +|private || private_ | +|protected || protected_ | +|public || public_ | +|return || return_ | +|short||short_| +|static || static_ | +|strictfp||strictfp_| +|super || super_ | +|switch||switch_| +|synchronized||synchronized_| +|this || this_ | +|throws || throws_ | +|throw || throw_ | +|transient||transient_| +|true||true_| +|try||try_| +|void||void_| +|volatile||volatile_| +|while||while_| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasing/properties.xml new file mode 100644 index 0000000000..34a78fbe33 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasing/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232248118546 + -2042773325074458090 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasingUnicode/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasingUnicode/content.txt new file mode 100644 index 0000000000..aff65188bc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasingUnicode/content.txt @@ -0,0 +1,22 @@ +|!-fitlibrary.specify.utility.CamelCase-!| + +|''calculate''| +|name || identifier | +|Δ||u3B4| +|Ελληνικό||u3B5u3BBu3BBu3B7u3BDu3B9u3BAu3CC| +|█||u2588 | + + * Here we configure it to keep unicode characters that are permissible in Java identifiers + +|''runtime configuration''| +|''keep unicode''|true| + +|''calculate''| +|name || identifier | +|Δ||δ| +|Ελληνικό||ελληνικό| +|█||u2588 | +|█Ελληνικό||u2588Ελληνικό| + +|''runtime configuration''| +|''keep unicode''|false| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasingUnicode/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasingUnicode/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/CamelCasingUnicode/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ClassParsing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ClassParsing/content.txt new file mode 100644 index 0000000000..a87ecb5a54 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ClassParsing/content.txt @@ -0,0 +1,42 @@ +!2 A Class type is parsed as the Java full class name + +!**< def +!define test (!|fitlibrary.specify.parser.ParserUnderTest| + +!|valid| +|class name| +|fitlibrary.specify.parser.ParserUnderTest| +|java.awt.Point| + +!|invalid| +|class name| +|| +|ParserUnderTest| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.parser.ParserUnderTest
+
+ + + + + + + + +
valid
class name
fitlibrary.specify.parser.ParserUnderTest
java.awt.Point
+
+ + + + + + + + +
invalid
class name

Unable to parse "" of type
ParserUnderTest
Unable to parse "ParserUnderTest" of type
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ClassParsing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ClassParsing/properties.xml new file mode 100644 index 0000000000..0920ec345b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ClassParsing/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513646921 + 6567777745145257565 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/AmbiguousActionMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/AmbiguousActionMethod/content.txt new file mode 100644 index 0000000000..0d8f0d9f87 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/AmbiguousActionMethod/content.txt @@ -0,0 +1,16 @@ +!**< def +!define test (!|fitlibrary.specify.exception.AmbiguousActionMethod| + +|overloaded|1| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.AmbiguousActionMethod
+
+ + + +
overloaded
  • "overloaded" is ambiguous
1
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/AmbiguousActionMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/AmbiguousActionMethod/properties.xml new file mode 100644 index 0000000000..8b277ee4b8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/AmbiguousActionMethod/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513655062 + 3946922215693201344 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ConstructorNotVisible/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ConstructorNotVisible/content.txt new file mode 100644 index 0000000000..415ab77c2d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ConstructorNotVisible/content.txt @@ -0,0 +1,10 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ConstructorNotVisible| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ConstructorNotVisible
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ConstructorNotVisible/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ConstructorNotVisible/properties.xml new file mode 100644 index 0000000000..9e4a594a76 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ConstructorNotVisible/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101172744 + + + + + + + + 1225513664484 + -2273486401306420008 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByAction/content.txt new file mode 100644 index 0000000000..266955d38d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByAction/content.txt @@ -0,0 +1,41 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ExceptionThrownByAction| + +|thrown|1| + +|thrown|2| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|2|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByAction
+
+ + + +
thrown
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByAction.thrown +
1
+
+ + + +
thrown
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByAction.thrown +
2
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored2exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByAction/properties.xml new file mode 100644 index 0000000000..e008e0400e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByAction/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513673000 + 9032722720833368132 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByEquals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByEquals/content.txt new file mode 100644 index 0000000000..7272b8bea1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByEquals/content.txt @@ -0,0 +1,33 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ExceptionThrownByEquals| + +|'''check'''|''user''|S.H. Ow| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByEquals
+
+ + + + +
checkuserS.H. Ow
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByEquals$User.equals +
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByEquals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByEquals/properties.xml new file mode 100644 index 0000000000..32beff0195 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByEquals/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513685734 + -2722336059072597517 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByFinder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByFinder/content.txt new file mode 100644 index 0000000000..633be7a2cc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByFinder/content.txt @@ -0,0 +1,34 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ExceptionThrownByFinder| + +|''charge''|fin Der|''with''|120.00| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByFinder
+
+ + + + + +
chargefin Der
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByFinder.findUser +
with120.00
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByFinder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByFinder/properties.xml new file mode 100644 index 0000000000..a88b60948b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByFinder/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513694718 + -7265593487253763437 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInCollection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInCollection/content.txt new file mode 100644 index 0000000000..813a6b4d43 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInCollection/content.txt @@ -0,0 +1,40 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ExceptionThrownByGetterInCollection| + +|users| +|name| +|For Ced| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|2|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByGetterInCollection
+
+ + + + + + + +
users
name
For Ced
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByGetterInCollection$User.getName +
missing
 
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByGetterInCollection$User.getName( +
surplus
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored2exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInCollection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInCollection/properties.xml new file mode 100644 index 0000000000..295824f9c3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInCollection/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513704000 + -4535398124262447200 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedCollection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedCollection/content.txt new file mode 100644 index 0000000000..f7e62ec825 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedCollection/content.txt @@ -0,0 +1,45 @@ +!**< def +!define users (|name| +|For Ced| +) +!define test (!|fitlibrary.specify.exception.ExceptionThrownByGetterInCollection| + +|departments| +|users| +|${users}| + +|''expected test results''|0|''right''|2|''wrong''|0|''ignored''|2|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByGetterInCollection
+
+ + + + + + + +
departments
users
+ + + + + +
name
For Ced
fitlibrary.specify.exception.ForcedException
missing
 
fitlibrary.specify.exception.ForcedException
surplus
missing
A user surplus
+
+ + + + + + + + + + +
expected test results0right2wrong0ignored2exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedCollection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedCollection/properties.xml new file mode 100644 index 0000000000..85a8a00233 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedCollection/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1228533478812 + -4948638857284938310 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedObject/content.txt new file mode 100644 index 0000000000..19410dca1a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedObject/content.txt @@ -0,0 +1,42 @@ +!**< def +!define boss (|name|For Ced| +) +!define test (!|fitlibrary.specify.exception.ExceptionThrownByGetter| + +|check user| +|boss|${boss}| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByGetter
+
+ + + + + +
check user
boss + + + +
nameFor Ced
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByGetter$User.getName +
+
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedObject/properties.xml new file mode 100644 index 0000000000..e448860880 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInNestedObject/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513750000 + 2725997589146552013 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInObject/content.txt new file mode 100644 index 0000000000..e2529b3a8c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInObject/content.txt @@ -0,0 +1,41 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ExceptionThrownByGetter| + +|check user| +|name|For Ced| +|name|For Ced| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|2|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByGetter
+
+ + + + + + + + +
check user
nameFor Ced
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByGetter$User.getName +
nameFor Ced
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByGetter$User.getName +
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored2exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInObject/properties.xml new file mode 100644 index 0000000000..8327a70750 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByGetterInObject/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513763140 + -2415089888428931037 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedEquals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedEquals/content.txt new file mode 100644 index 0000000000..3aa29c5edc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedEquals/content.txt @@ -0,0 +1,40 @@ +!**< def +!define project (|''leader''|fin Der| +) +!define test (!|fitlibrary.specify.exception.ExceptionThrownByNestedEquals| + +|'''check'''|''project''|${project}| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByNestedEquals
+
+ + + + +
checkproject + + + +
leaderfin Der
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByNestedEquals$User.equals +
+
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedEquals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedEquals/properties.xml new file mode 100644 index 0000000000..9be032fa4b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedEquals/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513771890 + -6301703336064515964 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedFinder/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedFinder/content.txt new file mode 100644 index 0000000000..2a9332dc9e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedFinder/content.txt @@ -0,0 +1,41 @@ +!**< def +!define project (|''leader''|fin Der| +) +!define test (!|fitlibrary.specify.exception.ExceptionThrownByNestedFinder| + +|''add''|${project}|''to project''|Pro Ject| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByNestedFinder
+
+ + + + + +
add + + + +
leaderfin Der
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByNestedFinder.findUser +
+
to projectPro Ject
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedFinder/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedFinder/properties.xml new file mode 100644 index 0000000000..0bc67b1925 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedFinder/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513781703 + -6184829821007424150 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedParse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedParse/content.txt new file mode 100644 index 0000000000..b9272dc9bc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedParse/content.txt @@ -0,0 +1,40 @@ +!**< def +!define value (|''colour''|red| +) +!define test (!|fitlibrary.specify.exception.ExceptionThrownByNestedParse| + +|'''check'''|''value''|${value}| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByNestedParse
+
+ + + + +
checkvalue + + + +
colourred
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByNestedParse$Colour.parse +
+
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedParse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedParse/properties.xml new file mode 100644 index 0000000000..25b088df58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedParse/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513791000 + 1058688530854785172 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedShow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedShow/content.txt new file mode 100644 index 0000000000..93ba2a182e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedShow/content.txt @@ -0,0 +1,40 @@ +!**< def +!define project (|''leader''|fin Der| +) +!define test (!|fitlibrary.specify.exception.ExceptionThrownByNestedShow| + +|'''check'''|''project''|${project}| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByNestedShow
+
+ + + + +
checkproject + + + +
leaderfin Der
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByNestedShow.showUser +
+
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedShow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedShow/properties.xml new file mode 100644 index 0000000000..29855f3104 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedShow/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513799000 + -9068027781804280080 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedToString/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedToString/content.txt new file mode 100644 index 0000000000..8a6b9daeb5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedToString/content.txt @@ -0,0 +1,40 @@ +!**< def +!define value (|''colour''|red| +) +!define test (!|fitlibrary.specify.exception.ExceptionThrownByNestedToString| + +|'''check'''|''value''|${value}| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByNestedToString
+
+ + + + +
checkvalue + + + +
colourred
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByNestedToString$Colour.toString +
+
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedToString/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedToString/properties.xml new file mode 100644 index 0000000000..2953e7dc2c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByNestedToString/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513809828 + 9114203150139750086 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByParse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByParse/content.txt new file mode 100644 index 0000000000..45e6cacdb5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByParse/content.txt @@ -0,0 +1,33 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ExceptionThrownByParse| + +|'''check'''|''value''|12| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByParse
+
+ + + + +
checkvalue12
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByParse$Value.parse +
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByParse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByParse/properties.xml new file mode 100644 index 0000000000..3c1209b054 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByParse/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513820968 + -2756135458839350195 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInNestedObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInNestedObject/content.txt new file mode 100644 index 0000000000..440921a7e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInNestedObject/content.txt @@ -0,0 +1,43 @@ +!**< def +!define boss ( +|name|For Ced| +) +!define test (!|fitlibrary.specify.exception.ExceptionThrownBySetter| + +|''create user''| +|boss|${boss}| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownBySetter
+
+ + + + + +
create user
boss
+ + + +
nameFor Ced
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownBySetter$User.setName +
+
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInNestedObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInNestedObject/properties.xml new file mode 100644 index 0000000000..769a4c6b92 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInNestedObject/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513830453 + 1418669249577888121 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInObject/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInObject/content.txt new file mode 100644 index 0000000000..a00300f3a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInObject/content.txt @@ -0,0 +1,41 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ExceptionThrownBySetter| + +|''create user''| +|name|For Ced| +|name|For Ced| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|2|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownBySetter
+
+ + + + + + + + +
create user
nameFor Ced
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownBySetter$User.setName +
nameFor Ced
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownBySetter$User.setName +
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored2exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInObject/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInObject/properties.xml new file mode 100644 index 0000000000..4f28402c8f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownBySetterInObject/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513839078 + -64142797005697629 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByShow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByShow/content.txt new file mode 100644 index 0000000000..cc6a2f2d6c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByShow/content.txt @@ -0,0 +1,33 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ExceptionThrownByShow| + +|'''check'''|''user''|S.H. Ow| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByShow
+
+ + + + +
checkuserS.H. Ow
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByShow.showUser +
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByShow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByShow/properties.xml new file mode 100644 index 0000000000..cbf07976fb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByShow/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513849046 + -6666367108257301367 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByToString/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByToString/content.txt new file mode 100644 index 0000000000..3a122f5837 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByToString/content.txt @@ -0,0 +1,33 @@ +!**< def +!define test (!|fitlibrary.specify.exception.ExceptionThrownByToString| + +|'''check'''|''value''|12| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.ExceptionThrownByToString
+
+ + + + +
checkvalue12
fitlibrary.specify.exception.ForcedException + at fitlibrary.specify.exception.ExceptionThrownByToString$Value.toString +
+
+ + + + + + + + + + +
expected test results0right0wrong0ignored1exceptions
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByToString/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByToString/properties.xml new file mode 100644 index 0000000000..6943457bb9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/ExceptionThrownByToString/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513862437 + 8880966354295809869 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/NoNullaryConstructor/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/NoNullaryConstructor/content.txt new file mode 100644 index 0000000000..2450ade1c6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/NoNullaryConstructor/content.txt @@ -0,0 +1,10 @@ +!**< def +!define test (!|fitlibrary.specify.exception.NoNullaryConstructor| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.NoNullaryConstructor
Class has no default constructor: fitlibrary.specify.exception.NoNullaryConstructor
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/NoNullaryConstructor/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/NoNullaryConstructor/properties.xml new file mode 100644 index 0000000000..b828aa8b38 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/NoNullaryConstructor/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101173110 + + + + + + + + 1225513870578 + 1734233372229042240 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/UnknownClass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/UnknownClass/content.txt new file mode 100644 index 0000000000..a712a48d3d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/UnknownClass/content.txt @@ -0,0 +1,9 @@ +!**< def +!define test (!|fitlibrary.specify.exception.UnknownClass| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.exception.UnknownClass
Missing class or Missing method. Possibly:
  • public Type getFitlibraryDotSpecifyDotExceptionDotUnknownClass() { }
  • public Type fitlibraryDotSpecifyDotExceptionDotUnknownClass() { }
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/UnknownClass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/UnknownClass/properties.xml new file mode 100644 index 0000000000..6d5780b091 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/UnknownClass/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513880937 + -4337417803033829968 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/content.txt new file mode 100644 index 0000000000..05d0ad77d4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/content.txt @@ -0,0 +1,20 @@ +!2 Various errors and exceptions are caught by ${fitLibrary} and shown in the report. +|!3 ''Application exceptions''|''Nested''| +|^ExceptionThrownByAction|| +|^ExceptionThrownBySetterInObject|^ExceptionThrownBySetterInNestedObject| +|^ExceptionThrownByGetterInObject|^ExceptionThrownByGetterInNestedObject| +|^ExceptionThrownByGetterInCollection|^ExceptionThrownByGetterInNestedCollection| +|^ExceptionThrownByFinder|^ExceptionThrownByNestedFinder| +|^ExceptionThrownByShow|^ExceptionThrownByNestedShow| +|^ExceptionThrownByEquals|^ExceptionThrownByNestedEquals| +|^ExceptionThrownByParse|^ExceptionThrownByNestedParse| +|^ExceptionThrownByToString|^ExceptionThrownByNestedToString| + +|!3 ''Classes''| +|^UnknownClass| +|^ConstructorNotVisible| +|^NoNullaryConstructor| + +|!3 ''Methods''| +|^AmbiguousActionMethod| +|'''to be continued....'''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/properties.xml new file mode 100644 index 0000000000..744780ebc5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/ExcepTions/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060819211420 + + + + + + + + 1155978860001 + 7401026515960862227 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithAdapter/content.txt new file mode 100644 index 0000000000..a27a92ec08 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithAdapter/content.txt @@ -0,0 +1,18 @@ +!3 An ${actionMethod} is missing with ${domainAdapter} and a ${sut} +!**< def +!define test (!|fitlibrary.specify.missingMethod.InDomainAdapter| + +|''add''|1|''to total''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingMethod.InDomainAdapter
+
+ + + + +
add
Missing class or Missing method. Possibly:
  • public Type addToTotal(Type1 arg1) { }
  • public Type add(Type p1, Type p2) {}

Possibly in class:
  • fitlibrary.specify.missingMethod.InDomainAdapter
  • fitlibrary.specify.missingMethod.InJustSut
1to total
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithAdapter/properties.xml new file mode 100644 index 0000000000..40c727a542 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithAdapter/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513889750 + -5139597652125748151 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithOnlySut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithOnlySut/content.txt new file mode 100644 index 0000000000..448b0d19b1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithOnlySut/content.txt @@ -0,0 +1,18 @@ +!3 An ${actionMethod} is missing with only a ${sut} (no ${domainAdapter}) +!**< def +!define test (!|fitlibrary.specify.missingMethod.InJustSut| + +|''add''|1|''to total''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingMethod.InJustSut
+
+ + + + +
add
Missing class or Missing method. Possibly:
  • public Type addToTotal(Type1 arg1) { }
  • public Type add(Type p1, Type p2) {}

Possibly in class:
  • fitlibrary.specify.missingMethod.InJustSut
1to total
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithOnlySut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithOnlySut/properties.xml new file mode 100644 index 0000000000..79332ca340 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/ActionMissingWithOnlySut/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513899046 + -735815635355685686 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithAdapter/content.txt new file mode 100644 index 0000000000..8ce7b23ec7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithAdapter/content.txt @@ -0,0 +1,18 @@ +!3 A ${finder} is missing with a ${domainAdapter} +!**< def +!define test (!|fitlibrary.specify.missingMethod.FinderInDomainAdapter| + +|''add''|red|''to colour mix''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingMethod.FinderInDomainAdapter
+
+ + + + +
addred
Either Colour is
  • A Value Object. So missing parse method: public static Colour parse(String s) { }
    in class fitlibrary.specify.missingMethod.FinderInJustSut$Colour; or
  • An Entity. So missing finder method: public Colour findColour(String key) { } , possibly in classes:
    • fitlibrary.specify.missingMethod.FinderInDomainAdapter
    • fitlibrary.specify.missingMethod.FinderInJustSut
to colour mix
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithAdapter/properties.xml new file mode 100644 index 0000000000..8d18677aa1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithAdapter/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513907859 + 5980155434284078343 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithOnlySut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithOnlySut/content.txt new file mode 100644 index 0000000000..28ed103b40 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithOnlySut/content.txt @@ -0,0 +1,18 @@ +!3 A ${finder} is missing with only a ${sut} (no ${domainAdapter}) +!**< def +!define test (!|fitlibrary.specify.missingMethod.FinderInJustSut| + +|''add''|red|''to colour mix''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingMethod.FinderInJustSut
+
+ + + + +
addred
Either Colour is
  • A Value Object. So missing parse method: public static Colour parse(String s) { }
    in class fitlibrary.specify.missingMethod.FinderInJustSut$Colour; or
  • An Entity. So missing finder method: public Colour findColour(String key) { } , possibly in classes:
    • fitlibrary.specify.missingMethod.FinderInJustSut
to colour mix
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithOnlySut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithOnlySut/properties.xml new file mode 100644 index 0000000000..a8956db72c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/FinderMissingWithOnlySut/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513916875 + 2870942527962229489 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithAdapter/content.txt new file mode 100644 index 0000000000..bc9dd48a93 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithAdapter/content.txt @@ -0,0 +1,32 @@ +!3 A ${getter} is missing with a ${domainAdapter} +The ${domainAdapter} can supply a ${getter}. + +!**< def +!define colour (|''name''|red| +) +!define test (!|fitlibrary.specify.missingProperty.InDomainAdapter| + +|'''checks'''| + +|''colour''|${colour}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingProperty.InDomainAdapter
+
+ + +
checks
+
+ + + +
colour + + + +
name
Missing method, possibly:
  • public Type getName() { }

In:
  • fitlibrary.specify.missingProperty.InJustSut.Colour
  • fitlibrary.specify.missingProperty.InDomainAdapter
  • fitlibrary.specify.missingProperty.InJustSut
red
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithAdapter/properties.xml new file mode 100644 index 0000000000..64663527e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithAdapter/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513926250 + 3814249331403493066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithOnlySut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithOnlySut/content.txt new file mode 100644 index 0000000000..270f5b05a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithOnlySut/content.txt @@ -0,0 +1,30 @@ +!3 A ${getter} is missing with only a ${sut} (no ${domainAdapter}) +!**< def +!define colour (|''name''|red| +) +!define test (!|fitlibrary.specify.missingProperty.InJustSut| + +|'''checks'''| + +|''colour''|${colour}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingProperty.InJustSut
+
+ + +
checks
+
+ + + +
colour + + + +
name
Missing method, possibly:
  • public Type getName() { }

In:
  • fitlibrary.specify.missingProperty.InJustSut.Colour
  • fitlibrary.specify.missingProperty.InJustSut
red
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithOnlySut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithOnlySut/properties.xml new file mode 100644 index 0000000000..1f1efb8e57 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/GetterMissingWithOnlySut/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513934578 + 4061628422095566792 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithAdapter/content.txt new file mode 100644 index 0000000000..af4eb3c99b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithAdapter/content.txt @@ -0,0 +1,29 @@ +!3 A ${finder} for a nested table is missing with a ${domainAdapter} +!**< def +!define mix (|''colour''|''quantity''| +|red|12| +) +!define test (!|fitlibrary.specify.missingMethod.NestedFinderInDomainAdapter| + +|''add''|${mix}|''to colour mix''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingMethod.NestedFinderInDomainAdapter
+
+ + + + +
add + + + + + + +
colourquantity
red
Either Colour is
  • A Value Object. So missing parse method: public static Colour parse(String s) { }
    in class fitlibrary.specify.missingMethod.NestedFinderInJustSut$Colour; or
  • An Entity. So missing finder method: public Colour findColour(String key) { } , possibly in classes:
    • fitlibrary.specify.missingMethod.NestedFinderInDomainAdapter
    • fitlibrary.specify.missingMethod.NestedFinderInDomainAdapter.NestedDomainAdapterToo
    • fitlibrary.specify.missingMethod.NestedFinderInJustSut
12
+
to colour mix
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithAdapter/properties.xml new file mode 100644 index 0000000000..d8d251b660 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithAdapter/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513944718 + 7124769660081170865 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithOnlySut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithOnlySut/content.txt new file mode 100644 index 0000000000..11260f7aa7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithOnlySut/content.txt @@ -0,0 +1,29 @@ +!3 A ${finder} for a nested table is missing with only a ${sut} (no ${domainAdapter}) +!**< def +!define mix (|''colour''|''quantity''| +|red|12| +) +!define test (!|fitlibrary.specify.missingMethod.NestedFinderInJustSut| + +|''add''|${mix}|''to colour mix''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingMethod.NestedFinderInJustSut
+
+ + + + +
add + + + + + + +
colourquantity
red
Either Colour is
  • A Value Object. So missing parse method: public static Colour parse(String s) { }
    in class fitlibrary.specify.missingMethod.NestedFinderInJustSut$Colour; or
  • An Entity. So missing finder method: public Colour findColour(String key) { } , possibly in classes:
    • fitlibrary.specify.missingMethod.NestedFinderInJustSut
12
+
to colour mix
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithOnlySut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithOnlySut/properties.xml new file mode 100644 index 0000000000..52caa7d0dd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NestedFinderMissingWithOnlySut/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513952875 + -7499810456592806751 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithAdapter/content.txt new file mode 100644 index 0000000000..fb564a93a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithAdapter/content.txt @@ -0,0 +1,18 @@ +!3 An ${actionMethod} with no arguments is missing with ${domainAdapter} and a ${sut} +!**< def +!define test (!|fitlibrary.specify.missingMethod.InDomainAdapter| + +|'''check'''|''total''|4| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingMethod.InDomainAdapter
+
+ + + + +
check
Missing class or Missing method. Possibly:
  • public Type getTotal() { }
  • public Type total() { }
  • public Type check4(Type1 arg1) { }
  • public Type check(Type p1, Type p2) {}

Possibly in class:
  • fitlibrary.specify.missingMethod.InDomainAdapter
  • fitlibrary.specify.missingMethod.InJustSut
total4
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithAdapter/properties.xml new file mode 100644 index 0000000000..86f7921c8c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithAdapter/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513961265 + 3326639239772753472 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithOnlySut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithOnlySut/content.txt new file mode 100644 index 0000000000..6b521a497a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithOnlySut/content.txt @@ -0,0 +1,18 @@ +!3 An ${actionMethod} with no arguments is missing with only a ${sut} (no ${domainAdapter}) +!**< def +!define test (!|fitlibrary.specify.missingMethod.InJustSut| + +|'''check'''|''total''|4| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingMethod.InJustSut
+
+ + + + +
check
Missing class or Missing method. Possibly:
  • public Type getTotal() { }
  • public Type total() { }
  • public Type check4(Type1 arg1) { }
  • public Type check(Type p1, Type p2) {}

Possibly in class:
  • fitlibrary.specify.missingMethod.InJustSut
total4
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithOnlySut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithOnlySut/properties.xml new file mode 100644 index 0000000000..e89c6af6c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/NullaryActionMissingWithOnlySut/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513976140 + 8709744759944171760 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithAdapter/content.txt new file mode 100644 index 0000000000..c56308bf44 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithAdapter/content.txt @@ -0,0 +1,26 @@ +!3 A ${setter} is missing with a ${domainAdapter} +The ${domainAdapter} can supply a ${setter}. + +!**< def +!define colour (|''name''|red| +) +!define test (!|fitlibrary.specify.missingProperty.InDomainAdapter| + +|''colour''|${colour}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingProperty.InDomainAdapter
+
+ + + +
colour + + + +
name
Missing method, possibly:
  • public void setName(ArgType name) { }

In:
  • fitlibrary.specify.missingProperty.InJustSut.Colour
  • fitlibrary.specify.missingProperty.InDomainAdapter
  • fitlibrary.specify.missingProperty.InJustSut
red
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithAdapter/properties.xml new file mode 100644 index 0000000000..b481ce87dd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithAdapter/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513985781 + 7485995243563706 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithOnlySut/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithOnlySut/content.txt new file mode 100644 index 0000000000..b8ae750bd7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithOnlySut/content.txt @@ -0,0 +1,24 @@ +!3 A ${setter} is missing with only a ${sut} (no ${domainAdapter}) +!**< def +!define colour (|''name''|red| +) +!define test (!|fitlibrary.specify.missingProperty.InJustSut| + +|''colour''|${colour}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.missingProperty.InJustSut
+
+ + + +
colour + + + +
name
Missing method, possibly:
  • public void setName(ArgType name) { }

In:
  • fitlibrary.specify.missingProperty.InJustSut.Colour
  • fitlibrary.specify.missingProperty.InJustSut
red
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithOnlySut/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithOnlySut/properties.xml new file mode 100644 index 0000000000..6b510c5da7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/SetterMissingWithOnlySut/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225513995406 + 9017590410899556180 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/content.txt new file mode 100644 index 0000000000..23730c4fe4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/content.txt @@ -0,0 +1,9 @@ +!2 The possible class locations and arguments of a missing method are displayed in a report + +|''Only a ${sut} is involved''|''A ${domainAdapter} is also involved''| +|^ActionMissingWithOnlySut|^ActionMissingWithAdapter| +|^NullaryActionMissingWithOnlySut|^NullaryActionMissingWithAdapter| +|^GetterMissingWithOnlySut|^GetterMissingWithAdapter| +|^SetterMissingWithOnlySut|^SetterMissingWithAdapter| +|^FinderMissingWithOnlySut|^FinderMissingWithAdapter| +|^NestedFinderMissingWithOnlySut|^NestedFinderMissingWithAdapter| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/properties.xml new file mode 100644 index 0000000000..89d4346344 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/MissingMethods/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081206163516 + + + + + + + + 1228534516718 + -611309086340258589 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/content.txt new file mode 100644 index 0000000000..4553f2a14b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/content.txt @@ -0,0 +1,3 @@ +These storytests are necessarily Java-specific. There's likely to be similar storytests for implementations in other programming languages +|!contents| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/properties.xml new file mode 100644 index 0000000000..dc41b469d0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/JavaSpecific/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232248105968 + -2934790022394327147 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/AddingFixtureFromAnAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/AddingFixtureFromAnAction/content.txt new file mode 100644 index 0000000000..da622bb8c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/AddingFixtureFromAnAction/content.txt @@ -0,0 +1,19 @@ +|''add''|!-fitlibrary.specify.select.FirstSelect-!|''as''|first| + +|''select''|first| + +|''add named''|2nd|second| + +|''count''|'''is'''|1| + +|''select''|2nd| + +|''count''|'''is'''|2| + +|''select''|first| + +|''count''|'''is'''|1| + +|''select''|2nd| + +|''count''|'''is'''|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/AddingFixtureFromAnAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/AddingFixtureFromAnAction/properties.xml new file mode 100644 index 0000000000..4e32845926 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/AddingFixtureFromAnAction/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254342495856 + 3212264988540713074 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/CanSwitchWithinDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/CanSwitchWithinDefinedAction/content.txt new file mode 100644 index 0000000000..5965c7a7db --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/CanSwitchWithinDefinedAction/content.txt @@ -0,0 +1,36 @@ +!**< def +!define body (|''switch''| + +|''select''|second| + +|''count''|'''is'''|2| + +|get|@{var}|'''is'''|22| + +|''select''|first| +) +**! +!|fitlibrary.SelectFixture| + +|set expand defined actions|true| + +|''define action''| +|${body}| + +|''add''|!-fitlibrary.specify.select.FirstSelect-!|''as''|first| +|''add''|!-fitlibrary.specify.select.SecondSelect-!|''as''|second| + +|''select''|first| + +|''count''|'''is'''|1| + +|set|var|to|22| + +|''switch''| + +|''count''|'''is'''|1| + +|''select''|second| + +|''count''|'''is'''|2| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/CanSwitchWithinDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/CanSwitchWithinDefinedAction/properties.xml new file mode 100644 index 0000000000..637b252700 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/CanSwitchWithinDefinedAction/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1240792988260 + 9178188808568532641 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/NotDoFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/NotDoFixture/content.txt new file mode 100644 index 0000000000..0bffb0c32a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/NotDoFixture/content.txt @@ -0,0 +1,29 @@ +!3 The object need not be a fixture +!**< def +!define test (|add named|x|get|Some text| + +|select|x| + +|char at|2|is|m| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + + + +
add namedxgetSome text
+
+ + + +
selectx
+
+ + + + + +
char at2ism
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/NotDoFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/NotDoFixture/properties.xml new file mode 100644 index 0000000000..0d9ce2b12a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/NotDoFixture/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1225514356859 + 8700719762066364321 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectIsManagedByDoFlow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectIsManagedByDoFlow/content.txt new file mode 100644 index 0000000000..56d0fb8c7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectIsManagedByDoFlow/content.txt @@ -0,0 +1,18 @@ +|''add named''| first |!-fitlibrary.specify.select.FirstSelect-!| +|''add named''| second |!-fitlibrary.specify.select.SecondSelect-!| + +|''select''|first| + +|''count''|'''is'''|1| + +|''select''|second| + +|''count''|'''is'''|2| + +|''select''|first| + +|''count''|'''is'''|1| + +|''select''|second| + +|''count''|'''is'''|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectIsManagedByDoFlow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectIsManagedByDoFlow/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectIsManagedByDoFlow/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectsWork/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectsWork/content.txt new file mode 100644 index 0000000000..56d0fb8c7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectsWork/content.txt @@ -0,0 +1,18 @@ +|''add named''| first |!-fitlibrary.specify.select.FirstSelect-!| +|''add named''| second |!-fitlibrary.specify.select.SecondSelect-!| + +|''select''|first| + +|''count''|'''is'''|1| + +|''select''|second| + +|''count''|'''is'''|2| + +|''select''|first| + +|''count''|'''is'''|1| + +|''select''|second| + +|''count''|'''is'''|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectsWork/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectsWork/properties.xml new file mode 100644 index 0000000000..5dd27bd014 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SelectsWork/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1224985369906 + -668543647279304893 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptions/content.txt new file mode 100644 index 0000000000..32ad676b23 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptions/content.txt @@ -0,0 +1,13 @@ +!3 An exception in setUp() of the added object is caught and displayed +!**< def +!define test (!|add named|first|fitlibrary.specify.select.SelectWithSetUpFailing| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + + +
add named
+
firstfitlibrary.specify.select.SelectWithSetUpFailing
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptions/properties.xml new file mode 100644 index 0000000000..efb21773ad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptions/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1252640043185 + 2231472422027251661 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptionsWithinSuite/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptionsWithinSuite/content.txt new file mode 100644 index 0000000000..06e8b43b11 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptionsWithinSuite/content.txt @@ -0,0 +1,19 @@ +!3 An exception in setUp() of the added fixture is caught and displayed +!**< def +!define test (!|fitlibrary.suite.SuiteFixture| + +!|add|fitlibrary.specify.select.SelectWithSetUpFailing|as|first| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.suite.SuiteFixture
+
+ + + +
add named
+
firstfitlibrary.specify.select.SelectWithSetUpFailing
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptionsWithinSuite/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptionsWithinSuite/properties.xml new file mode 100644 index 0000000000..a2e8535097 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SetUpExceptionsWithinSuite/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1253682946683 + -6264571923858062771 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SharedDynamicProperties/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SharedDynamicProperties/content.txt new file mode 100644 index 0000000000..129715034c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SharedDynamicProperties/content.txt @@ -0,0 +1,39 @@ +!|fitlibrary.SelectFixture| + +|set|fruit|to|pear| + +|becomes timeout|12345| + +|becomes timeout|is|12345| + +|''add''|!-fitlibrary.specify.select.FirstSelect-!|''as''|first| +|''add''|!-fitlibrary.specify.select.SecondSelect-!|''as''|second| + +|get|@{fruit}|is|pear| + +|set|fruit|to|apple| + +|get|@{fruit}|is|apple| + +|''select''|first| + +|becomes timeout|is|12345| + +|get|@{fruit}|is|apple| + +|set|fruit|to|orange| + +|''select''|second| + +|becomes timeout|is|12345| + +|get|@{fruit}|is|orange| + +|''select''|first| + +|get|@{fruit}|is|orange| + +|''select''|second| + +|get|@{fruit}|is|orange| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SharedDynamicProperties/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SharedDynamicProperties/properties.xml new file mode 100644 index 0000000000..51d2db2605 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/SharedDynamicProperties/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1240435553859 + -1006838543509229966 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptions/content.txt new file mode 100644 index 0000000000..e5e820fe1f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptions/content.txt @@ -0,0 +1,19 @@ +!3 An exception in tearDown() of any added fixture is caught and displayed in the first table +!**< def +!define test (!|add|fitlibrary.specify.select.SelectWithTearDownFailing|as|first| + +!|add|fitlibrary.specify.select.SelectWithTearDownFailing|as|second| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + +
add namedfirstfitlibrary.specify.select.SelectWithTearDownFailing
+
+ + + +
add namedsecondfitlibrary.specify.select.SelectWithTearDownFailing
+
Error in storytest tear down:

-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptions/properties.xml new file mode 100644 index 0000000000..2cf60d2dab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptions/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1254095060357 + -2174706896425222448 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptionsWithinSuite/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptionsWithinSuite/content.txt new file mode 100644 index 0000000000..2669e14b05 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptionsWithinSuite/content.txt @@ -0,0 +1,25 @@ +!3 An exception in tearDown() of any added fixture is caught and displayed in the first table +!**< def +!define test (!|fitlibrary.suite.SuiteFixture| + +!|add|fitlibrary.specify.select.SelectWithTearDownFailing|as|first| + +!|add|fitlibrary.specify.select.SelectWithTearDownFailing|as|second| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.suite.SuiteFixture
+
+ + + +
add namedfirstfitlibrary.specify.select.SelectWithTearDownFailing
+
+ + + +
add namedsecondfitlibrary.specify.select.SelectWithTearDownFailing
+
Error in storytest tear down:

-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptionsWithinSuite/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptionsWithinSuite/properties.xml new file mode 100644 index 0000000000..38b206a0f3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/TearDownExceptionsWithinSuite/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254094614121 + -3361071620164394691 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/UnknownName/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/UnknownName/content.txt new file mode 100644 index 0000000000..ed91c7b026 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/UnknownName/content.txt @@ -0,0 +1,16 @@ +!**< def +!define test (!|fitlibrary.SelectFixture| + +|''select''|first| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.SelectFixture
+
+ + + +
select
Unknown name
first
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/UnknownName/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/UnknownName/properties.xml new file mode 100644 index 0000000000..47e2f4b6ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/UnknownName/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1225514393328 + -215571780772416165 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/WhenAddedObjectIsFixtureOrTraverseRuntimeIsInjectedIntoIt/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/WhenAddedObjectIsFixtureOrTraverseRuntimeIsInjectedIntoIt/content.txt new file mode 100644 index 0000000000..dd15387ca3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/WhenAddedObjectIsFixtureOrTraverseRuntimeIsInjectedIntoIt/content.txt @@ -0,0 +1,18 @@ +|''add named''| first |!-fitlibrary.specify.select.FirstSelectTraverse-!| +|''add named''| second |!-fitlibrary.specify.select.SecondSelect-!| + +|''select''|first| + +|''count''|'''is'''|1| + +|''select''|second| + +|''count''|'''is'''|2| + +|''select''|first| + +|''count''|'''is'''|1| + +|''select''|second| + +|''count''|'''is'''|2| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/WhenAddedObjectIsFixtureOrTraverseRuntimeIsInjectedIntoIt/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/WhenAddedObjectIsFixtureOrTraverseRuntimeIsInjectedIntoIt/properties.xml new file mode 100644 index 0000000000..1665cb9759 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/WhenAddedObjectIsFixtureOrTraverseRuntimeIsInjectedIntoIt/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/content.txt new file mode 100644 index 0000000000..12c6e2badc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/content.txt @@ -0,0 +1,19 @@ +!3 Usual flow now allows for a single storytest to use several different flow objects (objects or fixtures). + + * The flow objects are all available all of the time. + * If more than one flow object has a method that may match an action, you can select between them. + +>SelectsWork +>NotDoFixture +>SetUpExceptions +>SetUpExceptionsWithinSuite +>TearDownExceptions +>TearDownExceptionsWithinSuite +>UnknownName +>SharedDynamicProperties +>CanSwitchWithinDefinedAction +>AddingFixtureFromAnAction +^WhenAddedObjectIsFixtureOrTraverseRuntimeIsInjectedIntoIt + + +>SelectIsManagedByDoFlow diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/properties.xml new file mode 100644 index 0000000000..6ee657d925 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/MultipleFlowObjects/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + null + + + 1254342050151 + -7833014829465329265 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PageFooter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PageFooter/content.txt new file mode 100644 index 0000000000..0c7827e618 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PageFooter/content.txt @@ -0,0 +1,4 @@ +----${copyright} +${gpl2} + +([[!-ReadingSpecifications-!][.FitLibrary.SpecifiCations.ReadingSpecifications]]) ([[!-FitLibrary.UserGuide-!][.FitLibrary.UserGuide]]) ([[!-FitLibrary.Glossary-!][.FitLibrary.GlosSary]]) (.FrontPage) (.RecentChanges) \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PageFooter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PageFooter/properties.xml new file mode 100644 index 0000000000..e353c84e33 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PageFooter/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118160121 + true + true + true + true + true + true + 1232247681296 + -8734552095834292812 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/MatchSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/MatchSpecification/content.txt new file mode 100644 index 0000000000..9811b964e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/MatchSpecification/content.txt @@ -0,0 +1,25 @@ +!**< def +!define test {!|fitlibrary.specify.arrayParser.Match| + +|''array123''|'''is'''|1,2,3| + +|''arrayEmpty''|'''is'''|| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.arrayParser.Match
+
+ + + + +
array123is1,2,3
+
+ + + + +
arrayEmptyis 
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/MatchSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/MatchSpecification/properties.xml new file mode 100644 index 0000000000..c114c83959 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/MatchSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514023062 + 8240127267567566415 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ParseSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ParseSpecification/content.txt new file mode 100644 index 0000000000..7b727701ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ParseSpecification/content.txt @@ -0,0 +1,106 @@ +!**< def +!define testInts {!|fitlibrary.specify.arrayParser.Parse| + +|''given ints''|1,2,3| +|1| +|2| +|3| + +|''given ints''|| + +|''given ints''|1,2,c| +} + +!define testIntsNested {!|fitlibrary.specify.arrayParser.Parse| + +|''given ints2D''|1,(2,3),4| +} + +!define testString {!|fitlibrary.specify.arrayParser.Parse| + +|''given strings''|(1,2),3| +|(1| +|2)| +|3| +} + +!define testStringQuote {!|fitlibrary.specify.arrayParser.Parse| + +|''given strings''|"(1,2)",3| +|"(1| +|2)"| +|3| +} +**! + * Primitive values are simple +|!-fitlibrary.spec.SpecifyFixture-!| +|${testInts}|!- + + +
fitlibrary.specify.arrayParser.Parse
+
+ + + + + + + + + +
given ints1,2,3
1
2
3
+
+ + + +
given ints 
+
+ + + +
given ints1,2,c
Invalid Number
-!| + * But nested arrays can't be specified in a comma-separated form +|!-fitlibrary.spec.SpecifyFixture-!| +|${testIntsNested}|!- + + +
fitlibrary.specify.arrayParser.Parse
+
+ + + +
given ints2D1,(2,3),4
Invalid Number
-!| + * Strings don't work if they contain ",", as in "(1,2)" +|!-fitlibrary.spec.SpecifyFixture-!| +|${testString}|!- + + +
fitlibrary.specify.arrayParser.Parse
+
+ + + + + + + + + +
given strings(1,2),3
(1
2)
3
-!| + * There is '''no''' notion of quoting a String +|!-fitlibrary.spec.SpecifyFixture-!| +|${testStringQuote}|!- + + +
fitlibrary.specify.arrayParser.Parse
+
+ + + + + + + + + +
given strings"(1,2)",3
"(1
2)"
3
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ParseSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ParseSpecification/properties.xml new file mode 100644 index 0000000000..9387cd310e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ParseSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514030859 + -7615488346807184323 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ShowSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ShowSpecification/content.txt new file mode 100644 index 0000000000..18866daa26 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ShowSpecification/content.txt @@ -0,0 +1,26 @@ +!3 An array is shown as a comma-separated list in an error message +!**< def +!define test {!|fitlibrary.specify.arrayParser.Match| + +|'''check'''|''array123''|4,5| + +|'''check'''|''arrayEmpty''|0| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.arrayParser.Match
+
+ + + + +
checkarray1234,5 expected
1, 2, 3 actual
+
+ + + + +
checkarrayEmpty0 expected
actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ShowSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ShowSpecification/properties.xml new file mode 100644 index 0000000000..0577d811c2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/ShowSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514040890 + 3137085429656124784 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/content.txt new file mode 100644 index 0000000000..b2346776cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/content.txt @@ -0,0 +1,3 @@ +^ParseSpecification +^MatchSpecification +^ShowSpecification diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/properties.xml new file mode 100644 index 0000000000..182fa8a0e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/CommaSeparatedList/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154331 + + + + + + + + 1154766834578 + -7449346555512669066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/MatchSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/MatchSpecification/content.txt new file mode 100644 index 0000000000..38304dd0eb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/MatchSpecification/content.txt @@ -0,0 +1,37 @@ +!**< def +!define array (|1| +|2| +|3| +) +!define test (!|fitlibrary.specify.arrayParser.Match| + +|'''check'''|''array123''|${array}| + +|'''check'''|''arrayEmpty''|| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.arrayParser.Match
+
+ + + + +
checkarray123 + + + + + + +
1
2
3
+
+
+ + + + +
checkarrayEmpty 
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/MatchSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/MatchSpecification/properties.xml new file mode 100644 index 0000000000..4d487a25c4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/MatchSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514052156 + 4802131751756805000 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ParseSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ParseSpecification/content.txt new file mode 100644 index 0000000000..4fdce980c3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ParseSpecification/content.txt @@ -0,0 +1,168 @@ +!**< def +!define ints123 (|1| +|2| +|3| +) +!define ints12c (|1| +|2| +|c| +) +!define testInts (!|fitlibrary.specify.arrayParser.Parse| + +|''given ints''|${ints123}| +|1| +|2| +|3| + +|''given ints''|| + +|''given ints''|${ints12c}| +|1| +|2| +|0| +) + +!define inner1 (|1| +|2| +) +!define inner2 (|3| +|4| +) +!define outer (|${inner1}| +|${inner2}| +) +!define testIntsNested (!|fitlibrary.specify.arrayParser.Parse| + +|''given ints2D''|${outer}| +|${inner1}| +|${inner2}| +) + +!define strings (|1,2| +|3| +) +!define testString (!|fitlibrary.specify.arrayParser.Parse| + +|''given strings''|${strings}| +|1,2| +|3| +) + +**! + * Primitive values are simple. An array of a suitable size is created. However, if one of the inputs is invalid, the corresponding element will be the default value for the type. +|!-fitlibrary.spec.SpecifyFixture-!| +|${testInts}|!- + + +
fitlibrary.specify.arrayParser.Parse
+
+ + + + + + + + + +
given ints + + + + + + +
1
2
3
+
1
2
3
+
+ + + +
given ints 
+
+ + + + + + + + + +
given ints + + + + + + +
1
2
c
Invalid Number
+
1
2
0
-!| + * Nested arrays can be used +|!-fitlibrary.spec.SpecifyFixture-!| +|${testIntsNested}|!- + + +
fitlibrary.specify.arrayParser.Parse
+
+ + + + + + + +
given ints2D + + + + +
+ + + + +
1
2
+
+ + + + +
3
4
+
+
+ + + + +
1
2
+
+ + + + +
3
4
+
-!| + * Strings can now contain "," +|!-fitlibrary.spec.SpecifyFixture-!| +|${testString}|!- + + +
fitlibrary.specify.arrayParser.Parse
+
+ + + + + + + +
given strings + + + + +
1,2
3
+
1,2
3
+-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ParseSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ParseSpecification/properties.xml new file mode 100644 index 0000000000..aaa38be3d6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ParseSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514063921 + 3993166589911270872 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ShowSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ShowSpecification/content.txt new file mode 100644 index 0000000000..efc21dca25 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ShowSpecification/content.txt @@ -0,0 +1,36 @@ +!3 If a nested table is used, difference are shown in the table. Otherwise, a comma-separated list is used. +!**< def +!define array (|1| +|2| +) +!define test (!|fitlibrary.specify.arrayParser.Match| + +|'''check'''|''array123''|${array}| + +|'''check'''|''array123''|| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.arrayParser.Match
+
+ + + + +
checkarray123 + + + + + +
1
2
3 surplus
+
+
+ + + + +
checkarray123 expected
1, 2, 3 actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ShowSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ShowSpecification/properties.xml new file mode 100644 index 0000000000..878a9eb68d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/ShowSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514074296 + -4721352707524679969 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/content.txt new file mode 100644 index 0000000000..b2346776cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/content.txt @@ -0,0 +1,3 @@ +^ParseSpecification +^MatchSpecification +^ShowSpecification diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/properties.xml new file mode 100644 index 0000000000..182fa8a0e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/EmbeddedTable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154331 + + + + + + + + 1154766834578 + -7449346555512669066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/content.txt new file mode 100644 index 0000000000..c427d7ab0b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/content.txt @@ -0,0 +1,6 @@ +!3 An Array may be represented as a comma separated list or as an embedded table +An ''ArrayParser'' is only applied if: + * The array is of a primitive type (or a corresponding class, such as ''Double'') + * The array is of String + * It's a multi-dimensional array (eg int[][]) +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/properties.xml new file mode 100644 index 0000000000..27df0e817d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ArrayParser/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060901151953 + + + + + + + + 1154769641344 + 1244828683369414582 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/FinderAsSpecialisedParser/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/FinderAsSpecialisedParser/content.txt new file mode 100644 index 0000000000..a58b2e8eb5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/FinderAsSpecialisedParser/content.txt @@ -0,0 +1,55 @@ +A ${finder} can also be used to introduce a specialised ${parser} for a storytest. For example, we may want to treat an empty cell as a null String instead of an empty String. + +!**< def +!define test (!|fitlibrary.specify.entityParser.NullString| +---- +|'''check'''|''null string''|| +|'''check'''|''other string''|abc|abc| + +|'''check'''|''positive int''||0| +|'''check'''|''positive int''|-1|1| + +|list| +|name| +|Lars| +|| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.entityParser.NullString
+

+ + + + + + + + + +
checknull string 
checkother stringabcabc
+
+ + + + + + + + + + +
checkpositive int 0
checkpositive int-11
+
+ + + + + + + + +
list
name
Lars
 
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/FinderAsSpecialisedParser/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/FinderAsSpecialisedParser/properties.xml new file mode 100644 index 0000000000..af441592ef --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/FinderAsSpecialisedParser/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101173443 + + + + + + + + 1225514083953 + -2250839867160359037 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingEntity/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingEntity/content.txt new file mode 100644 index 0000000000..9cff4f838a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingEntity/content.txt @@ -0,0 +1,25 @@ +!**< def +!define test {!|fitlibrary.specify.entityParser.UserAdapter| + +|''actions''| + +|''add''|Romano Numero|''debt''|2.00| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.entityParser.UserAdapter
+
+ + +
actions
+
+ + + + + +
addRomano Numero
+
debt2.00
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingEntity/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingEntity/properties.xml new file mode 100644 index 0000000000..c3082d47c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingEntity/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514092796 + -5867684555946608705 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingFinderMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingFinderMethod/content.txt new file mode 100644 index 0000000000..55ee06dad4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingFinderMethod/content.txt @@ -0,0 +1,36 @@ +!**< def +!define user (|''name''|Romano Numero| +|''owe''|12.00| +) +!define test (!|fitlibrary.specify.entityParser.MissingFinderMethod| + +|''user''|${user}| + +|''add''|Romano Numero|''debt''|2.00| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.entityParser.MissingFinderMethod
+
+ + + +
user + + + + + + +
nameRomano Numero
owe12.00
+
+
+ + + + + +
add
Missing
Romano Numerodebt
Missing
2.00
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingFinderMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingFinderMethod/properties.xml new file mode 100644 index 0000000000..6394921289 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/MissingFinderMethod/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101173500 + + + + + + + + 1225514100546 + -1005303413294805180 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/SimpleExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/SimpleExample/content.txt new file mode 100644 index 0000000000..500020416a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/SimpleExample/content.txt @@ -0,0 +1,68 @@ +Let's say we want to represent various users with a ''User'' ${entity}. Instances of ''User'' are stored in the database, which generates unique ${key}s. The name is not sufficient as a ${key}, because of potential clashes. In a given ${storytest}, however, we'll make sure that the ''name'' is unique. + +!**< def +!define user1 (|''name''|Romano Numero| +|''owe''|12.00| +) +!define user2 (|''name''|Romano Numero| +|''owe''|14.00| +) +!define test (!|fitlibrary.specify.entityParser.UserAdapter| + +|''user''|${user1}| + +|''actions''| + +|''add''|Romano Numero|''debt''|2.00| + +|''checks''| + +|''user''|${user2}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.entityParser.UserAdapter
+
+ + + +
user + + + + + + +
nameRomano Numero
owe12.00
+
+
+ + +
actions
+
+ + + + + +
addRomano Numerodebt2.00
+
+ + +
checks
+
+ + + +
user + + + + + + +
nameRomano Numero
owe14.00
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/SimpleExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/SimpleExample/properties.xml new file mode 100644 index 0000000000..5efdab19b3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/SimpleExample/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101173508 + + + + + + + + 1225514108578 + -1749636575233544767 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/content.txt new file mode 100644 index 0000000000..b4760a0a8e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/content.txt @@ -0,0 +1,22 @@ +Unlike a ${valueObject}, you can only create one copy of a specific ${entity}. If you create two copies of an ${entity} with the same properties, they'll still be different. + +Consider when we create a ''User'' ${entity} early in a ${storytest}. There are two ways that you'll want to use that ${entity} later: + * To check that it has the correct property (or method-call) values + * In this case, we can simply use a table (possibly embedded) to specify the values that we expect + * To pass it as an argument in a ${workflow} action + * In this case, we need a way to refer to it. +So if you want to refer to an existing ${entity} in a ${storytest}, you have to refer to it indirectly, by a ''String'' ${key}. + * If a cell contains a ''String'' and an ${entity} is expected (ie, given the corresponding parameter type), the ''String'' will be treated as a ${key}. + * A class is treated as an ${entity} if it doesn't provide a ''parse()'' method for parsing Strings for instances. Compare this to a ${valueObject}, which does have that method. + * If the ${entity} type is the class ''User'', the following ${finder} is called in the ${domainAdapter}: +{{{ public Object findUser(String s);}}} +This will become clearer with a ^SimpleExample. + +A ${finder} can also be used for a ${key} in a nested table. + +A ${finder} may also be used to introduce specialised parsing into a storytest, such as when you want to treat an empty cell as a null for a String: + * ^FinderAsSpecialisedParser + +There are two possibilities of error: + * ^MissingFinderMethod, in which the finder method isn't defined. + * ^MissingEntity, in which the given ${key} doesn't correspond to any ${entity}. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/properties.xml new file mode 100644 index 0000000000..639792d377 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/EntityParser/properties.xml @@ -0,0 +1,15 @@ + + + + + 20070128123953 + + + + + + + + 1169941193875 + 4371514407129994186 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/MatchSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/MatchSpecification/content.txt new file mode 100644 index 0000000000..dfd76cbca4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/MatchSpecification/content.txt @@ -0,0 +1,35 @@ +!3 Matching still requires the expected values to be parsed. +So, once again, we can only handle an empty list or a List of String in comma-separated form +!**< def +!define test {!|fitlibrary.specify.listParser.Match| + +|'''check'''|''string abc''|a,b,c| + +|'''check'''|''list 123''|1,2,3| + +|'''check'''|''list empty''|| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.listParser.Match
+
+ + + + +
checkstring abca,b,c
+
+ + + + +
checklist 1231,2,3 expected
1, 2, 3 actual
+
+ + + + +
checklist empty 
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/MatchSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/MatchSpecification/properties.xml new file mode 100644 index 0000000000..110490de51 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/MatchSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514119968 + -5258970217904939976 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ParseSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ParseSpecification/content.txt new file mode 100644 index 0000000000..ea1d6f4daa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ParseSpecification/content.txt @@ -0,0 +1,46 @@ +!**< def +!define testStrings {!|fitlibrary.specify.listParser.Parse| + +|''given list''|| +|''any header will do''| + +|''given strings''|a,b,c| +|a| +|b| +|c| + +|''given integers''|1,2,3| +} +**! + * It's assumed that the list is either empty or has Strings in it +|!-fitlibrary.spec.SpecifyFixture-!| +|${testStrings}|!- + + +
fitlibrary.specify.listParser.Parse
+
+ + + + + +
given list 
any header will do
+
+ + + + + + + + + +
given stringsa,b,c
a
b
c
+
+ + + +
given integers
1,2,3
-!| + +Notice that the last table fails because we are assuming in the code that the list will contain integers, but the list is actually parsed as strings. With generic classes, it would be possible to determine the component type of the list. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ParseSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ParseSpecification/properties.xml new file mode 100644 index 0000000000..2b0614c832 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ParseSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514128546 + -6808496889327171586 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ShowSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ShowSpecification/content.txt new file mode 100644 index 0000000000..510bfc0c92 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ShowSpecification/content.txt @@ -0,0 +1,26 @@ +!3 A List is shown as a comma-separated list in an error message +!**< def +!define test {!|fitlibrary.specify.listParser.Match| + +|'''check'''|''list 123''|4,5| + +|'''check'''|''list empty''|0| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.listParser.Match
+
+ + + + +
checklist 1234,5 expected
1, 2, 3 actual
+
+ + + + +
checklist empty0 expected
actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ShowSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ShowSpecification/properties.xml new file mode 100644 index 0000000000..55004f2db0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/ShowSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514138375 + 9029624121565189258 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/content.txt new file mode 100644 index 0000000000..b2346776cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/content.txt @@ -0,0 +1,3 @@ +^ParseSpecification +^MatchSpecification +^ShowSpecification diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/properties.xml new file mode 100644 index 0000000000..00d14f3daf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/CommaSeparatedList/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154332 + + + + + + + + 1154766834578 + -7449346555512669066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/MatchSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/MatchSpecification/content.txt new file mode 100644 index 0000000000..b1b4594eca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/MatchSpecification/content.txt @@ -0,0 +1,53 @@ +!**< def +!define list (|''count''| +|2| +|3| +) +!define test (!|fitlibrary.specify.listParser.Match| + +|'''check'''|''counts 23''|${list}| + +|'''check'''|''iterator 23''|${list}| + +|'''check'''|''list empty''|| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.listParser.Match
+
+ + + + +
checkcounts 23 + + + + + + +
count
2
3
+
+
+ + + + +
checkiterator 23 + + + + + + +
count
2
3
+
+
+ + + + +
checklist empty 
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/MatchSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/MatchSpecification/properties.xml new file mode 100644 index 0000000000..159b9af582 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/MatchSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514145671 + 3575819942977712090 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ParseSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ParseSpecification/content.txt new file mode 100644 index 0000000000..67fefeab29 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ParseSpecification/content.txt @@ -0,0 +1,130 @@ +!**< def +!define ints12 (|''count''| +|1| +|2| +) +!define intsc2 (|''count''| +|c| +|2| +) +!define testInts (!|fitlibrary.specify.listParser.ParseCounts| + +|''given counts''|${ints12}| +|''count''| +|1| +|2| + +|''given iterator''|${ints12}| +|''count''| +|1| +|2| + +|''given counts''|| +|''count''| + +|''given counts''|${intsc2}| +|''count''| +|2| +) + +!define colours (|''name''| +|red| +|green| +) +!define testExpectedMethod (!|fitlibrary.specify.listParser.ParseCounts| + +|''given colours''|${colours}| +|''name''| +) + +**! + * The component type of the List is unknown. So the programmer has to write a factory method that is called to create an object for each row of the inner table. In Java, the name of this method is based on the header row of the inner table. + * It's not possible to create a List that directly contains another List. With support for generic classes, this could be done. +|!-fitlibrary.spec.SpecifyFixture-!| +|${testInts}|!- + + +
fitlibrary.specify.listParser.ParseCounts
+
+ + + + + + + + + +
given counts + + + + + + +
count
1
2
+
count
1
2
+
+ + + + + + + + + +
given iterator + + + + + + +
count
1
2
+
count
1
2
+
+ + + + + +
given counts 
count
+
+ + + + + + + +
given counts + + + + + + +
count
c
Invalid Number
2
+
count
2
-!| + * Here's the error message that's shown if the factory method is missing: +|!-fitlibrary.spec.SpecifyFixture-!| +|${testExpectedMethod}|!- + + +
fitlibrary.specify.listParser.ParseCounts
+
+ + + + + +
given colours + + + + + + +
name
Missing method
red
green
+
name
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ParseSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ParseSpecification/properties.xml new file mode 100644 index 0000000000..509f7b1fe3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ParseSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514157015 + -54084594792266386 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ShowSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ShowSpecification/content.txt new file mode 100644 index 0000000000..b8e522f664 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ShowSpecification/content.txt @@ -0,0 +1,49 @@ +!3 If a nested table is used, difference are shown in the table. Otherwise, a comma-separated list is used. +!**< def +!define list (|''count''| +|1| +|2| +|3| +) +!define test (!|fitlibrary.specify.listParser.Match| + +|'''check'''|''counts 23''|${list}| + +|'''check'''|''counts 23''|| + +|'''check'''|''iterator 23''|| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.listParser.Match
+
+ + + + +
checkcounts 23 + + + + + + + + +
count
1 missing
2
3
+
+
+ + + + +
checkcounts 23  expected
Count[2], Count[3] actual
+
+ + + + +
checkiterator 23  expected
Count[2], Count[3] actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ShowSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ShowSpecification/properties.xml new file mode 100644 index 0000000000..edea606774 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/ShowSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514166218 + 6040711783656806869 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/content.txt new file mode 100644 index 0000000000..b2346776cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/content.txt @@ -0,0 +1,3 @@ +^ParseSpecification +^MatchSpecification +^ShowSpecification diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/properties.xml new file mode 100644 index 0000000000..00d14f3daf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/EmbeddedTable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154332 + + + + + + + + 1154766834578 + -7449346555512669066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/content.txt new file mode 100644 index 0000000000..06d09bab67 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/content.txt @@ -0,0 +1,6 @@ +!3 A List may be represented as a comma separated list or as an embedded table +A ''ListParser'' is only applied in Java with: + * An array, if ''ArrayParser'' is not applicable + * A ''Collection'' when a ''SetParser'' is not applicable + * An ''Iterator'' +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/properties.xml new file mode 100644 index 0000000000..6140bbdd58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ListParser/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060901152233 + + + + + + + + 1154772506865 + -2668646123712152107 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/MatchSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/MatchSpecification/content.txt new file mode 100644 index 0000000000..c265b3be9b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/MatchSpecification/content.txt @@ -0,0 +1,38 @@ +!3 Matching still requires the expected values to be parsed. +So, once again, we can only handle an empty Map or a Map of String to String in comma-separated form +!**< def +!define test {!|fitlibrary.specify.mapParser.Match| + +|''map of string abc''|'''is'''|a->b,b->c,c->a| + +|''map empty''|'''is'''|| + +|''map of 123''|'''is'''|1->2,2->3,3->4| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapParser.Match
+
+ + + + +
map of string abcisa->b,b->c,c->a
+
+ + + + +
map emptyis 
+
+ + + + +
map of 123is1->2,2->3,3->4 expected
1->2, 2->3, 3->4 actual
-!| + +The last table fails because the actual Map is not from String to String + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/MatchSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/MatchSpecification/properties.xml new file mode 100644 index 0000000000..66a1a35f4f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/MatchSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514175203 + 1840236580700185174 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ParseSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ParseSpecification/content.txt new file mode 100644 index 0000000000..94caa112f2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ParseSpecification/content.txt @@ -0,0 +1,32 @@ +!**< def +!define testStrings {!|fitlibrary.specify.mapParser.Parse| + +|''given map''|| + +|''given map''|red->green, blue->yellow| +|red|green| +|blue|yellow| +} +**! + * It's assumed that the map is either empty or is a map from String to String +|!-fitlibrary.spec.SpecifyFixture-!| +|${testStrings}|!- + + +
fitlibrary.specify.mapParser.Parse
+
+ + + +
given map 
+
+ + + + + + + + + +
given mapred->green, blue->yellow
redgreen
blueyellow
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ParseSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ParseSpecification/properties.xml new file mode 100644 index 0000000000..e2dcdd0517 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ParseSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514188140 + 89113661458093805 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ShowSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ShowSpecification/content.txt new file mode 100644 index 0000000000..a33c2b7b0e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ShowSpecification/content.txt @@ -0,0 +1,28 @@ +!3 A Map is shown as a comma-separated list in an error message +!**< def +!define test {!|fitlibrary.specify.mapParser.Match| + +|''map of string abc''|'''is'''|a->B,B->c| + +|''map empty''|'''is'''|x->y| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapParser.Match
+
+ + + + +
map of string abcisa->B,B->c expected
b->c, c->a, a->b actual
+
+ + + + +
map emptyisx->y expected
actual
-!| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ShowSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ShowSpecification/properties.xml new file mode 100644 index 0000000000..166c494989 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/ShowSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514196921 + 3940625992389873186 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/content.txt new file mode 100644 index 0000000000..b2346776cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/content.txt @@ -0,0 +1,3 @@ +^ParseSpecification +^MatchSpecification +^ShowSpecification diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/properties.xml new file mode 100644 index 0000000000..00d14f3daf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/CommaSeparatedList/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154332 + + + + + + + + 1154766834578 + -7449346555512669066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/MatchSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/MatchSpecification/content.txt new file mode 100644 index 0000000000..5acd3aefc6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/MatchSpecification/content.txt @@ -0,0 +1,38 @@ +!**< def +!define list (|1|2| +|2|3| +|3|4| +) +!define test (!|fitlibrary.specify.mapParser.Match| + +|''map of 123''|'''is'''|${list}| +|''map empty''|'''is'''|| +) +**! +The Parser uses the key and value types of one of the elements of the Map to parse them all +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapParser.Match
+
+ + + + + + + + +
map of 123is + + + + + + + + + +
12
23
34
+
map emptyis 
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/MatchSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/MatchSpecification/properties.xml new file mode 100644 index 0000000000..e5575b0727 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/MatchSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514204953 + -1154532366970263261 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ParseSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ParseSpecification/content.txt new file mode 100644 index 0000000000..a138df68c4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ParseSpecification/content.txt @@ -0,0 +1,47 @@ +!**< def +!define mapAB (|a|b| +|A|B| +) +!define ints (|1|2| +|3|4| +) +!define testInts (!|fitlibrary.specify.mapParser.Parse| + +|''given map''|${mapAB}| +|a|b| +|A|B| + +|''given map''|| +) + +**! + * The component types of the Map are unknown. So a Map of String to String is created. +|!-fitlibrary.spec.SpecifyFixture-!| +|${testInts}|!- + + +
fitlibrary.specify.mapParser.Parse
+
+ + + + + + + + + +
given map + + + + + + +
ab
AB
+
ab
AB
+
+ + + +
given map 
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ParseSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ParseSpecification/properties.xml new file mode 100644 index 0000000000..ac8fa2aac9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ParseSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514214796 + -3283083068886651180 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ShowSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ShowSpecification/content.txt new file mode 100644 index 0000000000..0545be0fcb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ShowSpecification/content.txt @@ -0,0 +1,63 @@ +!3 If a nested table is used, difference are shown in the table. Otherwise, a comma-separated list is used. +!**< def +!define list (|1|4| +|2|3| +|4|5| +) +!define test (!|fitlibrary.specify.mapParser.Match| + +|''map of 123''|'''is'''|${list}| + +|''map of 123''|'''is'''|| + +|''map empty''|'''is'''|${list}| +) +**! +The Parser uses the key and value types of one of the elements of the Map to parse them all +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.mapParser.Match
+
+ + + + +
map of 123is + + + + + + + + + + + +
14 expected
2 actual
23
4 missing5
3 surplus4
+
+
+ + + + +
map of 123is expected
1->2, 2->3, 3->4 actual
+
+ + + + +
map emptyis + + + + + + + + + +
1 missing4
2 missing3
4 missing5
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ShowSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ShowSpecification/properties.xml new file mode 100644 index 0000000000..1429bd9aab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/ShowSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514224625 + 7047613891302360415 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/content.txt new file mode 100644 index 0000000000..b2346776cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/content.txt @@ -0,0 +1,3 @@ +^ParseSpecification +^MatchSpecification +^ShowSpecification diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/properties.xml new file mode 100644 index 0000000000..00d14f3daf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/EmbeddedTable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154332 + + + + + + + + 1154766834578 + -7449346555512669066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/content.txt new file mode 100644 index 0000000000..c8f5fdf2e3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/content.txt @@ -0,0 +1,4 @@ +!3 A Map may be represented as a comma separated list or as an embedded table +A ''MapParser'' is only applied in Java with: + * A ''Map'' +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/properties.xml new file mode 100644 index 0000000000..ddd5b9c377 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/MapParser/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154332 + + + + + + + + 1155101347806 + -1374537129490306018 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyBoolean/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyBoolean/content.txt new file mode 100644 index 0000000000..5a302d5524 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyBoolean/content.txt @@ -0,0 +1,20 @@ +!2 Any string is valid. Here we see how each string is interpreted as a boolean: +!|fitlibrary.specify.parser.ParserUnderTest| + +|calculate| +|value||bool|Boolean| +|true||true|true| +|+||true|true| +|y||true|true| +|yes||true|true| + +|calculate| +|value||bool|Boolean| +|false||false|false| +|||false|false| +|f||false|false| +|n||false|false| +|no||false|false| +|not||false|false| +|t||false|false| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyBoolean/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyBoolean/properties.xml new file mode 100644 index 0000000000..15527a9892 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyBoolean/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081012101831 + + + + + + + + 1223759911171 + -8027002918643782677 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyCharacter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyCharacter/content.txt new file mode 100644 index 0000000000..f212a82e4c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyCharacter/content.txt @@ -0,0 +1,181 @@ +!**< test +!define test (!|fitlibrary.specify.parser.ParserUnderTest| + +!|valid| +|char| +|1| +|a| +|| +|=| + +!|valid| +|Character| +|1| +|a| +|| +|=| + +!|valid| +|byte| +|0| +|1| +|127| + +!|valid| +|class Byte| +|0| +|1| +|127| + +!|valid| +|string| +|12345| +|abc| +|| +|=%^| + +!|invalid| +|char| +|++| +|1.5.6| + +!|invalid| +|Character| +|++| +|1.5.6| + +!|invalid| +|byte| +|a| +|128| +|++| +|1.5.6| + +!|invalid| +|class Byte| +|a| +|128| +|++| +|1.5.6| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.parser.ParserUnderTest
+
+ + + + + + + + + + + + +
valid
char
1
a
 
=
+
+ + + + + + + + + + + + +
valid
Character
1
a
 
=
+
+ + + + + + + + + + +
valid
byte
0
1
127
+
+ + + + + + + + + + +
valid
class Byte
0
1
127
+
+ + + + + + + + + + + + +
valid
string
12345
abc
 
=%^
+
+ + + + + + + + +
invalid
char
++
1.5.6
+
+ + + + + + + + +
invalid
Character
++
1.5.6
+
+ + + + + + + + + + + + +
invalid
byte
a
Invalid Number
128
Invalid Number
++
Invalid Number
1.5.6
Invalid Number
+
+ + + + + + + + + + + + +
invalid
class Byte
a
Invalid Number
128
Invalid Number
++
Invalid Number
1.5.6
Invalid Number
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyCharacter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyCharacter/properties.xml new file mode 100644 index 0000000000..dba6725c6e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyCharacter/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118170222 + + + + + + + + 1232251342781 + -122136582362111266 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyDouble/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyDouble/content.txt new file mode 100644 index 0000000000..e3db7ed94d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyDouble/content.txt @@ -0,0 +1,190 @@ +!**< def +!define test (!|fitlibrary.specify.parser.ParserUnderTest| + +!|valid| +|float| +|1.0| +|1| +|+1.3455| +|-0.004| + +!|valid| +|class Float| +|1.0| +|1| +|+1.3455| +|-0.004| +|| + +!|valid| +|class Float null| +|| + +!|valid| +|double| +|1.0| +|1| +|+1.3455| +|-0.004| + +!|valid| +|class Double| +|1.0| +|1| +|+1.3455| +|-0.004| +|| + +!|valid| +|class Double null| +|| + +!|invalid| +|float| +|| +|+| +|1.5.6| + +!|invalid| +|class Float| +|+| +|1.5.6| + +!|invalid| +|double| +|| +|+| +|1.5.6| + +!|invalid| +|class Double| +|+| +|1.5.6| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.parser.ParserUnderTest
+
+ + + + + + + + + + + + +
valid
float
1.0
1
+1.3455
-0.004
+
+ + + + + + + + + + + + + + +
valid
class Float
1.0
1
+1.3455
-0.004
 
+
+ + + + + + +
valid
class Float null
 
+
+ + + + + + + + + + + + +
valid
double
1.0
1
+1.3455
-0.004
+
+ + + + + + + + + + + + + + +
valid
class Double
1.0
1
+1.3455
-0.004
 
+
+ + + + + + +
valid
class Double null
 
+
+ + + + + + + + + + +
invalid
float

Invalid Number
+
Invalid Number
1.5.6
Invalid Number
+
+ + + + + + + + +
invalid
class Float
+
Invalid Number
1.5.6
Invalid Number
+
+ + + + + + + + + + +
invalid
double

Invalid Number
+
Invalid Number
1.5.6
Invalid Number
+
+ + + + + + + + +
invalid
class Double
+
Invalid Number
1.5.6
Invalid Number
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyDouble/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyDouble/properties.xml new file mode 100644 index 0000000000..21202c3794 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyDouble/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514237031 + 209962511040837139 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyInteger/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyInteger/content.txt new file mode 100644 index 0000000000..b07f67c9e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyInteger/content.txt @@ -0,0 +1,262 @@ +!**< def +!define test (!|fitlibrary.specify.parser.ParserUnderTest| + +!|valid| +|short| +|1| +|-13455| +|-0| + +!|valid| +|class Short| +|1| +|-13455| +|-0| +|| + +!|valid| +|class Short null| +|| + +!|valid| +|int| +|1| +|-13455| +|-0| + +!|valid| +|Integer| +|1| +|-13455| +|-0| +|| + +!|valid| +|Integer null| +|| + +!|valid| +|long| +|1| +|-13455| +|-0| + +!|valid| +|class Long| +|1| +|-13455| +|-0| +|| + +!|valid| +|class Long null| +|| + +!|invalid| +|short| +|| +|+| +|1.5| + +!|invalid| +|class Short| +|+| +|1.5| + +!|invalid| +|int| +|| +|+| +|1.5| + +!|invalid| +|Integer| +|+| +|1.5| + +!|invalid| +|long| +|| +|+| +|1.5| + +!|invalid| +|class Long| +|+| +|1.5| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.parser.ParserUnderTest
+
+ + + + + + + + + + +
valid
short
1
-13455
-0
+
+ + + + + + + + + + + + +
valid
class Short
1
-13455
-0
 
+
+ + + + + + +
valid
class Short null
 
+
+ + + + + + + + + + +
valid
int
1
-13455
-0
+
+ + + + + + + + + + + + +
valid
Integer
1
-13455
-0
 
+
+ + + + + + +
valid
Integer null
 
+
+ + + + + + + + + + +
valid
long
1
-13455
-0
+
+ + + + + + + + + + + + +
valid
class Long
1
-13455
-0
 
+
+ + + + + + +
valid
class Long null
 
+
+ + + + + + + + + + +
invalid
short

Invalid Number
+
Invalid Number
1.5
Invalid Number
+
+ + + + + + + + +
invalid
class Short
+
Invalid Number
1.5
Invalid Number
+
+ + + + + + + + + + +
invalid
int

Invalid Number
+
Invalid Number
1.5
Invalid Number
+
+ + + + + + + + +
invalid
Integer
+
Invalid Number
1.5
Invalid Number
+
+ + + + + + + + + + +
invalid
long

Invalid Number
+
Invalid Number
1.5
Invalid Number
+
+ + + + + + + + +
invalid
class Long
+
Invalid Number
1.5
Invalid Number
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyInteger/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyInteger/properties.xml new file mode 100644 index 0000000000..d5338ddcab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/SpecifyInteger/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514247046 + 4617975923396242426 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/content.txt new file mode 100644 index 0000000000..3208741146 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/content.txt @@ -0,0 +1 @@ +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/properties.xml new file mode 100644 index 0000000000..9e4f96326e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/PrimitiveParsers/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154331 + + + + + + + + 1154132478634 + 8471966227472705749 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/MatchSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/MatchSpecification/content.txt new file mode 100644 index 0000000000..cc06cfaef9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/MatchSpecification/content.txt @@ -0,0 +1,35 @@ +!3 Matching still requires the expected values to be parsed. +So, once again, we can only handle an empty set or a Set of String in comma-separated form +!**< def +!define test {!|fitlibrary.specify.setParser.Match| + +|'''check'''|''set of string abc''|a,b,c| + +|'''check'''|''set of 123''|1,2,3| + +|'''check'''|''set empty''|| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.setParser.Match
+
+ + + + +
checkset of string abca,b,c
+
+ + + + +
checkset of 1231,2,3 expected
1, 2, 3 actual
+
+ + + + +
checkset empty 
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/MatchSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/MatchSpecification/properties.xml new file mode 100644 index 0000000000..8ebc12d8d8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/MatchSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514259203 + -7052457137625033772 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ParseSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ParseSpecification/content.txt new file mode 100644 index 0000000000..48f3e4e5e1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ParseSpecification/content.txt @@ -0,0 +1,38 @@ +!**< def +!define testStrings {!|fitlibrary.specify.setParser.Parse| + +|''given set''|| +|''any header will do''| + +|''given colour set''|red,green| +|''name''| +|red| +|green| +} +**! + * It's assumed that the set is either empty or has Strings in it, as with ''!-ListParser-!'' +|!-fitlibrary.spec.SpecifyFixture-!| +|${testStrings}|!- + + +
fitlibrary.specify.setParser.Parse
+
+ + + + + +
given set 
any header will do
+
+ + + + + + + + + +
given colour setred,green
name
Could not find property name
red
green
-!| + +The last table has an error because the Set returned is of strings, not colours diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ParseSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ParseSpecification/properties.xml new file mode 100644 index 0000000000..f6595d52f8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ParseSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514268406 + -8744727964578098920 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ShowSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ShowSpecification/content.txt new file mode 100644 index 0000000000..4dedc35457 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ShowSpecification/content.txt @@ -0,0 +1,28 @@ +!3 A Set is shown as a comma-separated list in an error message +!**< def +!define test {!|fitlibrary.specify.setParser.Match| + +|'''check'''|''set of 123''|4,5| + +|'''check'''|''set empty''|0| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.setParser.Match
+
+ + + + +
checkset of 1234,5 expected
1, 2, 3 actual
+
+ + + + +
checkset empty0 expected
actual
-!| + +We can't show the actual comma-separated list for the set in the expected report here because the order will differ in different implementations diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ShowSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ShowSpecification/properties.xml new file mode 100644 index 0000000000..120d29a924 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/ShowSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514276812 + -5410623562213355103 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/content.txt new file mode 100644 index 0000000000..b2346776cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/content.txt @@ -0,0 +1,3 @@ +^ParseSpecification +^MatchSpecification +^ShowSpecification diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/properties.xml new file mode 100644 index 0000000000..182fa8a0e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/CommaSeparatedList/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154331 + + + + + + + + 1154766834578 + -7449346555512669066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/MatchSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/MatchSpecification/content.txt new file mode 100644 index 0000000000..1d1a1ca635 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/MatchSpecification/content.txt @@ -0,0 +1,40 @@ +!**< def +!define list (|''count''| +|2| +|3| +|1| +) +!define test (!|fitlibrary.specify.setParser.Match| + +|'''check'''|''set of count 123''|${list}| + +|'''check'''|''set empty''|| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.setParser.Match
+
+ + + + +
checkset of count 123 + + + + + + + + +
count
2
3
1
+
+
+ + + + +
checkset empty 
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/MatchSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/MatchSpecification/properties.xml new file mode 100644 index 0000000000..b9a53bc29d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/MatchSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514285062 + 451768596261221130 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ParseSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ParseSpecification/content.txt new file mode 100644 index 0000000000..013f3e3046 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ParseSpecification/content.txt @@ -0,0 +1,78 @@ +!**< def +!define ints12 (|''count''| +|1| +|2| +) +!define intsc2 (|''count''| +|c| +|2| +) +!define testInts (!|fitlibrary.specify.setParser.Parse| + +|''given set''|${ints12}| +|''count''| +|1| +|2| + +|''given set''|| +|''count''| + +|''given set''|${intsc2}| +|''count''| +|2| +) + +!define colours (|''name''| +|red| +|green| +) +**! + * The component type of the List is unknown. So the programmer has to write a factory method that is called to create an object for each row of the inner table. In Java, the name of this method is based on the header row of the inner table. +|!-fitlibrary.spec.SpecifyFixture-!| +|${testInts}|!- + + +
fitlibrary.specify.setParser.Parse
+
+ + + + + + + + + +
given set + + + + + + +
count
1
2
+
count
1
2
+
+ + + + + +
given set 
count
+
+ + + + + + + +
given set + + + + + + +
count
c
Invalid Number
2
+
count
2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ParseSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ParseSpecification/properties.xml new file mode 100644 index 0000000000..828820617b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ParseSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514297500 + 239020871459181430 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ShowSpecification/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ShowSpecification/content.txt new file mode 100644 index 0000000000..0544af84b4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ShowSpecification/content.txt @@ -0,0 +1,41 @@ +!3 If a nested table is used, difference are shown in the table. Otherwise, a comma-separated list is used. +!**< def +!define list (|''count''| +|1| +|2| +|3| +) +!define test (!|fitlibrary.specify.setParser.Match| + +|''set of counts 23''|'''is'''|${list}| + +|''set of counts 23''|'''is'''|| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.setParser.Match
+
+ + + + +
set of counts 23is + + + + + + + + +
count
1 missing
2
3
+
+
+ + + + +
set of counts 23is expected
Count[2], Count[3] actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ShowSpecification/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ShowSpecification/properties.xml new file mode 100644 index 0000000000..91c4bb5ddb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/ShowSpecification/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514308562 + -1224500407930438788 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/content.txt new file mode 100644 index 0000000000..b2346776cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/content.txt @@ -0,0 +1,3 @@ +^ParseSpecification +^MatchSpecification +^ShowSpecification diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/properties.xml new file mode 100644 index 0000000000..72d0b986e3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/EmbeddedTable/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154330 + + + + + + + + 1154766834578 + -7449346555512669066 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/content.txt new file mode 100644 index 0000000000..0775ca3135 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/content.txt @@ -0,0 +1,4 @@ +!3 A Set may be represented as a comma separated list or as an embedded table +A ''SetParser'' is only applied in Java with: + * A ''Set'' +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/properties.xml new file mode 100644 index 0000000000..a94592e312 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/SetParser/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154331 + + + + + + + + 1154776604056 + 3150774454704477383 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/NestedTableInCell/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/NestedTableInCell/content.txt new file mode 100644 index 0000000000..f5cba9ee3c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/NestedTableInCell/content.txt @@ -0,0 +1,92 @@ +A ${valueObject} can be easily created and checked with an embedded table. There is no problem with creating multiple copies of the same ${valueObject} because of the nature of ''value objects''. + +Here's a simple example of using embedded tables for creating and checking ''value objects''. + +!**< def +!define table1 (|x|1| +|y|2| +) +!define table2 (|x|0|y|0| +) +!define test (!|fitlibrary.specify.valueObject.ParseMyPoint| + +|'''check'''|a point|${table1}|${table1}| + +|'''check'''|a point|${table2}|${table2}| + +|'''check'''|a point|${table1}|${table2}| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.valueObject.ParseMyPoint
+
+ + + + + +
checka point + + + + + + +
x1
y2
+
+ + + + + + +
x1
y2
+
+
+ + + + + +
checka point + + + + + +
x0y0
+
+ + + + + +
x0y0
+
+
+ + + + + +
checka point + + + + + + +
x1
y2
+
+ + + + + +
x0 expected
1 actual
y0 expected
2 actual
+
-!| + +You can mix the notations for ''value objects'', using a String in one cell and an embedded table in another \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/NestedTableInCell/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/NestedTableInCell/properties.xml new file mode 100644 index 0000000000..e2a34dc0c0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/NestedTableInCell/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514345343 + 5999138800450107574 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ClassDelegate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ClassDelegate/content.txt new file mode 100644 index 0000000000..5700d48d8c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ClassDelegate/content.txt @@ -0,0 +1,19 @@ +!3 A class delegate is registered to handle parsing text from a cell of the given type (''!-MyValue-!'') +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.parser.ClassDelegate
+
+ + + + +
a value set with a class delegate
value
1
2
-!|!- + +
fitlibrary.specify.parser.ClassDelegate
+
+ + + + +
a value set with a class delegate
value
1
2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ClassDelegate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ClassDelegate/properties.xml new file mode 100644 index 0000000000..09141115dc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ClassDelegate/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081213140505 + + + + + + + + 1229130305265 + 625200968311908259 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithString/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithString/content.txt new file mode 100644 index 0000000000..094c28ddb5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithString/content.txt @@ -0,0 +1,36 @@ +!3 If there is a constructor that takes a String, use that to create objects of the given class (ie, "self-parse") +The constructor does not need to be '''public'''. +!**< def +!define test {!|fitlibrary.specify.parser.UseConstructor| +---- +|'''check'''|a point|(12,34)|(12,34)| + +|''a point as domain object''|(12,34)| +|x|12| +|y|34| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.parser.UseConstructor
+
+
+ + + + + +
checka point(12,34)(12,34)
+
+ + + + + + + + + +
a point as domain object(12,34)
x12
y34
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithString/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithString/properties.xml new file mode 100644 index 0000000000..3a255a772d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithString/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20081224173943 + + + + + + + + + 1230093583734 + 6715682653748432089 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithStringThatThrows/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithStringThatThrows/content.txt new file mode 100644 index 0000000000..e1edeab0e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithStringThatThrows/content.txt @@ -0,0 +1,39 @@ +!3 If there is a constructor that takes a String, use that to create objects of the given class (ie, "self-parse") +If the constructor throws an exception, include that in the report +!**< def +!define test {!|fitlibrary.specify.parser.UseConstructor| +---- +|'''check'''|a point|(12;34)|(12,34)| + +|''a point as domain object''|12| +|x|12| +|y|34| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.specify.parser.UseConstructor
+
+
+ + + + + +
checka point(12;34)
+
(12,34)
+
+ + + + + + + + + +
a point as domain object12
+
x
Missing class or Missing method. Possibly:
  • public Type x(Type1 arg1) { }

Possibly in class:
  • fitlibrary.specify.parser.UseConstructor
12
y
Missing class or Missing method. Possibly:
  • public Type y(Type1 arg1) { }

Possibly in class:
  • fitlibrary.specify.parser.UseConstructor
34
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithStringThatThrows/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithStringThatThrows/properties.xml new file mode 100644 index 0000000000..80591b2094 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasConstructorWithStringThatThrows/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1230079501453 + -1227462863670304440 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasParseMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasParseMethod/content.txt new file mode 100644 index 0000000000..fc6a9a609b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasParseMethod/content.txt @@ -0,0 +1,18 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.parser.ClassWithParseMethod
+
+ + + + +
a value set with its own parse method
value
1
2
-!|!- + +
fitlibrary.specify.parser.ClassWithParseMethod
+
+ + + + +
a value set with its own parse method
value
1
2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasParseMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasParseMethod/properties.xml new file mode 100644 index 0000000000..028d608d42 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasParseMethod/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081213142743 + + + + + + + + 1229130486359 + -7014477552271825378 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasPropertyEditor/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasPropertyEditor/content.txt new file mode 100644 index 0000000000..ccfbb36bb9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasPropertyEditor/content.txt @@ -0,0 +1,43 @@ +!3 Use the !-PropertyEditor-! to parse and show the object +!**< def +!define test {!|fitlibrary.specify.parser.UsePropertyEditor| +---- +|a point|(12,34)|'''is'''|(12,34)| + +|'''show'''|a point|(12,34)| + +|''a point as domain object''|(12,34)| +|x|12| +|y|34| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.parser.UsePropertyEditor
+
+
+ + + + + +
a point(12,34)is(12,34)
+
+ + + + +
showa point(12,34)[12,34]
+
+ + + + + + + + + +
a point as domain object(12,34)
x12
y34
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasPropertyEditor/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasPropertyEditor/properties.xml new file mode 100644 index 0000000000..47b7e469ca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/HasPropertyEditor/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090117124729 + + + + + + + + + 1232149649109 + -2008660989348103134 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegate/content.txt new file mode 100644 index 0000000000..ac794c5d7b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegate/content.txt @@ -0,0 +1,18 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.parser.ObjectDelegate
+
+ + + + +
a value set with an object delegate
value
1
2
-!|!- + +
fitlibrary.specify.parser.ObjectDelegate
+
+ + + + +
a value set with an object delegate
value
1
2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegate/properties.xml new file mode 100644 index 0000000000..caa94a497a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegate/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081213141018 + + + + + + + + 1229130618359 + 6939218384117246499 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegateForDate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegateForDate/content.txt new file mode 100644 index 0000000000..43410d7e63 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegateForDate/content.txt @@ -0,0 +1,26 @@ +The first fixture can register once a Parser for a particular type, rather than having to include the parse() method in every fixture. + +Here we directly access a ''Date(2004-1900,2,3)'': + +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.parser.ObjectDelegateForDate
+
+ + +
checkdate2004/03/03 00:00
checkdate2004/03/03 00:01
-!|!- + +
fitlibrary.specify.parser.ObjectDelegateForDate
+
+ + +
checkdate2004/03/03 00:00
checkdate2004/03/03 00:01 expected
Wed Mar 03 00:00:00 NZDT 2004 actual
-!| + +This may be specific to ''Date'', but it shows two problems: + * We'd like to display the ''Date'' in the same form that we expect it to be entered. This occurs in ''show'' and when the value is not as expected (as in the last row above). + * The Date display is locale-dependent, so we can't test that the correct date is shown (ie, |report|show|date|Wed Mar 03 00:00:00 NZDT 2004|) +For the first problem, there are several possible solutions: + * Use a subclass or wrapper of ''Date'' in the SUT and provide an different ''toString()'' method, which is what is used by default by Fit. This means wrapping (output) Dates in the fixture. And changing the SUT itself to use such wrappers, which will be needed when !-RowFixture-!, etc access Date values. + * Have a method ''toString()'', like ''parse()'', but for displaying an object. + * Allow for new ''!-TypeAdapter-!''s to be registered. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegateForDate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegateForDate/properties.xml new file mode 100644 index 0000000000..b707b656e5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/ObjectDelegateForDate/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081213141604 + + + + + + + + 1229130724062 + 8422441696019539531 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SelfParseString/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SelfParseString/content.txt new file mode 100644 index 0000000000..1bcd591088 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SelfParseString/content.txt @@ -0,0 +1,56 @@ +!3 Value Object parses Strings itself + * As a value object class, in Java the underlying class ''!-MyPoint-!'' has a method: + * ''public static !-MyPoint-! parse(String)'' + * This method is used twice in the first table, to parse (and create) both the value for the argument and the ''expected'' value. + * It's used once in the second table, to create the argument. + * In Java, the ''!-MyPoint-!'' class also needs an ''equals()'' method to compare the ''expected'' and ''actual'' values. + * This is used in the first two tables + * In Java, the ''!-MyPoint-!'' class also needs a ''toString()'' method to show itself when there is an error + * This is shown in the second table, where the ''expected'' and the ''actual'' value of the point differ, and so the ''actual value'' needs to be displayed + * If the type of the result of a method call is a value object, it will not be auto-wrapped with a ''!-DomainObjectCheckTraverse-!''. + * That's so that it can be '''check'''ed in workflow, which is usually what's required + * So we need to explicitly wrap it in the code if we want to check its properties. + * This is shown in the third table + * Similar methods will be required with other programming languages. See the appropriate documentation. +!**< def +!define test {!|fitlibrary.specify.valueObject.ParseMyPoint| + +|'''check'''|a point|(12,34)|(12,34)| + +|'''check'''|a point|(12,34)|(0,0)| + +|''a point as domain object''|(12,34)| +|x|12| +|y|34| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.valueObject.ParseMyPoint
+
+ + + + + +
checka point(12,34)(12,34)
+
+ + + + + +
checka point(12,34)(0,0) expected
(12,34) actual
+
+ + + + + + + + + +
a point as domain object(12,34)
x12
y34
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SelfParseString/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SelfParseString/properties.xml new file mode 100644 index 0000000000..d2c24c0c09 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SelfParseString/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514334875 + 1464804459631167077 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifyParseDelegate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifyParseDelegate/content.txt new file mode 100644 index 0000000000..1eb1f2933b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifyParseDelegate/content.txt @@ -0,0 +1,42 @@ +!**< def +!define test {!|fitlibrary.specify.valueObject.ParseMyFixedPointAsStringWithDelegate| + +|'''check'''|a fixed point|(12,34)|(12,34)| + +|'''check'''|a fixed point|(12,34)|(0,0)| + +|''a fixed point as domain object''|(12,34)| +|x|12| +|y|34| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.valueObject.ParseMyFixedPointAsStringWithDelegate
+
+ + + + + +
checka fixed point(12,34)(12,34)
+
+ + + + + +
checka fixed point(12,34)(0,0) expected
(12,34) actual
+
+ + + + + + + + + +
a fixed point as domain object(12,34)
x12
y34
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifyParseDelegate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifyParseDelegate/properties.xml new file mode 100644 index 0000000000..8a7d03bfa1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifyParseDelegate/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1228024102140 + -1124598422655892869 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifySuperParseDelegate/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifySuperParseDelegate/content.txt new file mode 100644 index 0000000000..deace411e9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifySuperParseDelegate/content.txt @@ -0,0 +1,55 @@ +!**< def +!define test {!|fitlibrary.specify.valueObject.ParseMyFixedPointAsStringWithSuperDelegate| + +|'''check'''|a fixed point|(12,34)|(12,34)| + +|'''check'''|a fixed point|(12,34)|(12,88)| + +|'''check'''|a fixed point|(12,34)|(0,0)| + +|''a fixed point as domain object''|(12,34)| +|x|12| +|y|34| +} +**! +!3 Delegate will handle subtypes +The delegate can also override the equals(Object,Object) and the show(Object) methods. + +In the following, we choose to match fixed points purely on their x coordinate. And we show a fixed point in a different form. +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.valueObject.ParseMyFixedPointAsStringWithSuperDelegate
+
+ + + + + +
checka fixed point(12,34)(12,34)
+
+ + + + + +
checka fixed point(12,34)(12,88)
+
+ + + + + +
checka fixed point(12,34)(0,0) expected
(12,34) actual
+
+ + + + + + + + + +
a fixed point as domain object(12,34)
x12
y34
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifySuperParseDelegate/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifySuperParseDelegate/properties.xml new file mode 100644 index 0000000000..7cd20933d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/SpecifySuperParseDelegate/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1228025516125 + -5859222208165021522 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseStaticParseMethod/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseStaticParseMethod/content.txt new file mode 100644 index 0000000000..b82f7fc3a2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseStaticParseMethod/content.txt @@ -0,0 +1,28 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.parser.ClassWithParseMethod2
+
+ + + + +
showmy class
checkmy classi 3
checksame my classi 4i 4
checkmy classi 3+i 1i 4
-!|!- + +
fitlibrary.specify.parser.ClassWithParseMethod2
+
+ + + + + +
showmy classi 3
checkmy classi 3
checksame my classi 4i 4
checkmy classi 3+i 1i 4
-!| + +The ''static parse()'' method of a class is used if a object of that type needs a ''!-TypeAdapter-!'' + +In this example, the method ''myClass()'' returns an object of class ''!-MyClass-!''. This has the following methods, which are all needed for parsing to work: + * ''public static parse(String s)'' is used to parse a String from a Fit table cell. It needs to return an object (not a primitive value or ''void''). + * ''public String toString()'' is used to unparse an Object, to display the actual result in a reported cell. + * ''public boolean equals(Object object)'' is used to compare an expected and an actual value to see if they're the same. + +This capability is provided for all fixtures in the ''!-FitNesse-!'' version of Fit. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseStaticParseMethod/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseStaticParseMethod/properties.xml new file mode 100644 index 0000000000..5c54acbc3f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseStaticParseMethod/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090117124816 + + + + + + + + 1232149696609 + -3464779067206452796 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseToStringForResult/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseToStringForResult/content.txt new file mode 100644 index 0000000000..4d8d91cf5a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseToStringForResult/content.txt @@ -0,0 +1,21 @@ +Consider where there is no ${parser} for an object of class Object, and no parse() delegate either. If we only access it (result of method or getter), we simply use do a ''String'' comparison using its ''toString()'' method. + +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.parser.UseToStringForChecking
+
+ + +
showuse toString
checkuse toString77
-!|!- + +
fitlibrary.specify.parser.UseToStringForChecking
+
+ + + +
showuse toString77
checkuse toString77
-!| + +Of course, this won't always do what we want, but then nothing is lost. + +Where it's a class (not class Object nor String) that has no parse mechanism, it's treated as an ${entity} (in the ''!-DomainDrivenDesign-!'' sense) and the text is treated as a reference. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseToStringForResult/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseToStringForResult/properties.xml new file mode 100644 index 0000000000..7eebf7cd3f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/UseToStringForResult/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090117124854 + + + + + + + + 1232149734578 + -3476858002207383050 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/content.txt new file mode 100644 index 0000000000..61e5033dcf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/content.txt @@ -0,0 +1,51 @@ +For a ''value object'' to be represented as text in a cell, it needs one or more of the following: + * A ''public static Object parse(String)'' method in the class; and/or + * A ''public constructor that takes a String as argument; and/or + * A ''delegate parser'' that will handle parsing a String into an object of the ''value object'' class; and/or + * A ''delegate parser'' is needed if the value object belong to a class that you can't change. Eg, if you're using a provided ''Date'' or ''Point'', etc; and/or + * For checking only, the result of ''toString()'' can be used +!3 ''Value Object'' has it's own parse() method +When a ''value object'' class has a ''parse()'' method, that's used to convert between text in a cell and an object of that class: + +>SelfParseString +>HasParseMethod +^UseStaticParseMethod + +!3 ''Value Object'' has a constructor that takes a String + +^HasConstructorWithString +^HasConstructorWithStringThatThrows + +!3 ''Value Object'' has an associated !-PropertyEditor-! +^HasPropertyEditor + +!3 ''Value Object'' is parsed by a ${parseDelegate} +You may be using a library class, such as a ''Date'', as a ''value object''. But you're unable to change it. So you can use a ${parseDelegate} instead. The ${parseDelegate} needs to be registered to handle parsing of a specific ''value object'' class. + * We'll pretend that class ''!-MyFixedPoint-!'' is to be a ''value object'', but that we can't alter it to add a ''parse()'' method. + * So we introduce a ${parseDelegate}, ''!-MyFixedPointDelegate-!''. In Java the delegate class ''!-MyFixedPointDelegate-!'' has a method: + * ''public !-MyFixedPoint-! parse(String)'' that parses a String into a ''!-MyFixedPoint-!'' object + * This method is used twice in the first table, to parse (and create) both the value for the argument and the ''expected'' value. + * It's used once in the second table, to create the argument. + * In Java, the ''!-MyFixedPoint-!'' class still needs an ''equals()'' method to compare the ''expected'' and ''actual'' values. + * This is used in the first two tables + * In Java, the ''!-MyFixedPoint-!'' class also needs a ''toString()'' method to show itself when there is an error + * This is shown in the second table, where the ''expected'' and the ''actual'' value of the point differ, and so the ''actual value'' needs to be displayed + * If the type of the result of a method call is a value object, it will not be auto-wrapped with a ''!-DomainObjectCheckTraverse-!''. + * That's so that it can be '''check'''ed in workflow, which is usually what's required + * So we need to explicitly wrap it in the code if we want to check its properties. + * Similar methods will be required with other programming languages. See the appropriate documentation. +>ObjectDelegateForDate +^ObjectDelegate +^ClassDelegate +^SpecifyParseDelegate +^SpecifySuperParseDelegate + +Optional functionality can be provided in a ${parseDelegate} so that it: + * Can also be responsible for the ''equals()'' check. Then, specialised checking can be provided (such as over a subset of the properties). + * Can also be responsible for the ''show'' (ie, ''toString()''). Then the display format of the ''value object'' can be controlled. Eg, to display the ''Date'' in the appropropriate format. + +!3 ''Value Object'' doesn't have a ''parse()'' method nor a parse delegate, but is only checked +If it's only checked, ${fitLibrary} makes use of the ''toString()'' method and matches by comparing strings: + +^UseToStringForResult + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/properties.xml new file mode 100644 index 0000000000..12937e8630 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/TextInCell/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090118160652 + + + + + + + + + 1232248012234 + 1640476067399874513 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/content.txt new file mode 100644 index 0000000000..60b43be8bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/content.txt @@ -0,0 +1,6 @@ +See ${valueObject} for a brief introduction to value objects. + +A ${valueObject} can be parsed as a String (eg, a ''Date'') or an embedded table (eg, a ''Point''), depending on how simple it is. + +| >TextInCell|''Ways of converting from text to a value, and back again.''| +|>NestedTableInCell|''Converting from a nested table to an object, and back again.''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/properties.xml new file mode 100644 index 0000000000..fe93e14d11 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/ValueObjectParser/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118160636 + + + + + + + + 1232247996890 + 2918024819273527891 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/content.txt new file mode 100644 index 0000000000..5b87bbc7a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/content.txt @@ -0,0 +1,17 @@ +!3 ''Parsers'' are selected automatically by ${fitLibrary} +!3 ''Parsers'' are responsible for: + * ''Parsing'': Turning the contents of a cell (a String or embedded tables) into a primitive value, collection or object. A Parser uses a suitable ''traverse'' to create a value from embedded tables. Sometimes, a ''factory method'' is also needed. + * ''Matching'': Ensuring that the contents of a cell (String or embedded tables) corresponds to a primitive value, collection or object. A ${parser} uses a suitable ${traverse} to match against embedded tables. + * ''Showing'': Turning a primitive value, collection or object into a String message, for when an expected String doesn't match the actual value. +!3 There are ${parser}''s'' for: + * The primitive types and their corresponding object forms. Eg, '''int''', '''Integer''', '''char''', '''Character'''. And String. + * ^PrimitiveParsers + * Each of the collection types: Array, List, Set, Map, Iterator + * ^ArrayParser, ^ListParser, ^SetParser, ^MapParser + * For specialised ''graphical'' values within cells (see information elsewhere for these) + * For a ${valueObject} -- which has its own ''parse()'' method for handling text from cells, or it is constructed/checked with an embedded table + * ^ValueObjectParser + * For an ${entity} -- which is identified by String key (using a ''find'' method), or it is constructed/checked with an embedded table + * ^EntityParser + +!contents -R diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/properties.xml new file mode 100644 index 0000000000..6d0f338536 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ParserSpecifications/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232247983328 + -5069565580004070615 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/DefinedActions/content.txt new file mode 100644 index 0000000000..28ecd7e4c7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/DefinedActions/content.txt @@ -0,0 +1,15 @@ +|''address is''|address| + +|''get''|@{place.address}|'''is'''|@{address}| +---- +|''address is at''| address | + +|''get''|@{place.address}|'''is'''|@{address}| +---- +|''address is''|name|''in''|country| + +|''get''|@{place.address}|'''is'''|@{name}| +---- +|''address is''|name|''in''|country|''in''|year| + +|''get''|@{place.address}|'''is'''|@{name}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/DefinedActions/properties.xml new file mode 100644 index 0000000000..879fbcc05a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/DefinedActions/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1252477857093 + -5323730989680770915 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/content.txt new file mode 100644 index 0000000000..6d0bffbbed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/content.txt @@ -0,0 +1,13 @@ +!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.PlainTextInsteadOfTables.AmbiguityAcrossDefinedActions.DefinedActions| + +|'''set'''|address|'''to'''|Waimauku| + +![ +address is at Waimauku +]! + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/properties.xml new file mode 100644 index 0000000000..71ca2058f1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/AmbiguityAcrossDefinedActions/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1252477909218 + 754840012606524529 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCalls/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCalls/content.txt new file mode 100644 index 0000000000..726c27a49a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCalls/content.txt @@ -0,0 +1,41 @@ +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.PlainTextInsteadOfTables.DefinedActions| + +|'''set'''|address|'''to'''|Waimauku| + +![ +address is at Waimauku +]! +) +**! + +If the dynamic variable ''this'' is set, it's treated as the default object. This avoids +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.PlainTextInsteadOfTables.DefinedActions
+
+ + + + + +
setaddresstoWaimauku
+
+ + +
address is atWaimauku
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCalls/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCalls/properties.xml new file mode 100644 index 0000000000..127524346d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCalls/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1252473033968 + 9170486840011493866 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCallsWithClasses/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCallsWithClasses/content.txt new file mode 100644 index 0000000000..872a55ba8a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCallsWithClasses/content.txt @@ -0,0 +1,18 @@ +!**< def +!define test (!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|''define actions at''|.FitLibrary.SpecifiCations.PlainTextInsteadOfTables.DefinedActions| + +|'''set'''|rick.class|'''to'''|Person| +|'''set'''|rick.address|'''to'''|Waimauku| +|'''set'''|this|'''to'''|rick| + +#|''address is''|Waimauku| + +- address is Waimauku +) +**! + +If the dynamic variable ''this'' is set, it's treated as the default object. This avoids +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!--!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCallsWithClasses/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCallsWithClasses/properties.xml new file mode 100644 index 0000000000..a0cd002eda --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActionCallsWithClasses/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090830091459 + true + true + true + true + true + true + 1251580499515 + -6886282889542227604 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/AddressIsAt/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/AddressIsAt/content.txt new file mode 100644 index 0000000000..11419cbff8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/AddressIsAt/content.txt @@ -0,0 +1,3 @@ +|''address is at''|address| + +|''get''|@{address}|'''is'''|@{address}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/AddressIsAt/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/AddressIsAt/properties.xml new file mode 100644 index 0000000000..bf95431125 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/AddressIsAt/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1251580617343 + -1802051592562856727 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/AddressIs/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/AddressIs/content.txt new file mode 100644 index 0000000000..979002747f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/AddressIs/content.txt @@ -0,0 +1,3 @@ +|''address is''|address| + +|''get''|@{@{this}.address}|is|@{address}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/AddressIs/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/AddressIs/properties.xml new file mode 100644 index 0000000000..428aaeb43a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/AddressIs/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1251579579578 + 2698913580134682762 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/content.txt new file mode 100644 index 0000000000..7bc54fec43 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/content.txt @@ -0,0 +1 @@ +^AddressIs diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/properties.xml new file mode 100644 index 0000000000..c4da383df1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/ClassPerson/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090830085900 + true + true + true + true + true + true + 1251579540703 + 996510833760928162 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/content.txt new file mode 100644 index 0000000000..fe588f2903 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/content.txt @@ -0,0 +1,3 @@ +^ClassPerson +^AddressIsAt +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/properties.xml new file mode 100644 index 0000000000..a060006f22 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/DefinedActions/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090909122539 + true + true + true + true + true + true + 1252455939234 + 2449648533208770229 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/LargeMatchWithSameKeywordsTrumpsSmallerOne/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/LargeMatchWithSameKeywordsTrumpsSmallerOne/content.txt new file mode 100644 index 0000000000..00296623ca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/LargeMatchWithSameKeywordsTrumpsSmallerOne/content.txt @@ -0,0 +1,12 @@ +!|fitlibrary.specify.dynamicVariable.DynamicVariablesUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.PlainTextInsteadOfTables.AmbiguityAcrossDefinedActions.DefinedActions| + +|'''set'''|place.address|'''to'''|Waimauku| + +![ +address is Waimauku in NZ in 2010 +address is Waimauku in NZ on 2010 +]! diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/LargeMatchWithSameKeywordsTrumpsSmallerOne/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/LargeMatchWithSameKeywordsTrumpsSmallerOne/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/LargeMatchWithSameKeywordsTrumpsSmallerOne/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/content.txt new file mode 100644 index 0000000000..e21b89315a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/content.txt @@ -0,0 +1,9 @@ +${doFixture} tables can be written as plain text tables. These are interpreted as calls to defined actions. + +^DefinedActionCalls +^DefinedActionCallsWithClasses + +^AmbiguityAcrossDefinedActions +^LargeMatchWithSameKeywordsTrumpsSmallerOne + +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/properties.xml new file mode 100644 index 0000000000..2065e361ba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlainTextInsteadOfTables/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1251501239718 + -6340196983561831609 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCall/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCall/content.txt new file mode 100644 index 0000000000..5e9d35cfec --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCall/content.txt @@ -0,0 +1,21 @@ +!*< defs +!define p (|name|Rick| +) +!define pp (|name| +|Rick| +) +**! +!|fitlibrary.specify.plugin.HasNewInstancePlugin| + +|person|${p}| + +|persons|${pp}| + +|person list|${pp}| +---- +---- +|person|${p}| + +|persons|${pp}| + +|person list|${pp}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCall/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCall/properties.xml new file mode 100644 index 0000000000..d9efa8ea5e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCall/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20081201203638 + + + + + + + + + 1228116998750 + 3475124544616118862 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallDoesNotHandleClass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallDoesNotHandleClass/content.txt new file mode 100644 index 0000000000..dc99c30232 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallDoesNotHandleClass/content.txt @@ -0,0 +1,23 @@ +!*< defs +!define p (|name|Poppy| +) +!define test (!|fitlibrary.specify.plugin.HasNewInstancePlugin| + +|dog|${p}| +) +**! +!3 If the ''newInstancePlugin()'' returns null, it's ignored. +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.plugin.HasNewInstancePlugin
+
+ + + +
dog + + + +
namePoppy

Class is abstract: fitlibrary.specify.plugin.HasNewInstancePlugin$Dog
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallDoesNotHandleClass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallDoesNotHandleClass/properties.xml new file mode 100644 index 0000000000..6b9e6170ee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallDoesNotHandleClass/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20081124201814 + + + + + + + + + 1227510950437 + -5816600387415007806 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallThrowsException/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallThrowsException/content.txt new file mode 100644 index 0000000000..e5d9b78b2e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallThrowsException/content.txt @@ -0,0 +1,23 @@ +!*< defs +!define p (|name|Trash| +) +!define test (!|fitlibrary.specify.plugin.HasNewInstancePlugin| + +|crash|${p}| +) +**! +!3 If the ''newInstancePlugIn()'' throws an exception, it's ignored +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.plugin.HasNewInstancePlugin
+
+ + + +
crash + + + +
nameTrash

Class is abstract: fitlibrary.specify.plugin.HasNewInstancePlugin$Crash
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallThrowsException/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallThrowsException/properties.xml new file mode 100644 index 0000000000..9b07b8fad6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/SpecifyCallThrowsException/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20081124201814 + + + + + + + + + 1227510902328 + -5785887142366908212 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/content.txt new file mode 100644 index 0000000000..6356d1ea31 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/content.txt @@ -0,0 +1,4 @@ +A plugin method can specify how to create an object of a given type. This is especially useful if the type is an interface or abstract class in Java. +^SpecifyCall +^SpecifyCallDoesNotHandleClass +^SpecifyCallThrowsException diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/properties.xml new file mode 100644 index 0000000000..4b54775347 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/ObjectCreationPlugin/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20081124201814 + + + + + + + + + 1227511019015 + -8209096955550399018 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/content.txt new file mode 100644 index 0000000000..e90d3ea4ab --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/content.txt @@ -0,0 +1,3 @@ +>ObjectCreationPlugin - ''to construct an object of a given type which can't be created automatically'' +.FitLibrary.SpecifiCations.ParserSpecifications.EntityParser - to use a ${finder} to handle a text value +.FitLibrary.SpecifiCations.ParserSpecifications.ValueObjectParser.TextInCell.DelegateParseString - to use a delegate \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/properties.xml new file mode 100644 index 0000000000..eff134a3e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/PlugInMethods/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1228021599500 + -2366567829841807817 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ReadingSpecifications/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ReadingSpecifications/content.txt new file mode 100644 index 0000000000..462db7a991 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ReadingSpecifications/content.txt @@ -0,0 +1,56 @@ +${fitLibrary} is specified by example by using storytests, written with ${fitLibrary} tables. + * Some of these ${storytest}/specifications are suitable for the general reader. + * Some are technical in nature, and define the finer detail of ${storytest} interpretation, such as the form of an error message + * A very few of the storytests are language specific. These are classified as being specific to Java here. +Here's an example of a specification: +!**< test +!define test (!|fitlibrary.specify.workflow.Sum| + +|add|1| +|add|2| + +|check|sum|3| + +|check|sum|4| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.workflow.Sum
+
+ + + + + + +
add1
add2
+
+ + + + +
checksum3
+
+ + + + +
checksum4 expected
3 actual
-!| + +The second row of the specification table contains two cells: + * The left cell holds a sequence of tables that are under test. + * The right cell holds the report that's expected from running the tables in the left cell. + * Sometimes, only some part of the error message is shown in the right, as error messages can contain programming-language-specific information. + * Sometimes two rows are used instead of two cells in a single row. +The storytest passes if the test tables and the report tables are the same (ignoring extra error information) + * The assertion count reported for the storytest is different from usual + * It is based on the number of cells in the test tables, because they are all matched between the test and report +The storytests are written in the context of underlying code: + * For most of the storytests, that code is very simple. The storytest and associated code act as a simple but reasonable example of the use of that ${fitLibrary} feature. + * Sometimes that code is engineered specifically to define unusual behaviour. For example, we specify that a ''tearDown()'' method for a Traverse is called even if an exception is thrown during table interpretation. The underlying class is tailored specifically for this, and doesn't serve as a useful example of code. +The ${storytest}s for ${fitLibrary} are in transition: + * The terminology of the specifications is changing to be organised around the role of a table, rather than the specific fixture/traverse that's used. This is consistent with the current approach in ${fitLibrary} of not using fixtures/traverses explicitly. + * The ones that use a class immediately in the package ''fitlibrary.specify'' are still to be changed. Revised and new ${storytest}s use classes in sub-packages of ''fitlibrary.specify'', such as ''fitlibrary.specify.workflow''. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ReadingSpecifications/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ReadingSpecifications/properties.xml new file mode 100644 index 0000000000..8ddf190ce4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ReadingSpecifications/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232247823421 + -2863138739357501930 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAddGlobal/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAddGlobal/content.txt new file mode 100644 index 0000000000..954bab29e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAddGlobal/content.txt @@ -0,0 +1,31 @@ +!**< def +!define test (|''add global''|!-fitlibrary.specify.global.ExtraGlobal_MISSPELT-!| + +|''new global action''| + +|''add global''|!-fitlibrary.specify.global.ExtraGlobal-!| + +|''new global action''| +) +**! +'''add global''' adds a new global object, so that it's methods can be called as actions + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + +
add globalfitlibrary.specify.global.ExtraGlobal_MISSPELT
Missing class or Missing method. Possibly:
  • public Type getFitlibraryDotSpecifyDotGlobalDotExtraGlobal_MISSPELT() { }
  • public Type fitlibraryDotSpecifyDotGlobalDotExtraGlobal_MISSPELT() { }
+
+ + +
new global action
Missing class or Missing method. Possibly:
  • public Type getNewGlobalAction() { }
  • public Type newGlobalAction() { }
+
+ + + +
add globalfitlibrary.specify.global.ExtraGlobal
+
+ + +
new global action
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAddGlobal/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAddGlobal/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAddGlobal/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAmbiguity/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAmbiguity/content.txt new file mode 100644 index 0000000000..f61aa0f5bc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAmbiguity/content.txt @@ -0,0 +1,41 @@ +!2 Ambiguity is signalled when more than one special action + action fits +!**< def +!define test1 {!|fitlibrary.specify.specialAction.AmbiguousSpecial| + +|check|act|1|is|2| + +|not|act2|1|is|2| + +|not|act2|1|<|2| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.specialAction.AmbiguousSpecial
+
+ + + + + + +
check
Ambiguity between: Special check(Row,TestResults) in fitlibrary.traverse.workflow.DoTraverse AND is(TestResults,Row)
act1is2
+
+ + + + + + +
not
Ambiguity between: is(TestResults,Row) AND Special not(DoAction) + act2Is(String,String) (in fitlibrary.flow.GlobalActionScope + fitlibrary.specify.specialAction.AmbiguousSpecial)
act21is2
+
+ + + + + + +
not
Ambiguity between: Special lessThan(DoAction,Object) + not1(String) (in fitlibrary.flow.GlobalActionScope + fitlibrary.specify.specialAction.AmbiguousSpecial) AND Special not(DoAction) + act2LessThan(String,String) (in fitlibrary.flow.GlobalActionScope + fitlibrary.specify.specialAction.AmbiguousSpecial)
act21<2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAmbiguity/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAmbiguity/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAmbiguity/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAsString/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAsString/content.txt new file mode 100644 index 0000000000..7fda1ea8e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAsString/content.txt @@ -0,0 +1,48 @@ +The special action '''as string''' can be applied to an action that returns a String (or other object that can be turned into a String). + +The rows in the table that follow may then access String methods, as show in the example below: + +|'''as string'''|''get''|Hello there world| +|''compare to''|Hello|>|0| +|'''show'''|''concat''|-- Hello| +|''contains''|there| +|''ends with''|world| +|''equals ignore case''|hello there world| +|''index of''|there|'''is'''|6| +|''index''|e|''of''|3|'''is'''|8| +|''is equals''|Hello there world| +|'''not'''|''is empty''| +|''last index of''|e|'''is'''|10| +|''length''|>|5| + +|'''as string'''|''get''|Hello there world| +|''matches''|Hell.*ld| +|''replace''|e||E|'''is'''|HEllo thErE world| +|''replace''|e..|''all''|E|'''is'''|HEo thE world| +|'''show'''|''split''|o| +|'''show'''|''split''| | +|'''show'''|''split''|\n| +|''starts with''|Hello| +|''substring''|10|'''is'''|e world| +|''substring''|1||3|'''is'''|el| +|''to lower case''|'''is'''|hello there world| +|''to upper case''|'''is'''|HELLO THERE WORLD| + +|'''as string'''|''get''|Hello there world| +|''split''| | +|Hello| +|there| +|world| + +|'''as string'''|''get''|Hello-there-world| +|''split''|e| +|H| +|llo-th| +|r| +|-world| + +|'''as string'''|''get''|Hello there world| +|'''as string'''|''replace''|o||O| +|'''as string'''|''substring''|10| +|'''as string'''|''substring''|2| +|'''show'''|''to string''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAsString/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAsString/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestAsString/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestBecomes/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestBecomes/content.txt new file mode 100644 index 0000000000..76f14975a2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestBecomes/content.txt @@ -0,0 +1,78 @@ +!2 'becomes' checks an action against a value; it's prepared to wait for awhile for it to change, with a timeout specified by ''becomes timeout'' +!**< def +!define test1 {!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|''becomes timeout''|10| + +|int property|'''becomes'''|2| + +|boolean property|'''becomes'''|true| + +|string property|'''becomes'''|apple pie| + +|string property|'''becomes'''|apple and blueberry e| + +|missing property|'''becomes'''|pi| + +|ambiguous|1|'''becomes'''|2| + +|''x''|1|''y''|3|'''becomes'''|(1,3)| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + +
becomes timeout10
+
+ + + + +
int propertybecomes2
+
+ + + + +
boolean propertybecomestrue
+
+ + + + +
string propertybecomesapple pie
+
+ + + + +
string propertybecomesapple and blueberry e expected
apple pie actual
apple and blueberryΔpie diff
+
+ + + + +
missing property
Missing class or Missing method.
becomespi
+
+ + + + + +
ambiguous1becomes2 expected
actual
+
+ + + + + + + +
x1y3becomes(1,3)
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestBecomes/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestBecomes/properties.xml new file mode 100644 index 0000000000..e501525066 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestBecomes/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1253145497749 + -5850093404557814960 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestComment/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestComment/content.txt new file mode 100644 index 0000000000..abaec0ebc7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestComment/content.txt @@ -0,0 +1,11 @@ +!2 'comment' ignores the rest of the table (but doesn't colour it as ignored) +|!-fitlibrary.spec.SpecifyFixture-!| +|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + +
comment
showshown
-!|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + +
comment
showshown
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestComment/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestComment/properties.xml new file mode 100644 index 0000000000..b264717b73 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestComment/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060906010058 + + + + + + + + 1132359540906 + -7697345994778056435 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestContains/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestContains/content.txt new file mode 100644 index 0000000000..a191be70d4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestContains/content.txt @@ -0,0 +1,73 @@ +!2 'contains' checks that the actual value, as a string, contains the expectect value +!**< def +!define test {!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|int property|contains|2| + +|boolean property|contains|tru| + +|boolean property|contains|ue| + +|string property|contains|apple| + +|string property|contains|orange| + +|''x''|1|''y''|3|''contains''|(1,| + +|''x''|1|''y''|3|''contains''|(x,| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + +
int propertycontains2
+
+ + + + +
boolean propertycontainstru
+
+ + + + +
boolean propertycontainsue
+
+ + + + +
string propertycontainsapple
+
+ + + + +
string propertycontainsorange expected
apple pie actual
+
+ + + + + + + +
x1y3contains(1,
+
+ + + + + + + +
x1y3contains(x, expected
(1,3) actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestContains/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestContains/properties.xml new file mode 100644 index 0000000000..96b5658392 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestContains/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1253152969326 + 519337481457290352 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestDoesNotMatch/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestDoesNotMatch/content.txt new file mode 100644 index 0000000000..00d620b4be --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestDoesNotMatch/content.txt @@ -0,0 +1,81 @@ +!2 Fails if an action is pattern matched against a value +!**< def +!define test1 {!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|int property|does not match|2| + +|int property|does not match|20| + +|boolean property|does not match|te| + +|boolean property|does not match|true| + +|string property|does not match|appl.*ie| + +|string property|does not match|rappl.*i| + +|''x''|1|''y''|3|''does not match''|(1,.)| + +|''x''|1|''y''|3|''does not match''|(10,.)| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + +
int propertydoes not match2
+
+ + + + +
int propertydoes not match20
+
+ + + + +
boolean propertydoes not matchte
+
+ + + + +
boolean propertydoes not matchtrue
+
+ + + + +
string propertydoes not matchappl.*ie expected
apple pie actual
+
+ + + + +
string propertydoes not matchrappl.*i
+
+ + + + + + + +
x1y3does not match(1,.) expected
(1,3) actual
+
+ + + + + + + +
x1y3does not match(10,.)
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestDoesNotMatch/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestDoesNotMatch/properties.xml new file mode 100644 index 0000000000..94eeb607b7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestDoesNotMatch/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20090424113841 + true + true + true + true + true + true + true + 1240529921251 + -1183076425299232107 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEnsure/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEnsure/content.txt new file mode 100644 index 0000000000..ce60f8ed4a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEnsure/content.txt @@ -0,0 +1,52 @@ +!2 '''ensure''' tests that a boolean action returns true. Any exception is signalled in the report. +!**< def +!define test1 (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|'''ensure'''|''a right action''|1| +|'''ensure'''|''a wrong action''|1.5||2.2| +|'''ensure'''|''an exception action''| +) +!define test2 (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|'''ensure'''|''a parse failure''|s| +|'''ensure'''|''a missing method''| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + + + + + + + + +
ensurea right action1
ensurea wrong action1.5 2.2
ensure
an exception action
-!| + + * While a parse error (such as a number format exception) will be treated as success, a missing method or other such error is reported as such. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test2}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + + +
ensurea parse failures
Invalid Number
ensure
Missing method
a missing method
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEnsure/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEnsure/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEnsure/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyContains/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyContains/content.txt new file mode 100644 index 0000000000..1cca15d15f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyContains/content.txt @@ -0,0 +1,80 @@ +!2 'contains' checks that the actual value, as a string, contains the expectect value +!**< def +!define test {!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|''becomes timeout''|10| + +|int property|'''eventually contains'''|2| + +|boolean property|'''eventually contains'''|tru| + +|boolean property|'''eventually contains'''|ue| + +|string property|'''eventually contains'''|apple| + +|string property|'''eventually contains'''|orange| + +|''x''|1|''y''|3|'''eventually contains'''|(1,| + +|''x''|1|''y''|3|'''eventually contains'''|(x,| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + +
becomes timeout10
+
+ + + + +
int propertyeventually contains2
+
+ + + + +
boolean propertyeventually containstru
+
+ + + + +
boolean propertyeventually containsue
+
+ + + + +
string propertyeventually containsapple
+
+ + + + +
string propertyeventually containsorange expected
apple pie actual
+
+ + + + + + + +
x1y3eventually contains(1,
+
+ + + + + + + +
x1y3eventually contains(x, expected
(1,3) actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyContains/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyContains/properties.xml new file mode 100644 index 0000000000..0b53edd4ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyContains/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1253153061856 + 5943651408117372943 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyMatches/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyMatches/content.txt new file mode 100644 index 0000000000..f9122f45ef --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyMatches/content.txt @@ -0,0 +1,61 @@ +!2 'eventually matches' pattern matches an action against a value, and it's prepared to wait awhile for the match to occur. It times out based on the ''becomes'' timeout value. +!**< def +!define test1 {!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|''becomes timeout''|20| + +|int property|'''eventually matches'''|2| + +|boolean property|'''eventually matches'''|tr.e| + +|boolean property|'''eventually matches'''|t.e| + +|string property|'''eventually matches'''|appl.*ie| + +|''x''|1|''y''|3|'''eventually matches'''|(1,.)| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + +
becomes timeout20
+
+ + + + +
int propertyeventually matches2
+
+ + + + +
boolean propertyeventually matchestr.e
+
+ + + + +
boolean propertyeventually matchest.e expected
true actual
+
+ + + + +
string propertyeventually matchesappl.*ie
+
+ + + + + + + +
x1y3eventually matches(1,.)
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyMatches/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyMatches/properties.xml new file mode 100644 index 0000000000..47157dfdb4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestEventuallyMatches/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1253147316614 + -5512611255003762432 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIgnored/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIgnored/content.txt new file mode 100644 index 0000000000..fe261e1adf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIgnored/content.txt @@ -0,0 +1,11 @@ +!2 'ignored' ignores the rest of the table (and colours it as ignored) +|!-fitlibrary.spec.SpecifyFixture-!| +|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + +
ignored
showshown
-!|!-
fitlibrary.specify.DoFixtureFlowUnderTest
+ + + +
ignored
showshown
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIgnored/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIgnored/properties.xml new file mode 100644 index 0000000000..c1f32db9fb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIgnored/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081012110020 + + + + + + + + 1223762420250 + 3094228452917729205 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIs/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIs/content.txt new file mode 100644 index 0000000000..f842b70b61 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIs/content.txt @@ -0,0 +1,84 @@ +!2 'is' checks an action against a value +!**< def +!define test1 {!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|''int property''|'''is'''|2| + +|''boolean property''|'''is'''|true| + +|''string property''|'''is'''|apple pie| + + * Any differences are also shown in the cell, with deletions shown cross-out and insertions shown in bold. Matching text is shown in white: + +|''string property''|'''is'''|apple and blueberry es are great| + +|''missing property''|'''is'''|pi| + +|''ambiguous''|1|is|2| + +|''x''|1|''y''|3|''is''|(1,3)| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + +
int propertyis2
+
+ + + + + +
boolean propertyistrue
+
+ + + + + +
string propertyisapple pie
+
    +
  • Any differences are also shown in the cell, with deletions shown cross-out and insertions shown in bold. Matching text is shown in white:
  • +
+
+ + + + + +
string propertyisapple and blueberry es are great expected
apple pie actual
apple and blupieberry es are great diff
+
+ + + + + +
missing property
Missing class or Missing method.
ispi
+
+ + + + + + +
ambiguous
Ambiguity
1is2
+
+ + + + + + + + +
x1y3is(1,3)
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIs/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIs/properties.xml new file mode 100644 index 0000000000..e1e313e718 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIs/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1253655840277 + -3414249217690323214 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsDiffWithBlanks/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsDiffWithBlanks/content.txt new file mode 100644 index 0000000000..d2c8360297 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsDiffWithBlanks/content.txt @@ -0,0 +1,119 @@ +!2 'is' checks an action against a value (and diff handles multiple blank differences) +Extra or missing spaces at either end of an inserted or deleted subsequence are shown as Deltas. + +In the following, ''string property'' has one blank in the middle of the string and ''string property with two blanks'' has two blanks in the middle. + +!**< def +!define test1 {!|fitlibrary.specify.DoFixtureFlowUnderTest| + + * two blanks expected: + +|string property|is|apple pie| + + * one blank expected: + +|string property|is|apple pie| + + * no blanks expected: + +|string property|is|applepie| + + * two blanks expected: + +|string property with two blanks|is|apple pie| + + * one blank expected: + +|string property with two blanks|is|apple pie| + + * no blanks expected: + +|string property with two blanks|is|applepie| + + * nbsp expected: + +|string property with non breaking space|is|apple pie| + + * one blank expected: + +|string property with non breaking space|is|apple pie| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
    +
  • two blanks expected:
  • +
+
+ + + + +
string propertyisapple pie expected
apple pie actual
apple Δpie diff
+
    +
  • one blank expected:
  • +
+
+ + + + +
string propertyisapple pie
+
    +
  • no blanks expected:
  • +
+
+ + + + +
string propertyisapplepie expected
apple pie actual
appleΔpie diff
+
    +
  • two blanks expected:
  • +
+
+ + + + +
string property with two blanksisapple pie
+
    +
  • one blank expected:
  • +
+
+ + + + +
string property with two blanksisapple pie expected
apple pie actual
apple Δpie diff
+
    +
  • no blanks expected:
  • +
+
+ + + + +
string property with two blanksisapplepie expected
apple pie actual
appleΔΔpie diff
+
    +
  • nbsp expected:
  • +
+
+ + + + +
string property with non breaking spaceisapple&nbsp;pie
+
    +
  • one blank expected:
  • +
+
+ + + + +
string property with non breaking spaceisapple pie expected
apple&nbsp;pie actual
appleΔ&nbsp;pie diff
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsDiffWithBlanks/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsDiffWithBlanks/properties.xml new file mode 100644 index 0000000000..3afbfdf638 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsDiffWithBlanks/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20090923094040 + true + true + true + true + true + true + true + 1253655640722 + -1002675547913169655 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsNot/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsNot/content.txt new file mode 100644 index 0000000000..4e9278da06 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsNot/content.txt @@ -0,0 +1,64 @@ +!2 'is' checks an action against a value +!**< def +!define test1 {!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|int property|is not|200| + +|boolean property|is not|false| + +|string property|is not|apple pi| + +|missing property|is not|pie| + +|ambiguous|1|is|2| + +|''x''|1|''y''|3|''is not''|(1,300)| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + +
int propertyis not200
+
+ + + + +
boolean propertyis notfalse
+
+ + + + +
string propertyis notapple pi
+
+ + + + +
missing property
Missing class or Missing method.
is notpie
+
+ + + + + +
ambiguous
Ambiguity
1is2
+
+ + + + + + + +
x1y3is not(1,300)
+-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsNot/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsNot/properties.xml new file mode 100644 index 0000000000..ba37524e62 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsNot/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1240529258238 + 7946754003464976745 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsWhereDiffDoesNotApply/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsWhereDiffDoesNotApply/content.txt new file mode 100644 index 0000000000..a309c17c07 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsWhereDiffDoesNotApply/content.txt @@ -0,0 +1,65 @@ +!2 A diff is not shown in some circumstances, as covered below: + +!**< def +!define test {!|fitlibrary.specify.DoFixtureFlowUnderTest| + + * Don't diff if actual or expected are less than 5 characters: + +|''get''|1234|'''is'''|12345678| + +|''get''|12345678|'''is'''|1234| + + * Don't diff if more than 10% of the matching characters match more than one character: + +|''get''|24680|'''is'''|1234567890123456789012345678901234567890| + + * But do diff if there is any match of three characters or more: + +|''get''|24680234|'''is'''|1234567890123456789012345678901234567890| + +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
    +
  • Don't diff if actual or expected are less than 5 characters:
  • +
+
+ + + + + +
get1234is12345678 expected
1234 actual
+
+ + + + + +
get12345678is1234 expected
12345678 actual
+
    +
  • Don't diff if more than 10% of the matching characters match more than one character:
  • +
+
+ + + + + +
get24680is1234567890123456789012345678901234567890 expected
24680 actual
+
    +
  • But do diff if there is any match of three characters or more:
  • +
+
+ + + + + +
get24680234is1234567890123456789012345678901234567890 expected
24680234 actual
1234567890123456789012345678901234567890 diff
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsWhereDiffDoesNotApply/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsWhereDiffDoesNotApply/properties.xml new file mode 100644 index 0000000000..d73ab0a537 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestIsWhereDiffDoesNotApply/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20091001174147 + true + true + true + true + true + true + true + 1254372107736 + -477957510838173709 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/DefinedActions/content.txt new file mode 100644 index 0000000000..e5a992875e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/DefinedActions/content.txt @@ -0,0 +1,7 @@ +|an act|m| + +|''log text''|@{m}| + +|boolean property|'''logged'''| + +|show as after table|frog|kettle| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/DefinedActions/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/DefinedActions/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/content.txt new file mode 100644 index 0000000000..6d5a3bf45f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/content.txt @@ -0,0 +1,19 @@ +!2 '''logged''' logs the result of an action, if any +!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|''int property''|'''logged'''| + +|'''logged'''|''int property''| + +|boolean property|'''logged'''| + +|''log text''|Here's the string result:| +|string property|'''logged'''| + +|''define actions at''|.FitLibrary.SpecifiCations.SpecialActions.TestLogged.DefinedActions| + +|''an act''|A message| + +|''set expand defined actions''|true| + +|''an act''|A message| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestLogged/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestMatches/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestMatches/content.txt new file mode 100644 index 0000000000..a7dd99bd1a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestMatches/content.txt @@ -0,0 +1,54 @@ +!2 'matches' pattern matches an action against a value +!**< def +!define test1 {!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|int property|matches|2| + +|boolean property|matches|tr.e| + +|boolean property|matches|t.e| + +|string property|matches|appl.*ie| + +|''x''|1|''y''|3|''matches''|(1,.)| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + +
int propertymatches2
+
+ + + + +
boolean propertymatchestr.e
+
+ + + + +
boolean propertymatchest.e expected
true actual
+
+ + + + +
string propertymatchesappl.*ie
+
+ + + + + + + +
x1y3matches(1,.)
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestMatches/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestMatches/properties.xml new file mode 100644 index 0000000000..af48204389 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestMatches/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20090424113143 + true + true + true + true + true + true + true + 1240529503883 + 5375451597727684035 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNot/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNot/content.txt new file mode 100644 index 0000000000..743d3403ee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNot/content.txt @@ -0,0 +1,83 @@ +!2 'not' and 'reject' test that either a boolean action returns false or any action throws an exception +!**< def +!define test1 (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|not|a right action|1| +|not|a wrong action|1.5||2.2| +|not|an exception action| + +|reject|a right action|1| +|reject|a wrong action|1.5||2.2| +|reject|an exception action| +) +!define test2 (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|not|a parse failure|s| +|not|a missing method| + +|reject|a parse failure|s| +|reject|a missing method| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + + + + + + + + +
nota right action1
nota wrong action1.5 2.2
notan exception action
+
+ + + + + + + + + + + + + +
rejecta right action1
rejecta wrong action1.5 2.2
rejectan exception action
-!| + + * While a parse error (such as a number format exception) will be treated as success, a missing method or other such error is reported as such. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test2}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + + +
nota parse failuresInvalid Number
not
Missing method
a missing method
+
+ + + + + + + +
rejecta parse failuresInvalid Number
reject
Missing method
a missing method
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNot/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNot/properties.xml new file mode 100644 index 0000000000..58efecfbc1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNot/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1225512995468 + 4485243297872318473 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotContains/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotContains/content.txt new file mode 100644 index 0000000000..98c7c08309 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotContains/content.txt @@ -0,0 +1,62 @@ +!2 'matches' pattern matches an action against a value +!**< def +!define test1 {!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|int property|'''does not contain'''|3| + +|boolean property|'''does not contain'''|tru| + +|boolean property|'''does not contain'''|True| + +|string property|'''does not contain'''|apple| + +|string property|'''does not contain'''|orange| + +|''x''|1|''y''|3|'''does not contain'''|(10,| +} + +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + +
int propertydoes not contain3
+
+ + + + +
boolean propertydoes not containtru expected
true actual
+
+ + + + +
boolean propertydoes not containTrue
+
+ + + + +
string propertydoes not containapple expected
apple pie actual
+
+ + + + +
string propertydoes not containorange
+
+ + + + + + + +
x1y3does not contain(10,
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotContains/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotContains/properties.xml new file mode 100644 index 0000000000..f5aa33351d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotContains/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20090911132758 + true + true + true + true + true + true + true + 1252632478390 + 1029246641845871908 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotTrue/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotTrue/content.txt new file mode 100644 index 0000000000..ad8a4a87c0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotTrue/content.txt @@ -0,0 +1,54 @@ +!2 '''not true''' tests that a boolean action returns false. Any exception is signalled in the report. +# +Note the difference between '''not true''' and '''not'''. +!**< def +!define test1 (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|'''not true'''|''a right action''|1| +|'''not true'''|''a wrong action''|1.5||2.2| +|'''not true'''|''an exception action''| +) +!define test2 (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|'''not true'''|''a parse failure''|s| +|'''not true'''|''a missing method''| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + + + + + + + + +
not truea right action1
not truea wrong action1.5 2.2
not true
an exception action
-!| + + * While a parse error (such as a number format exception) will be treated as success, a missing method or other such error is reported as such. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test2}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + + +
not truea parse failures
Invalid Number
not true
Missing method
a missing method
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotTrue/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotTrue/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNotTrue/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNote/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNote/content.txt new file mode 100644 index 0000000000..6c8794cc9b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNote/content.txt @@ -0,0 +1,23 @@ +!2 A note is ignored: +|!-fitlibrary.spec.SpecifyFixture-!| +|!- +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
noteany notespread over severalcells
+ + +
notezero or more cells
+ + +
note
-!|!- +
fitlibrary.specify.DoFixtureFlowUnderTest
+ + +
noteany notespread over severalcells
+ + +
notezero or more cells
+ + +
note
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNote/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNote/properties.xml new file mode 100644 index 0000000000..4947a3cf40 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestNote/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060906010058 + + + + + + + 1131874488093 + 177453869095612271 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestOptionally/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestOptionally/content.txt new file mode 100644 index 0000000000..39e1922267 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestOptionally/content.txt @@ -0,0 +1,38 @@ +!2 '''optionally''' passes regardless of whether the embedded action passes or not. However, show any !-FitLibraryExceptions-! as exceptions. + +If the action returns false or throws a normal exception, the details are added in an extra cell as an aid to understanding. + +!**< def +!define test1 (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|'''optionally'''|a right action|1| +|'''optionally'''|a wrong action|1.5||2.2| +|'''optionally'''|an exception action| +|'''optionally'''|an unknown action| + +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test1}|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + + + + + + + + + + + +
optionallya right action1
optionallya wrong action1.5 2.2false
optionallyan exception action
java.lang.RuntimeException: testing
optionally
Missing method
an unknown action
+
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestOptionally/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestOptionally/properties.xml new file mode 100644 index 0000000000..4dd6fcac3d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestOptionally/properties.xml @@ -0,0 +1,15 @@ + + + true + true + 20090911152755 + true + true + true + true + true + true + true + 1252639675375 + -1836607709976645296 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestRelationals/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestRelationals/content.txt new file mode 100644 index 0000000000..56a15fe49a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestRelationals/content.txt @@ -0,0 +1,172 @@ +!**< def +!define test (!|fitlibrary.specify.DoFixtureFlowUnderTest| + +|''int property''|'''='''|2| +|''int property''|'''<='''|2| +|''int property''|'''>='''|2| +|''int property''|'''<'''|11| +|''int property''|'''>'''|11| +|''int property''|'''>'''|a| + +|''boolean property''|'''='''|true| +|''boolean property''|'''>'''|false| + +|''get''|a|'''<'''|b| +|''get''|a|'''<='''|b| +|''get''|b|'''>'''|a| +|''get''|b|'''>='''|a| + +|''get''|a|'''='''|a| +|''get''|a|'''>='''|a| +|''get''|a|'''<='''|a| + +|''get''|a|'''>'''|b| +|''get''|a|'''>='''|b| +|''get''|b|'''<'''|a| +|''get''|b|'''<='''|a| +|''get''|b|'''='''|a| + + * Note that ''get'' returns a String and so string comparisons are used, giving some strange results with digits: + +|''get''|11|<=|2| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + +
fitlibrary.specify.DoFixtureFlowUnderTest
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int property=2
int property<=2
int property>=2
int property<11
int property>11 expected
2 actual
int property
Invalid Number
>a
+
+ + + + + + + + + + +
boolean property=true
boolean property>false
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
geta<b
geta<=b
getb>a
getb>=a
+
+ + + + + + + + + + + + + + + + + + +
geta=a
geta>=a
geta<=a
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
geta>b expected
a actual
geta>=b expected
a actual
getb<a expected
b actual
getb<=a expected
b actual
getb=a expected
b actual
+
    +
  • Note that get returns a String and so string comparisons are used, giving some strange results with digits:
  • +
+
+ + + + + + +
get11<=2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestRelationals/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestRelationals/properties.xml new file mode 100644 index 0000000000..bee66ad48e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestRelationals/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1254350951954 + -3983986408515368569 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShow/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShow/content.txt new file mode 100644 index 0000000000..f4110a1eeb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShow/content.txt @@ -0,0 +1,47 @@ +!**< def +!define test (!|fitlibrary.specify.specialAction.SpecialActions| + +|'''show'''|''ten''| + +|'''show'''|''html''| + +|'''show'''|''int property''| + +|'''show'''|a true action| +|'''show'''|a false action| +|'''show'''|an error action| +) +**! +!2 'show' adds a new cell to the row to show the returned value of an action + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.specialAction.SpecialActions
+
+ + + +
showten10
+
+ + + +
showhtml
  • ita
  • lics
+
+ + + +
showint property2
+
+ + + + + + + + + +
showa true actiontrue
showa false actionfalse
show
whoops
an error action
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShow/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShow/properties.xml new file mode 100644 index 0000000000..f36ea792fe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShow/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232149531140 + 7161495003736915248 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/DefinedActions/content.txt new file mode 100644 index 0000000000..87eada40b6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/DefinedActions/content.txt @@ -0,0 +1,15 @@ +|''login''|user|''with''|pass| + +|'''show after'''|get|About to login @{user} with password "@{pass}"| + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{pass}| + +|''submit''|//form| + +|''show after as''|login|get|Logged in @{user} with password "@{pass}"| +---- +|''login2''| user |''with''| pass | + +|''login''|@{user}|''with''|@{pass}| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/DefinedActions/properties.xml new file mode 100644 index 0000000000..1242489911 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/DefinedActions/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1253063194940 + -7790256108280237858 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/content.txt new file mode 100644 index 0000000000..a23f14681c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/content.txt @@ -0,0 +1,218 @@ + * Information can be included in a folded area after the table concerned. + * This special action executions the action in the rest of the row and adds the result, as text. + * Text logged within the call to a ''defined action'' is included after the table containing the (outermost) call. + * The text can also be logged from within do fixture code, by calling the method ''showAfterTable() or showAsAfterTable()''. + +!**< def +!define test (!|fitlibrary.specify.definedAction.DefinedActionUnderTest| + +|''clear defined actions''| + +|''define actions at''|.FitLibrary.SpecifiCations.SpecialActions.TestShowAfter.DefinedActions| + +|'''show after'''|''with''|//input[@id="userName"]|''enter text''|chad| + +|''login''|rick|''with''|| + +|''login2''|rick|''with''|| + +|'''show after'''|get|Some text| + +|''set''|message|''to''|!-MessaGe-!| + +|'''show after'''|get|Some more @{message}| + +|'''show after'''|''a void''| + +|'''show after as'''|count folding|''count''| + +|'''show after'''|''count''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}| +|!- + + +
fitlibrary.specify.definedAction.DefinedActionUnderTest
+
+ + +
clear defined actions
+
+ + + +
define actions at.FitLibrary.SpecifiCations.SpecialActions.TestShowAfter.DefinedActions
+
+ + + + + + +
show afterwith//input[@id="userName"]enter textchad
+ + +Logs
+ +
+ + + + + +
loginrickwith 
+ + +Logs
+
+ + +login
+ +
+ + + + + +
login2rickwith 
+ + +Logs
+
+ + +login
+ +
+ + + + +
show afterget<i>Some text</i>
+ + +Logs
+ +
+ + + + + +
setmessagetoMessaGe
+
+ + + + +
show afterget<b>Some more MessaGe</b>
+ + +Logs
+ +
+ + + +
show aftera void
+
+ + + + +
show after ascount foldingcount
+ + +count folding
+ +
+ + + +
show aftercount
+
+ + +Logs
-!| + +!**< def +!define test (!|fitlibrary.specify.specialAction.SpecialActions| + +|'''show after'''|a true action| +|'''show after'''|a false action| +|'''show after'''|an error action| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.specialAction.SpecialActions
+
+ + + + + + + + + +
show aftera true action
show aftera false action
show after
whoops
an error action
+ + +Logs
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/properties.xml new file mode 100644 index 0000000000..8bae53d42a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfter/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1253063278472 + -4808937755159320118 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfterAs/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfterAs/content.txt new file mode 100644 index 0000000000..9c3242b022 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfterAs/content.txt @@ -0,0 +1,79 @@ +!**< def +!define test (!|fitlibrary.specify.specialAction.SpecialActions| + +|'''show after as'''|Log1|''ten''| + +|'''show after as'''|Log2|''html''| + +|'''show after as'''|Log3|a true action| +|'''show after as'''|Log2|a false action| +|'''show after as'''|Log1|an error action| +) +**! + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.specialAction.SpecialActions
+
+ + + + +
show after asLog1ten
+ + +Log1
+ +
+ + + + +
show after asLog2html
+ + +Log2
+ +
+ + + + + + + + + + + + +
show after asLog3a true action
show after asLog2a false action
show after as
whoops
Log1an error action
+ + +Log3
+
+ + +Log2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfterAs/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfterAs/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowAfterAs/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowEscaped/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowEscaped/content.txt new file mode 100644 index 0000000000..c89fd6c8a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowEscaped/content.txt @@ -0,0 +1,48 @@ +!**< def +!define test (!|fitlibrary.specify.specialAction.SpecialActions| + +|'''show escaped'''|''ten''| + +|'''show escaped'''|''html''| + +|'''show escaped'''|''a true action''| +|'''show escaped'''|''a false action''| +|'''show escaped'''|''an error action''| + +|'''show escaped'''|''a string with white space''| +) +**! +!2 'show' adds a new cell to the row to show the returned value of an action + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.specialAction.SpecialActions
+
+ + + +
show escapedten
10
+
+ + + +
show escapedhtml
<ul><li>ita<li>lics</ul>
+
+ + + + + + + + + +
show escapeda true action
true
show escapeda false action
false
show escaped
whoops
an error action
+
+ + + +
show escapeda string with white space
	line one
+	line	2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowEscaped/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowEscaped/properties.xml new file mode 100644 index 0000000000..1acb9ebfc3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowEscaped/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1253147085209 + 6715193843881801793 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowPredefined/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowPredefined/content.txt new file mode 100644 index 0000000000..424f5e2acb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowPredefined/content.txt @@ -0,0 +1,55 @@ +!**< def +!define test (!|fitlibrary.specify.specialAction.SpecialActions| + +|'''show predefined'''|''a string with white space''| + +|'''show predefined'''|''ten''| + +|'''show predefined'''|''html''| + +|'''show predefined'''|''int property''| + +|'''show predefined'''|''a true action''| +|'''show predefined'''|''a false action''| +|'''show predefined'''|''an error action''| +) +**! +!2 'show predefined' adds a new cell to the row to show the returned value of an action, with
 tags around it to show new lines, tabs, etc
+
+|!-fitlibrary.spec.SpecifyFixture-!|
+|${test}|!-
+
+
+
fitlibrary.specify.specialAction.SpecialActions
+
+ + + +
show predefineda string with white space
	line one
+	line	2
+
+ + + +
show predefinedten
10
+
+ + + +
show predefinedhtml
  • ita
  • lics
+
+ + + +
show predefinedint property
2
+
+ + + + + + + + + +
show predefineda true action
true
show predefineda false action
false
show predefined
whoops
an error action
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowPredefined/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowPredefined/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowPredefined/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowWithTags/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowWithTags/content.txt new file mode 100644 index 0000000000..1662b9baca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowWithTags/content.txt @@ -0,0 +1,57 @@ +!**< def +!define test (!|fitlibrary.specify.specialAction.SpecialActions| + +|'''show with tags'''|''ten''| + +|'''show with tags'''|''html''| + +|'''show with tags'''|''a true action''| +|'''show with tags'''|''a false action''| +|'''show with tags'''|''an error action''| + +|'''show escaped'''|''a string with white space''| +) +**! +!2 'show with tags' adds a new cell to the row to show the returned value of an action. It shows the tags, which would otherwise be hidden. + +This is the same as '''show escaped''', but better expresses the intent. + +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + + +
fitlibrary.specify.specialAction.SpecialActions
+
+ + + + +
show with tagsten
10
+
+ + + + +
show with tagshtml
<ul><li>ita<li>lics</ul>
+
+ + + + + + + + + + + + +
show with tagsa true action
true
show with tagsa false action
false
show with tags
whoops
an error action
+
+ + + + +
show escapeda string with white space
	line one
+	line	2
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowWithTags/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowWithTags/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/TestShowWithTags/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/content.txt new file mode 100644 index 0000000000..cf6f8492e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/content.txt @@ -0,0 +1,3 @@ +|!contents| +For the use of the '''set''' special action, see .FitLibrary.SpecifiCations.DynamicVariables. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/properties.xml new file mode 100644 index 0000000000..6160d2fe7b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialActions/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1255037843750 + -1661939008467686002 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/CommentFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/CommentFixture/content.txt new file mode 100644 index 0000000000..f242ace431 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/CommentFixture/content.txt @@ -0,0 +1,12 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + + + + +
fitlibrary.CommentFixture
any oldstuff
iscompletelyignored
andnot evencoloured asignored
-!|!- + + + + +
fitlibrary.CommentFixture
any oldstuff
iscompletelyignored
andnot evencoloured asignored
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/CommentFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/CommentFixture/properties.xml new file mode 100644 index 0000000000..af203d9dae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/CommentFixture/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154330 + + + + + + + + 1133637996046 + 5926463106324467826 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/DotGraphics/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/DotGraphics/content.txt new file mode 100644 index 0000000000..90014e8478 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/DotGraphics/content.txt @@ -0,0 +1,17 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.DoGraphics
+ + +
actions
+ +
checkgraph
-!| +|!- + +
fitlibrary.specify.DoGraphics
+ + +
actions
+ +
checkgraph
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/DotGraphics/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/DotGraphics/properties.xml new file mode 100644 index 0000000000..5135053d60 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/DotGraphics/properties.xml @@ -0,0 +1,14 @@ + + + + + 20061210204308 + + + + + + + 1157083299505 + 6821961419613333132 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/EmbeddedTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/EmbeddedTables/content.txt new file mode 100644 index 0000000000..aa011eb873 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/EmbeddedTables/content.txt @@ -0,0 +1,175 @@ +!**< def +!define table0 (|''embedded2''| +) +!define table1 (|''embedded3''| +) +!define table2 (|${table1}|''embedded4''| +) +!define table3 (|''embedded1''|${table0}| +) +!define list ( + * one +) +!define table4 (|${list}|${table1}| +) +!define test (!|fitlibrary.specify.DoTable| + +|check|''first cell value''|3|${table1}| +|check|''first cell value''|3|4| + +|show|''first cell value''|${table2}| + +|show|''a table''| + +|check|''first cell string value''|${table3}|''embedded1''| +|check|''first cell string value''|${table3}|''one''| +|check|''first cell string value''|${table4}|${list}| + +|check|''first cell value''|${table2}|${table1}| + +|check|''null table''|12| + +|''expected test results''|3|''right''|1|''wrong''|0|''ignored''|3|''exceptions''| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.DoTable
+
+ + + + + + + + + + +
checkfirst cell value3
Missing table
+ + +
embedded3
+
checkfirst cell value3
Missing table
4
+
+ + + + +
showfirst cell value + + + +
+ + +
embedded3
+
embedded4
+
+ + +
embedded3
+
+
+ + + +
showa table
onetwothree
+
+ + + + + + + + + + + + + + + +
checkfirst cell string value + + + +
embedded1 + + +
embedded2
+
+
embedded1
checkfirst cell string value + + + +
embedded1 + + +
embedded2
+
+
one expected
embedded1 actual
checkfirst cell string value + + + +
+
    +
  • one +
  • +
+
+ + +
embedded3
+
+
+
    +
  • one +
  • +
+
+
+ + + + + +
checkfirst cell value + + + +
+ + +
embedded3
+
embedded4
+
+ + +
embedded3
+
+
+ + + + +
checknull table12
Missing table
+
+ + + + + + + + + + +
expected test results3right1wrong0ignored3exceptions
-!| + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/EmbeddedTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/EmbeddedTables/properties.xml new file mode 100644 index 0000000000..88c3dc437e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/EmbeddedTables/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232149778140 + 7888383023898406557 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestDirectories/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestDirectories/content.txt new file mode 100644 index 0000000000..4b0bddbf91 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestDirectories/content.txt @@ -0,0 +1,17 @@ +!|fitlibrary.CompareFilesFixture| +!2 A directory with files is equal to itself +!|check|directory|testFiles/selfDiry|same as|testFiles/selfDiry|selfDiry| +!2 The two directories are equal +!|check|directory|testFiles/diry1|same as|testFiles/diry2|diry1| +!2 Differing directories due to different files +!|check|directory|testFiles/diry3|same as|testFiles/diry4|!-diry3
  • threeLines.txt
    • Missing
  • empty.txt
    • Surplus
-!| +!2 Differing directories due to extra files +!|check|directory|testFiles/diry4|same as|testFiles/diry5|!-diry4
  • empty.txt
  • alsoEmpty.xls
    • Surplus
-!| +!2 Differing directories due to different sub-directories +!|check|directory|testFiles/diry5|same as|testFiles/diry6|!-diry5
  • alsoEmpty.xls
  • empty.txt
  • emptyFolder
    • Surplus folder
-!| +!2 Differing directories due to different file size +!|check|directory|testFiles/diry5|same as|testFiles/diry7|!-diry5
  • alsoEmpty.xls
  • empty.txt
    • File shorter by 3 bytes than:
    • empty.txt
-!| +!2 Differing directories due to different file contents +!|check|directory|testFiles/diry7|same as|testFiles/diry8|!-diry7
  • alsoEmpty.xls
  • empty.txt
    • Files differ at byte position 2
    • empty.txt
-!| + +Note that git doesn't track empty directories, so all of the so-called empty directories used here have, in fact, a single file in them of 0 bytes. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestDirectories/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestDirectories/properties.xml new file mode 100644 index 0000000000..885110c7d0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestDirectories/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1167428015343 + -3950739481413952342 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestFiles/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestFiles/content.txt new file mode 100644 index 0000000000..3264af00c7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestFiles/content.txt @@ -0,0 +1,11 @@ +!|fitlibrary.CompareFilesFixture| +!2 Two empty files are the same +|check|''file''|testFiles/empty.txt|''same as''|testFiles/alsoEmpty.xls|OK| +!2 A file is equal to itself +|check|''file''|testFiles/threeLines.txt|''same as''|testFiles/threeLines.txt|OK| +!2 The two files are equal +|check|''file''|testFiles/threeLines.txt|''same as''|testFiles/alsoThreeLines.txt|OK| +!2 Differing file lengths +|check|''file''|testFiles/threeLines.txt|''same as''|testFiles/empty.txt|!-threeLines.txt
  • File longer by 19 bytes than:
  • empty.txt
-!| +!2 Differing file contents +|check|''file''|testFiles/threeLines.txt|''same as''|testFiles/differingThreeLines.txt|!-threeLines.txt
  • Files differ at byte position 9
  • differingThreeLines.txt
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestFiles/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestFiles/properties.xml new file mode 100644 index 0000000000..f918bb8455 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/TestFiles/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061230103352 + + + + + + + + 1167428032093 + 2268654450663136320 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/content.txt new file mode 100644 index 0000000000..e410f40272 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/content.txt @@ -0,0 +1,4 @@ +!2 Files +^TestFiles +!2 Directories +^TestDirectories diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/properties.xml new file mode 100644 index 0000000000..42217a709e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/FileCompare/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154330 + + + + + + + + 1132894718218 + 3984448095065772005 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGrid/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGrid/content.txt new file mode 100644 index 0000000000..40749e01aa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGrid/content.txt @@ -0,0 +1,15 @@ +!**< def +!define test (!|fitlibrary.specify.GridFixtureUnderTest| + +|empty| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + +
empty
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGrid/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGrid/properties.xml new file mode 100644 index 0000000000..77067b6b04 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGrid/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514419734 + 1593482929145468882 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridExpected/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridExpected/content.txt new file mode 100644 index 0000000000..f1bb746aca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridExpected/content.txt @@ -0,0 +1,22 @@ +!**< def +!define test (!|fitlibrary.specify.GridFixtureUnderTest| + +|strings| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + + + + + + + +
strings
Actuals:
a b
c d
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridExpected/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridExpected/properties.xml new file mode 100644 index 0000000000..54ea28ba10 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridExpected/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514428015 + 4937847557046617391 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridNotExpected/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridNotExpected/content.txt new file mode 100644 index 0000000000..643d0b4b62 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridNotExpected/content.txt @@ -0,0 +1,21 @@ +!**< def +!define test (!|fitlibrary.specify.GridFixtureUnderTest| + +|empty| +|a|b| +) +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + + + + +
empty
ab
Actuals:
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridNotExpected/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridNotExpected/properties.xml new file mode 100644 index 0000000000..eb9c738237 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/EmptyGridNotExpected/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514439140 + -7339828567489837136 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/ImageGrid/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/ImageGrid/content.txt new file mode 100644 index 0000000000..7a761bcec2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/ImageGrid/content.txt @@ -0,0 +1,22 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + + + + +
images
-!|!- + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + + + + +
images
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/ImageGrid/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/ImageGrid/properties.xml new file mode 100644 index 0000000000..7bb8bbba1e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/ImageGrid/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1157084875271 + -2844390490291463463 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/IntGrid/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/IntGrid/content.txt new file mode 100644 index 0000000000..81e0980c02 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/IntGrid/content.txt @@ -0,0 +1,16 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + +
ints
12
34
-!|!- + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + +
ints
12
34
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/IntGrid/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/IntGrid/properties.xml new file mode 100644 index 0000000000..f60199ebdf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/IntGrid/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1157084920767 + 5883572832830248166 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGrid/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGrid/content.txt new file mode 100644 index 0000000000..2cb06a6279 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGrid/content.txt @@ -0,0 +1,16 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.GridFixtureUnderTest
+ + + + +
strings
ab
cd
-!|!- + +
fitlibrary.specify.GridFixtureUnderTest
+ + + + +
strings
ab
cd
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGrid/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGrid/properties.xml new file mode 100644 index 0000000000..c6c26cfc93 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGrid/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1157084973242 + -8469588984130600110 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGridNotExpected/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGridNotExpected/content.txt new file mode 100644 index 0000000000..b7b9eda193 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGridNotExpected/content.txt @@ -0,0 +1,23 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.GridFixtureUnderTest
+ + + + +
strings
a2
c4
-!|!- + +
fitlibrary.specify.GridFixtureUnderTest
+ + + + + + + + + + + +
strings
a2
c4
Actuals:
a b
c d
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGridNotExpected/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGridNotExpected/properties.xml new file mode 100644 index 0000000000..ded5c891b9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/StringGridNotExpected/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1157085023595 + -5454949606993998029 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/TreeGrid/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/TreeGrid/content.txt new file mode 100644 index 0000000000..6829ae84ba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/TreeGrid/content.txt @@ -0,0 +1,16 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + +
trees
a
  • a
  • BB
  • a
  • BB
-!|!- + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + +
trees
a
  • a
  • BB
  • a
  • BB
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/TreeGrid/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/TreeGrid/properties.xml new file mode 100644 index 0000000000..569502b723 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/TreeGrid/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1157085068048 + 5485299115174955589 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/content.txt new file mode 100644 index 0000000000..92164dec0f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/content.txt @@ -0,0 +1,11 @@ +A ''!-GridFixture-!'' checks an ''Object[][]'' against the table. So it's like ''!-ArrayFixture-!'' except that there are no labels. + +^EmptyGrid +^EmptyGridExpected +^EmptyGridNotExpected +^StringGrid +^StringGridNotExpected +^IntGrid +^TreeGrid +^ImageGrid + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/properties.xml new file mode 100644 index 0000000000..9ff2c9c445 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/GridFixture/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818154330 + + + + + + + + 1145354747653 + 4789246356006026948 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/ImageFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/ImageFixture/content.txt new file mode 100644 index 0000000000..ab3de9a5ac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/ImageFixture/content.txt @@ -0,0 +1,35 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + + + + +
images for image fixture
+
+ +
images for image fixture
-!|!- + +
fitlibrary.specify.GridFixtureUnderTest
+
+ + + + + + +
images for image fixture
+
+ + + + + + + + +
images for image fixture
Actuals:
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/ImageFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/ImageFixture/properties.xml new file mode 100644 index 0000000000..1216eb433d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/ImageFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1157085152860 + -2939167838627652368 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TaggedStrings/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TaggedStrings/content.txt new file mode 100644 index 0000000000..f7c9cbd22f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TaggedStrings/content.txt @@ -0,0 +1,44 @@ +!3 Sometimes we want the html tags in a cell to be kept; they're usually discarded. +If the type of a parameter, etc is a subtype of ''!-TaggedString-!'', the tags and all are supplied as a String +!|fitlibrary.spec.SpecifyFixture| +|!- + +
fitlibrary.specify.DoWithTags
+ + +
checktagged textbold
+ + +
checktag textboldbold
+ + +
checktag text
one
one
+ + + +
checktag text
  • one
  • two
  • one
  • two
+ + + + +
checktag textboldbold
checktag textboldbold
-!|!- + +
fitlibrary.specify.DoWithTags
+ + +
checktagged textbold
+ + +
checktag textboldbold
+ + +
checktag text
one
one
+ + + +
checktag text
  • one
  • two
  • one
  • two
+ + + + +
checktag textboldbold expected
bold actual
checktag textboldbold expected
bold actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TaggedStrings/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TaggedStrings/properties.xml new file mode 100644 index 0000000000..91b82cb529 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TaggedStrings/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1157085239986 + 4570346251607661150 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TreeGraphics/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TreeGraphics/content.txt new file mode 100644 index 0000000000..0c7f22df7f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TreeGraphics/content.txt @@ -0,0 +1,42 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.DoTree
+ + + + + +
checktree
  • a
  • BB
showtree
showtree
  • A
  • B
checktee treeA
  • A
B
  • A
+ + + +
showit
checkitB
  • a
  • BB
+ + + + + +
it
checktitleB
showchildren
checkchildren[a, b]
-!|!- + +
fitlibrary.specify.DoTree
+ + + + + + + +
checktree
  • a
  • BB
showtree
  • a
  • BB
showtree
  • A
  • B
AB
checktee treeA
  • A
B
  • A
+ + + + +
showitB
  • a
  • BB
checkitB
  • a
  • BB
+ + + + + + +
it
checktitleB
showchildrena, BB
checkchildren[a, b] expected
a, BB actual
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TreeGraphics/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TreeGraphics/properties.xml new file mode 100644 index 0000000000..78224fa763 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/TreeGraphics/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232149836984 + -9074475866149751673 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/UseTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/UseTables/content.txt new file mode 100644 index 0000000000..8136c8e558 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/UseTables/content.txt @@ -0,0 +1,26 @@ +!*> defines +!define tables {|a|b|c| + +|d| +} +*! + +Fixturing code can access table directly. + +!|fitlibrary.specify.specialisedTables.UseTables| + +This works fine for action parameters: + +|''use tables''|${tables}| + +And works fine with dynamic variables: + +|'''set'''|x|''to''|${tables}| + +|''use tables''|@{x}| + +But it doesn't work properly with '''show''' or '''is'''. + +|'''show'''|''return tables''|${tables}| + +As I only need to use them in action parameters, I'm not going to fix it now. diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/UseTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/UseTables/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/UseTables/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/content.txt new file mode 100644 index 0000000000..0922de4d48 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/content.txt @@ -0,0 +1,2 @@ +|!contents| +^UseTables diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/properties.xml new file mode 100644 index 0000000000..d592456cc5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SpecialisedTables/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232248061484 + -6768624751179140958 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/DynamicVariablesPassedFromSuite/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/DynamicVariablesPassedFromSuite/content.txt new file mode 100644 index 0000000000..530dac6ede --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/DynamicVariablesPassedFromSuite/content.txt @@ -0,0 +1,62 @@ +!**< defs +!define simple ( +!|fitlibrary.specify.suite.Simple| + +|'''set'''|xx|''to''|1| +) +!define one ( +!|fitlibrary.specify.suite.MyOtherDoFixture| + +|action on that| + +|''get''|@{xx}|'''is'''|1| + +|'''set'''|xx|''to''|2| +) +!define two ( +!|fitlibrary.specify.suite.MyOtherDoTraverse| + +|action on that| + +|''get''|@{xx}|'''is'''|1| +) +**! +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|${simple}|${simple}| +|${one}|!-
+ + +
fitlibrary.specify.suite.MyOtherDoFixture
+
+ + +
action on that
+
+ + + + + +
get1is1
+
+ + + + + +
setxxto2
-!| +|${two}|!-
+ + +
fitlibrary.specify.suite.MyOtherDoTraverse
+
+ + +
action on that
+
+ + + + + +
get1is1
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/DynamicVariablesPassedFromSuite/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/DynamicVariablesPassedFromSuite/properties.xml new file mode 100644 index 0000000000..0dbf9aafbb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/DynamicVariablesPassedFromSuite/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20090930124102 + + + + + + + + + 1254267662186 + 3086438335986594039 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SetUpHandling/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SetUpHandling/content.txt new file mode 100644 index 0000000000..8b60e73dca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SetUpHandling/content.txt @@ -0,0 +1,276 @@ +!**< def +!define c1 ( +!|fitlibrary.specify.suite.SimpleSetUp| + +|''select or''|complete| + +|'''check'''|''set up count''|1| +|'''check'''|''tear down count''|0| + +|'''check'''|''suite set up count''|1| +|'''check'''|''suite tear down count''|0| + +|'''check'''|''total local set ups''|0| +|'''check'''|''total local tear downs''|0| +) +!define c2 ( +|'''check'''|''suite set up count''|1| +|'''check'''|''suite tear down count''|0| + +|'''check'''|''total local set ups''|0| +|'''check'''|''total local tear downs''|0| + +|''keywords''|complete,money| + +|''aFixture''| +|''and some immediate action''| + +|'''check'''|''local set up count''|1| + +|''and more''| + +|''and more besides''| + +|'''check'''|''local set up count''|1| +) +!define c2B ( +|'''check'''|''suite set up count''|1| +|'''check'''|''suite tear down count''|0| + +|'''check'''|''total local set ups''|1| +|'''check'''|''total local tear downs''|1| + +|''keywords''|complete,money| + +|''aFixture''| +|''and some immediate action''| + +|'''check'''|''local set up count''|1| + +|''and more''| + +|''and more besides''| + +|'''check'''|''local set up count''|1| +) +!define c3 ( +|'''check'''|''suite set up count''|1| +|'''check'''|''suite tear down count''|0| + +|'''check'''|''total local set ups''|2| +|'''check'''|''total local tear downs''|2| + +|''keywords''|underway| + +|''a fixture''| + +|'''check'''|''local set up count''|1| + +|''and some immediate action''| + +|'''check'''|''local set up count''|1| +) +!define c4 ( +|'''check'''|''total local set ups''|2| +|'''check'''|''total local tear downs''|2| +) +**! +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|${c1}|!-
+ + +
fitlibrary.specify.suite.SimpleSetUp
+
+ + + +
select orcomplete
+
+ + + + + + + + +
checkset up count1
checktear down count0
+
+ + + + + + + + +
checksuite set up count1
checksuite tear down count0
+
+ + + + + + + + +
checktotal local set ups0
checktotal local tear downs0
-!|''Normally in !-SuiteSetUp-!''| +|${c2}|!-
+ + + + + + + + +
checksuite set up count1
checksuite tear down count0
+
+ + + + + + + + +
checktotal local set ups0
checktotal local tear downs0
+
+ + + +
keywordscomplete,money
+
+ + + + +
aFixture
and some immediate action
+
+ + + + +
checklocal set up count1
+
+ + +
and more
+
+ + +
and more besides
+
+ + + + +
checklocal set up count1
-!|''Test One is selected''| +|${c2B}|!-
+ + + + + + + + +
checksuite set up count1
checksuite tear down count0
+
+ + + + + + + + +
checktotal local set ups1
checktotal local tear downs1
+
+ + + +
keywordscomplete,money
+
+ + + + +
aFixture
and some immediate action
+
+ + + + +
checklocal set up count1
+
+ + +
and more
+
+ + +
and more besides
+
+ + + + +
checklocal set up count1
-!|''Test One is selected again''| +|${c3}|!-
+ + + + + + + + +
checksuite set up count1
checksuite tear down count0
+
+ + + + + + + + +
checktotal local set ups2
checktotal local tear downs2
+
+ + + +
keywordsunderway
+
+ + +
a fixture
+
+ + + + +
checklocal set up count1
+
+ + +
and some immediate action
+
+ + + + +
checklocal set up count1
-!|''Test Two is not selected''| +|${c4}|!-
+ + + + + + + + +
checktotal local set ups2
checktotal local tear downs2
-!|| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SetUpHandling/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SetUpHandling/properties.xml new file mode 100644 index 0000000000..0ce3bd6dfb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SetUpHandling/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1225514536578 + 8961001480438491097 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDifferentSuiteFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDifferentSuiteFixture/content.txt new file mode 100644 index 0000000000..0ad035f078 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDifferentSuiteFixture/content.txt @@ -0,0 +1,53 @@ +!2 A different ''!-SuiteFixture-!'' is used at the start (from another storytest) + * It has different fixtures, with slightly different results from the actions +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|!- + +
fitlibrary.specify.suite.VariantOnSimple
+ + +
select orunderway
-!|!- + +
fitlibrary.specify.suite.VariantOnSimple
+ + +
select orunderway
-!|''Normally in !-SuiteSetUp-!''| +|!- + +
keywordscomplete,money
+ + + +
a fixture
and some immediate action
+ + +
and more
+ + +
and more besides
-!|!- + +
keywordscomplete,money
+ + + +
a fixture
and some immediate action
+ + +
and more
+ + +
and more besides
-!|''Test One is not selected''| +|!- + +
keywordsunderway
+ + + +
a fixture
and some immediate action
-!|!- + +
keywordsunderway
+ + + +
a fixture
and some immediate action
-!|''Test Two is selected''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDifferentSuiteFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDifferentSuiteFixture/properties.xml new file mode 100644 index 0000000000..e2507abf79 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDifferentSuiteFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1165482357674 + -8969627129935846192 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDoFixtureClassName/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDoFixtureClassName/content.txt new file mode 100644 index 0000000000..353d7e4b9c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDoFixtureClassName/content.txt @@ -0,0 +1,33 @@ +!**< defs +!define simple ( +!|fitlibrary.specify.suite.Simple| +) +!define one ( +!|fitlibrary.specify.suite.MyOtherDoFixture| + +|action on that| +) +!define two ( +!|fitlibrary.specify.suite.MyOtherDoTraverse| + +|action on that| +) +**! +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|${simple}|${simple}| +|${one}|!-
+ + +
fitlibrary.specify.suite.MyOtherDoFixture
+
+ + +
action on that
-!| +|${two}|!-
+ + +
fitlibrary.specify.suite.MyOtherDoTraverse
+
+ + +
action on that
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDoFixtureClassName/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDoFixtureClassName/properties.xml new file mode 100644 index 0000000000..a2876c89ba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyDoFixtureClassName/properties.xml @@ -0,0 +1,17 @@ + + + + + + 20081122171331 + + + + + + + + + 1227327211515 + 2163304913766440199 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFilteringWithSelection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFilteringWithSelection/content.txt new file mode 100644 index 0000000000..12738ad56d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFilteringWithSelection/content.txt @@ -0,0 +1,54 @@ +!2 A ''!-SuiteFixture-!'' is used at the start + * It selects all storytests with the keyword ''complete'' + * If a storytest is not selected, such as ''Test Two'', the ''keywords'' table at the start is marked as '''ignored''' +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|!- + +
fitlibrary.specify.suite.Simple
+ + +
select orcomplete
-!|!- + +
fitlibrary.specify.suite.Simple
+ + +
select orcomplete
-!|''Normally in !-SuiteSetUp-!''| +|!- + +
keywordscomplete,money
+ + + +
a fixture
and some immediate action
+ + +
and more
+ + +
and more besides
-!|!- + +
keywordscomplete,money
+ + + +
a fixture
and some immediate action
+ + +
and more
+ + +
and more besides
-!|''Test One is selected''| +|!- + +
keywordsunderway
+ + + +
a fixture
and some immediate action
-!|!- + +
keywordsunderway
+ + + +
a fixture
and some immediate action
-!|''Test Two is not selected''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFilteringWithSelection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFilteringWithSelection/properties.xml new file mode 100644 index 0000000000..f325e30fbc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFilteringWithSelection/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1165481816396 + 7159574954054525225 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFixtureClassNameHandled/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFixtureClassNameHandled/content.txt new file mode 100644 index 0000000000..5a5e513442 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFixtureClassNameHandled/content.txt @@ -0,0 +1,46 @@ +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|!- + +
fitlibrary.specify.suite.Simple
+ + +
select orcomplete
-!|!- + +
fitlibrary.specify.suite.Simple
+ + +
select orcomplete
-!| +|!- + +
keywordscomplete,money
+ + + +
fit.ColumnFixture
and some immediate action()
-!|!- + +
keywordscomplete,money
+ + + +
fit.ColumnFixture
and some
Could not find field: and some.
immediate action()
-!| + * And when it's the first table of a storytest: +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|!- + +
fitlibrary.specify.suite.Simple
+ + +
select orcomplete
-!|!- + +
fitlibrary.specify.suite.Simple
+ + +
select orcomplete
-!| +|!- + + +
fit.ColumnFixture
and some immediate action()
-!|!- + + +
fit.ColumnFixture
and some
Could not find field: and some.
immediate action()
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFixtureClassNameHandled/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFixtureClassNameHandled/properties.xml new file mode 100644 index 0000000000..af9ae4f522 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyFixtureClassNameHandled/properties.xml @@ -0,0 +1,15 @@ + + + + + 20080702174302 + + + + + + + + 1214977382890 + -9127061023881455184 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyShareResources/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyShareResources/content.txt new file mode 100644 index 0000000000..0621bc493d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyShareResources/content.txt @@ -0,0 +1,47 @@ +!2 The ''!-SuiteFixture-!'' can pass resources to the storytest fixtures it creates + * We test this in a bizarre way: by having the resources affect the storytests. The count supplied to the suite fixture is passed to each storytest fixture in turn, incremented each time +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|!- + +
fitlibrary.specify.suite.Simple
+ + +
select orcomplete
+ + +
count is10
-!|!- + +
fitlibrary.specify.suite.Simple
+ + +
select orcomplete
+ + +
count is10
-!|''Normally in !-SuiteSetUp-!''| +|!- + +
keywordscomplete,money
+ + + +
a fixture
checkcount10
-!|!- + +
keywordscomplete,money
+ + + +
a fixture
checkcount10
-!|''Test One is selected''| +|!- + +
keywordscomplete
+ + + +
a fixture
checkcount11
-!|!- + +
keywordscomplete
+ + + +
a fixture
checkcount11
-!|''Test Two is selected''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyShareResources/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyShareResources/properties.xml new file mode 100644 index 0000000000..f6f227729f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyShareResources/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061207220929 + + + + + + + + 1165482569899 + 22788262821040457 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSelection/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSelection/content.txt new file mode 100644 index 0000000000..d3bef9e2fa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSelection/content.txt @@ -0,0 +1,48 @@ +!2 A ''!-SuiteFixture-!'' is used at the start + * It doesn't specify any keywords + * So all storytests are selected +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|!- + +
fitlibrary.specify.suite.Simple
-!|!- + +
fitlibrary.specify.suite.Simple
-!|''Normally in !-SuiteSetUp-!''| +|!- + +
keywordscomplete,money
+ + + +
a fixture
and some immediate action
+ + +
and more
+ + +
and more besides
-!|!- + +
keywordscomplete,money
+ + + +
a fixture
and some immediate action
+ + +
and more
+ + +
and more besides
-!|''Test One is selected''| +|!- + +
keywordsunderway
+ + + +
a fixture
and some immediate action
-!|!- + +
keywordsunderway
+ + + +
a fixture
and some immediate action
-!|''Test Two is selected''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSelection/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSelection/properties.xml new file mode 100644 index 0000000000..182da2e8c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSelection/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061207220957 + + + + + + + + 1165482597569 + -1658259400389650804 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSuiteFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSuiteFixture/content.txt new file mode 100644 index 0000000000..90a10ecec6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSuiteFixture/content.txt @@ -0,0 +1,18 @@ +!2 Here we have no ''!-SpecifyFixture-!'' started +(Each of the outer rows corresponds to a separate storytest.) + +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
checksum0
-!|!- + + +
fitlibrary.specify.DoFixtureFlowUnderTest
checksum0
-!| +|!- + + +
do under test
checksum0
-!|!- + + +
do under test
check
sum0
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSuiteFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSuiteFixture/properties.xml new file mode 100644 index 0000000000..a69ec89b55 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SpecifyWithoutSuiteFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1167171639062 + -8931393708004251716 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SuiteActionIsUsefulWhenOnlyNeedDynamicVariablesFromSuite/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SuiteActionIsUsefulWhenOnlyNeedDynamicVariablesFromSuite/content.txt new file mode 100644 index 0000000000..1cd97d6b7f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SuiteActionIsUsefulWhenOnlyNeedDynamicVariablesFromSuite/content.txt @@ -0,0 +1,35 @@ +!**< defs +!define simple (|''suite''| + +|'''set'''|xx|''to''|1| +) +!define one (|''get''|@{xx}|'''is'''|1| + +|'''set'''|xx|''to''|2| +) +!define two (|''get''|@{xx}|'''is'''|1| +) +**! +|!-fitlibrary.spec.SpecifySuiteFixture-!| +|${simple}|${simple}|| +|${one}|!- + + + + + +
get1is1
+
+ + + + + +
setxxto2
-!|| +|${two}|!- + + + + + +
get1is1
-!|| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SuiteActionIsUsefulWhenOnlyNeedDynamicVariablesFromSuite/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SuiteActionIsUsefulWhenOnlyNeedDynamicVariablesFromSuite/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/SuiteActionIsUsefulWhenOnlyNeedDynamicVariablesFromSuite/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/content.txt new file mode 100644 index 0000000000..edd15625d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/content.txt @@ -0,0 +1,12 @@ +^SpecifyWithoutSuiteFixture +^SpecifyFilteringWithSelection +^SpecifyDifferentSuiteFixture +^SpecifyWithoutSelection +^SpecifyShareResources +>SpecifyFixtureClassNameHandled +^SpecifyDoFixtureClassName + +^SetUpHandling +^SuiteActionIsUsefulWhenOnlyNeedDynamicVariablesFromSuite + +^DynamicVariablesPassedFromSuite diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/properties.xml new file mode 100644 index 0000000000..267961888c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/SuiteFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1254267064478 + -4732271189215213586 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/BadFixtureClass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/BadFixtureClass/content.txt new file mode 100644 index 0000000000..73f918036e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/BadFixtureClass/content.txt @@ -0,0 +1,7 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
UnknownClass
-!|!- + +
UnknownClass
Missing class or Missing method. Possibly:
  • public Type getUnknownClass() { }
  • public Type unknownClass() { }
-!| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/BadFixtureClass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/BadFixtureClass/properties.xml new file mode 100644 index 0000000000..b0be00c0f8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/BadFixtureClass/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1155352191232 + -8985247537126422302 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestCalculation/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestCalculation/content.txt new file mode 100644 index 0000000000..3dfb372e3d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestCalculation/content.txt @@ -0,0 +1,53 @@ +!3 A ''domain adapter'' may be used in a ''!-CalculateFixture-!'' +!**< def +!define test {!|fitlibrary.DoFixture| + +|start|!-fitlibrary.specify.DomainAdapterUnderTest-!| + +|calculate| +|''a''|''b''||''product''| +|11|2||22| + +|calculate| +|''x''|''y''||''sum''| +|1|2||3| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.DoFixture
+
+ + + +
startfitlibrary.specify.DomainAdapterUnderTest
+
+ + + + + + + + + + + + +
calculate
ab product
112 22
+
+ + + + + + + + + + + + +
calculate
xy sum
12 3
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestCalculation/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestCalculation/properties.xml new file mode 100644 index 0000000000..ded31ca917 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestCalculation/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101174231 + + + + + + + + 1225514551609 + 2648804584830880790 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUp/content.txt new file mode 100644 index 0000000000..83626bb6df --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUp/content.txt @@ -0,0 +1,53 @@ +!3 A ''domain adapter'' may be used in a ''!-CalculateFixture-!'' +!**< def +!define test {!|fitlibrary.DoFixture| + +|start|!-fitlibrary.specify.DomainAdapterUnderTest-!| + +|create| +|''a''|''b''| +|11|2| +|12|3| + +|''ab''| +|''a''|''b''| +|11|2| +|12|3| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.DoFixture
+
+ + + +
startfitlibrary.specify.DomainAdapterUnderTest
+
+ + + + + + + + + + + +
create
ab
112
123
+
+ + + + + + + + + + + +
ab
ab
112
123
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUp/properties.xml new file mode 100644 index 0000000000..97dc37d7b3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUp/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101174241 + + + + + + + + 1225514561578 + 2983641020827696847 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUpMethodAccess/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUpMethodAccess/content.txt new file mode 100644 index 0000000000..1251a2fbfa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUpMethodAccess/content.txt @@ -0,0 +1,3 @@ +A method is called for the set up of embedded tables. This method can be defined in a ''!-DomainAdapter-!''. + +|Fail this| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUpMethodAccess/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUpMethodAccess/properties.xml new file mode 100644 index 0000000000..ff4d20ec9c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestSetUpMethodAccess/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060818160302 + + + + + + + 1149827569488 + -5178642272815465465 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestStartDoDomainAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestStartDoDomainAdapter/content.txt new file mode 100644 index 0000000000..3e2953f6ea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestStartDoDomainAdapter/content.txt @@ -0,0 +1,32 @@ +!3 A ''domain adapter'' may be started with a ''!-DoFixture-!'' +!**< def +!define test {!|fitlibrary.DoFixture| + +|start|!-fitlibrary.specify.DomainAdapterUnderTest-!| + +|call|1| +|call in sut|2| +|call in sut sut|3| +} +**! +|!-fitlibrary.spec.SpecifyFixture-!| +|${test}|!- + + +
fitlibrary.DoFixture
+
+ + + +
startfitlibrary.specify.DomainAdapterUnderTest
+
+ + + + + + + + + +
call1
call in sut2
call in sut sut3
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestStartDoDomainAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestStartDoDomainAdapter/properties.xml new file mode 100644 index 0000000000..ea884b82a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/TestStartDoDomainAdapter/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101174250 + + + + + + + + 1225514570468 + 6376106751485246270 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/content.txt new file mode 100644 index 0000000000..27d2a52906 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/content.txt @@ -0,0 +1,9 @@ +!3 Instead of subclassing a ''!-FitLibrary-!'' fixture class, a ''domain adapter'' can be used. +A ''domain adapter'' is used like a SUT except that it may implement the interface ''!-DomainAdapter-!'', in which case it can in turn refer to a SUT. This allows a chain of SUTs, by the way. But more importantly: + * It allows for ''domain adapters'' to be organised into their own type hierarchy independent of fixtures + * The fixture methods are not available, simplifying the interface of those classes + +^TestStartDoDomainAdapter +^TestCalculation +^TestSetUp +^TestSetUpMethodAccess diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/properties.xml new file mode 100644 index 0000000000..e329bc598e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyDomainAdapter/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160302 + + + + + + + + 1155870998964 + -2410770247981078451 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/FixtureConstructorHidden/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/FixtureConstructorHidden/content.txt new file mode 100644 index 0000000000..a6300889ad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/FixtureConstructorHidden/content.txt @@ -0,0 +1,7 @@ +!3 A non-public constructor is now handled +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.initialClass.ClassWithHiddenConstructor
-!|!- + +
fitlibrary.specify.initialClass.ClassWithHiddenConstructor
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/FixtureConstructorHidden/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/FixtureConstructorHidden/properties.xml new file mode 100644 index 0000000000..deabd094ee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/FixtureConstructorHidden/properties.xml @@ -0,0 +1,15 @@ + + + + + 20061117140155 + + + + + + + + 1163725315200 + 3198725765900932796 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/NoNullaryConstructor/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/NoNullaryConstructor/content.txt new file mode 100644 index 0000000000..68aad7bc5b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/NoNullaryConstructor/content.txt @@ -0,0 +1,6 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
fitlibrary.specify.initialClass.ClassWithNoNullaryConstructor
-!|!- + +
fitlibrary.specify.initialClass.ClassWithNoNullaryConstructor
Class has no default constructor
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/NoNullaryConstructor/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/NoNullaryConstructor/properties.xml new file mode 100644 index 0000000000..6bbf109a0a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/NoNullaryConstructor/properties.xml @@ -0,0 +1,15 @@ + + + + + 20081101174930 + + + + + + + + 1225514970250 + -5703308475349583731 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/UnknownClass/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/UnknownClass/content.txt new file mode 100644 index 0000000000..87de295e9b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/UnknownClass/content.txt @@ -0,0 +1,6 @@ +|!-fitlibrary.spec.SpecifyFixture-!| +|!- + +
Unknown
-!|!- + +
Unknown
Missing class or Missing method. Possibly:
  • public Type getUnknown() { }
  • public Type unknown() { }
-!| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/UnknownClass/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/UnknownClass/properties.xml new file mode 100644 index 0000000000..1547a6d094 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/UnknownClass/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1155353189127 + 7516254368625355580 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/content.txt new file mode 100644 index 0000000000..56271ab1d9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/content.txt @@ -0,0 +1,6 @@ +^UnknownClass +^FixtureConstructorHidden +^NoNullaryConstructor + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/properties.xml new file mode 100644 index 0000000000..85df850992 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/SpecifyFixture/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060818160205 + + + + + + + + 1155353690708 + -888776961178737158 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/content.txt new file mode 100644 index 0000000000..3208741146 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/content.txt @@ -0,0 +1 @@ +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/properties.xml new file mode 100644 index 0000000000..d2db286975 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/TechnicalSpecifications/properties.xml @@ -0,0 +1,16 @@ + + + + + 20090118160613 + + + + + + + + + 1232247973703 + 3830182260935029768 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ZiEndFolderRunner/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ZiEndFolderRunner/content.txt new file mode 100644 index 0000000000..a63c58c850 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ZiEndFolderRunner/content.txt @@ -0,0 +1,3 @@ +!|fitlibrary.runner.FolderRunnerFixture| + +|''run''|folderRunner/tests|''giving''|folderRunner/reports| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ZiEndFolderRunner/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ZiEndFolderRunner/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/ZiEndFolderRunner/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/content.txt new file mode 100644 index 0000000000..898c76168b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/content.txt @@ -0,0 +1,46 @@ + * Here we specify ${fitLibrary} by example, using ${fitLibrary} tables + * The following assumes considerable familiarity with the ideas of ${fitLibrary} + * This is '''not''' intended as a tutorial. See .FitLibrary.UserGuide for that. + +|^ReadingSpecifications|''The format of the storytests/specifications''| + +!3 ''Storytests for specifying:'' + +|^DoWorkflow|''A sequence of actions on a system, starting in some state (!-DoFixture-!)''| +|^SpecialActions|''Special actions are modifiers of actions, such as "is", "check", "show" and "show after"''| +|^GlobalActionsProvided|''Various actions are built into !-FitLibrary-!, such as "start stopwatch"''| +|^AutoWrapWithDo|''A non-fixture object created in the first table with be auto-wrapped with !-DoFixture-!''| +|>MultipleFlowObjects|''More than one flow object can be current at once.''| +|^GoingIntoFlow|''Using !-FitLibraryServer-!, it's not necessary for the first table to have a !-DoFixture-! table in order to be in flow''| +|^PlainTextInsteadOfTables|''Flow actions can be written in plain text, instead of in tables''| +|^DoTableFixturing|''Specialised fixturing, such as "setUp()/tearDown()", parse delegates, access to current row, custom special actions''| +|^AddingGlobalActionsObject|''How an object with global methods can be added''| + +|^CollectionSpecifications|''Various collections of elements, such as lists, sets, maps, arrays, etc (both checking and setup)''| +|^BusinessRules|''Calculation rules, constraints, and combinations''| +|^DomainObject|''The property values of ${domainObject}s (both checking and setup)''| +|^DomainAggregate|''The aggregate structure of ${domainObject}s''| + +|^DomainWorkflow|''As with ^DoWorkflow, but with support for three phases of ${workflow}'': ${setup}, ${actions} and ${checks}| +|^SpecialisedTables|''Grids of values, images, HTML lists, file comparisons, etc''| +|[[File Handler][.FitLibrary.SpecifiCations.GlobalActionsProvided.FileProcessing]]|''Provides a way to read and write files in a storytest''| + +|^SuiteFixture|''How the same suite of storytests can be used to test a system in very different ways''| + +|^DynamicVariables|''How variables can be used in storytests at runtime''| +|^DefinedActions|''Parameterised actions can be defined within storytests''| +|^DefinedActionsWithNamedParameters|''(Multi Defined Actions) Parameterised actions with optional named parameters''| + +|^ParserSpecifications|''How values are parsed from strings and embedded tables into valus and objects''| +|^FitLibraryGeneric|''Support for Java generics and enums''| +|>PlugInMethods|''Various plugin methods that may be used, including for object creation''| +|^TechnicalSpecifications|''Detailed specifications that are more likely to be of interest to those who port ${fitLibrary} to other languages''| +|^JavaSpecific|''Details that are specific to Java and may not be implemented in other languages''| +|^AlienEvaluator|''How ${fitLibrary} inter-operates with ${fit}''| +|^ExperiMental|''Some experimental features that may well be dropped''| + +|^CoreFitSpecifications|''Specifications for the Java version of Fit''| +|>ZiEndFolderRunner|''Checks that ''!-FolderRunner-!'' is working ok''| + +Contents in alphabetical order: +|!contents| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/properties.xml new file mode 100644 index 0000000000..aba83f6c9e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SpecifiCations/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1255042189453 + 2922688967122529827 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/CustomerSuiteFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/CustomerSuiteFixture/content.txt new file mode 100644 index 0000000000..c1a6380657 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/CustomerSuiteFixture/content.txt @@ -0,0 +1,6 @@ +Here's an explanation for a Customer or other storytest writer: + * The first table of a storytest can contain a list of keywords, which determine whether or not that storytest will be run, depending on the type of testing being carried out + * For example, we only want to run completed storytests on the build machine + * The second table is a name for the sort of storytest. For example, this may name a sub-system of the application, such as the part concerned with customer support. +Many Customers probably won't have a lot of interest in what's in the ''!-SuiteSetUp-!'' page, as that's concerned with testing, rather than expressing things about the business domain. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/CustomerSuiteFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/CustomerSuiteFixture/properties.xml new file mode 100644 index 0000000000..c6072c8ea2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/CustomerSuiteFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118161011 + + + + + + + 1232248211453 + -306897041130823354 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/DetailsAndRationale/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/DetailsAndRationale/content.txt new file mode 100644 index 0000000000..87c2c32860 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/DetailsAndRationale/content.txt @@ -0,0 +1,45 @@ +With ''suite traverses'': + * Fit pages/files (''storytests'') no longer need to mention fixture class names. This means that the same storytests can easily be used with different fixtures for testing in wayslevels, such as directly into the domain layer or through a GUI or web interface. + * Storytests can be filtered for a particular test run. For example, only the '''completed''' storytests should be run on the build machine. + * The fixtures for the storytests in a suite can easily share resources, such as a database connection, a Firefox browser for web testing, or a socket connection to another machine. + * Each suite can provide different configuration information, such as selecting DB or Spring configurations +These capabilities are added to ''!-FitLibrary-!'' while assuring complete backwards compatibility with ''!-FitNesse-!'' and ''!-FolderRunner-!''. It's possible to use suite fixtures with a subset of your storytest suites, so you can gradually introduce their use over time. + +We now look at the rationale for each of these capabilities. Please note that the description that follows assumes an understanding of the execution model of Fit. A customer-friendly description is provided elsewhere. +!2 Multi-purpose Storytests +There is a temptation to write different storytests when testing different levels of a system. For example, when explicitly testing through the UI, the storytests will be expressed very differently than when explicitly testing through the domain layer or directly into a subsystem. But this leads to redundancy between the storytests. In addition, the storytests for the UI will be verbose, it will hard to see the essence of the domain in those storytests, and they will be hard to change. + +As we have argued elsewhere, a more powerful approach is to express the storytests once in terms of the business domain. The same storytests can then be run with different fixtures so that the testing can be carried out at different levels. + +The simplest approach to handling this is to change the fixture class names in the first table of each of the storytests. But this is a boring and error-prone approach. Of course, the change process could be automated, but there are better ways. + +Another approach is to have distinct sets of fixtures with the same names, which are switched in according to the classpath in Java that is being used (or the equivalent in other languages). But this can be confusing and makes it difficult to share code between distinct sets of fixtures. + +The approach we take is to remove fixture class names entirely from storytests (just as ''!-DoFixture-!'' made it possible to eliminate all fixture class names except in the first table). Instead, a table near the start of the storytest identifies the fixture class indirectly, with a name that is unrelated to the fixture class name. The suite fixture object interprets the tables in the storytest until it carries out an action that results in a ''!-DoFixture-!'' object. It then passes responsibility for interpreting the rest of the storytest to that fixture object. + +This is similar to the approach already used in ''!-DoFixture-!''. (Actually, ''!-SuiteFixture-!'' is a subclass of ''!-DoFixture-!'', so there is little extra mechanism to permit this.) +!2 Filtering Storytests +Often, you don't want to run all of the storytests in a suite: + * Only completed storytests should be run on the build machine, as storytests that are in development progress will fail. However, it's a pain to have to organise suites around whether storytests are completed or not. It makes much more sense to organise the storytests around the modules and etc of the domain model. + * When altering a part of a large system, faster progress can be made by running more often those storytests that are most relevant. However, some changes will have an impact on several parts of the domain. Likewise, some storytests will impact on several parts, such as related to two Entities. + * When testing through the UI, which is slow, only some storytests may be used. +So, in general, it's not possible to organise the storytests into a single hierarchy to serve all purpose. + +Now ''!-FitNesse-!'' permits symbolic links and so multiple overlapping suites can be defined. However, a separate suite needs to be defined for each of the combinations of use. Once the number of combinations grow, the suites become harder to manage. + +The approach we take with suite fixtures is to allow for each storytest to be classified as being in multiple categories, through the use of keyword. For example, all storytests that are completed can have the keyword "completed", and the build machine only selects those ones. + +The filtering is carried out by having a table of keywords at the start of the storytest. The suite fixture interprets this table and determines whether to continue running this storytest, based on the keywords. + +A default approach is provided for doing this filtering, but it is very simple to extend or alter the filtering mechanism, as it is based on a ''!-DoFixture-!'' approach to table intepretation. For example, one company has keywords for the subsystems, such as "a.b.c". Their filtering mechanism takes account of this naming convention, so that if the selected keywords include "a", or "a.b", or "a.b.c", then a storytest with a keyword of "a.b.c" will be selected and run. + +As well as associating a list of keywords with a storytest, a mechanism is needed to specify which keywords are used for selection when a suite is run. The mechanism of specifying these selected keywords differs between ''!-FitNesse-!'' and ''!-FolderRunner-!'', as we discuss below. +!2 Shared Resources +Suite fixtures allow for the sharing of resources between all the fixtures for the storytests in a suite. + +We may like a suite of tests to make use of a resource that's expensive (or annoying) to acquire afresh with each storytest, such as a database connection or Spring configuration. Of course, the resource can't be changed in important ways between the storytests because we want to retain test independence. + +Usually, each storytest is started with a fresh fixture object. To share a resource that's already allocated, that fixture object needs to explicitly access the resource through a static (class) variable. + +Instead, such a resource can be created by the suite fixture and shared between the fixture objects. As it is the responsibility of the suite fixture to create the fixture object for each storytest, it can pass any such resources as parameters to the created fixture object. This is very similar to the way in which the first ''!-DoFixture-!'' object for a storytest is responsible for creating the fixture objects for subsequent tables in that storytest. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/DetailsAndRationale/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/DetailsAndRationale/properties.xml new file mode 100644 index 0000000000..e351702749 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/DetailsAndRationale/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118160944 + + + + + + + + 1232248184140 + -6519683181694643119 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/ProgrammerSuiteFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/ProgrammerSuiteFixture/content.txt new file mode 100644 index 0000000000..164b7ceb35 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/ProgrammerSuiteFixture/content.txt @@ -0,0 +1,43 @@ +Here's a programmer's view of what happens, using the example. As it happens, you can run it. + +To use a suite fixture, include a table in the ''!-SuiteSetUp-!'' page. Eg + +!|fitlibrary.eg.ChatSuite| + +|''select or''|complete| + +''!-FitNesse-!'' runs this first for a test or a suite. As ''!-ChatSuiteFixture-!'' is a subclass of ''!-SuiteFixture-!'', it is automatically registered by ''!-FitServer-!'' as the suite fixture. + +The second table above results in a call to a method in ''!-SuiteFixture-!'', which records the keywords to be selected in the storytests. + +Then for each storytest, ''!-FitLibraryServer-!'' passes control to the suite fixture. As it is a subclass of ''!-DoFixture-!'', it runs it in flow. So it runs the storytest until it finds that it's filtered out, or when it finds a ''!-DoFixture-!'' to run the rest. Eg, with: + +|''keywords''|complete,connect| + +|''chat''| + +|''connect user''|sarah| + +''etc'' + +Now the first table above results in a call to keywords(), a method that's defined in ''!-SuiteFixture-!''. If the keywords hadn't matched, the storytest would be abandoned at this point and the first table marked as ignored. + +Then the second table results in a call to chat(), a method defined in ''!-ChatSuiteFixture-!''. This creates a specific ''!-DoFixture-!'' object and returns it (having passed any shared resources to it). So this table plays the role of selecting the fixture to be used, which is usually done wby giving the class name of a fixture. + +Because that's a ''!-DoFixture-!'', the suite fixture passes control to it to execute the rest of the storytest, as usual. In the eg above, it runs the ''connect user'' table and those that follow, in the usual way. + +Extra comments: + * This is analogous to the approach that ''!-DoFixture-!'' takes to go into flow + * The ''!-SuiteSetUp-!'' is used to get the suite fixture going at the start + * ''!-FitServer-!'' acts in the normal way when there is no suite fixture, so it's backwards compatible + * A suite fixture can override ''keywords()'' and do whatever keyword processing it wants + * Other tables can be used in the ''!-SuiteSetUp-!'' to configure the suite fixture concerned (eg, with Spring or db info). As it's a ''!-DoFixture-!'', it's trivial to add capability. + * As a ''!-DoFixture-!'' subclass, a ''!-SuiteFixture-!'' has ''setUp()'' and ''tearDown()'' methods called. So resources can be allocated and destroyed appropriately. + * Suite fixtures don't mix with fixture class names. When a fixture class name appears at the start of a storytest that use suite fixtures, it is simply treated as a ''!-DoFixture-!'' action. So ''!-|fit.ColumnFixture|-!'' will result in a call to ''fitDotColumnFixture()'', if it exists. + * This approach suffers from being added to an existing execution model, as with ''!-DoFixture-!'' flow. And so it can be confusing to people who are used to the current system (as happened initially with ''!-DoFixture-!''). But in time, I'm sure that it can be incorporated cleanly. +Now that suite fixtures are released, I'll put together a tutorial on getting started with them, as well as the steps involved in taking existing storytests and moving to this approach. + +It's easy to switch over if you: + * Use ''!-SetUp-!'' pages for at least the first table of a set of storytests; and + * Don't mention fixture class names elsewhere + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/ProgrammerSuiteFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/ProgrammerSuiteFixture/properties.xml new file mode 100644 index 0000000000..631709bc42 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/ProgrammerSuiteFixture/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118160958 + + + + + + + + 1232248198953 + 6082579246626112028 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/content.txt new file mode 100644 index 0000000000..b1684184f1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/content.txt @@ -0,0 +1,32 @@ +For a full description of ''suite fixtures'' and their rationale, see ^DetailsAndRationale + +Consider the following simple example that we used in introducing ${workflow}: +!***< def +${pleaseIgnore} +!define roomsIn (|''name''|''owner''|''users''| +|pirates|sarah|| +) +!define users (|''name''| +|sarah| +) +!define rooms (|''name''|''users''| +|pirates|${users}| +) +**! +| !-fitlibrary.eg.chat.ChatSystem-! | + +|''users''|${users}| +|''rooms''|${roomsIn}| +---- +|''user''|sarah|''enters''|pirates|''room''| +---- +|''users''|${users}| +|''rooms''|${rooms}| + +The first table includes the name of a fixture class, ''!-fitlibrary.eg.chat.ChatSystem-!''. This ties this storytest to this particular fixture. If we wanted to run this storytest by testing the chat system through a web interface, we could introduce a different fixture that instead uses Selenium, for example, to do the testing. This would mean changing the fixture class name in the first table whenever we switched between the two sorts of tests. + +By using suite fixtures, we can use the storytest for testing either way, without having to change the storytest. Let's see how that's done with SuiteFixtureExample. + +For a programmer's view of ''suite fixtures'', see ^ProgrammerSuiteFixture + +For a Customer's view of ''suite fixtures'', see ^CustomerSuiteFixture diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/properties.xml new file mode 100644 index 0000000000..e6d7519e94 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixture/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118160932 + + + + + + + + 1232248172937 + -5216416149541659645 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/SuiteSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/SuiteSetUp/content.txt new file mode 100644 index 0000000000..dc662e278a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/SuiteSetUp/content.txt @@ -0,0 +1,3 @@ +!|fitlibrary.eg.ChatSuite| + +|''select or''|complete| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/SuiteSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/SuiteSetUp/properties.xml new file mode 100644 index 0000000000..4e4107c633 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/SuiteSetUp/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060907002736 + + + + + + + 1157544867374 + 33558908820729964 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChat/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChat/content.txt new file mode 100644 index 0000000000..b829e489be --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChat/content.txt @@ -0,0 +1,9 @@ + * As this has no keywords, the storytest is run +|''chat''| + +|''connect user''|sarah| + +|''user''|sarah|''creates''|fit|''room''| +|''user''|sarah|''enters''|fit|''room''| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChat/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChat/properties.xml new file mode 100644 index 0000000000..2a8828a60f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChat/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060907002736 + + + + + + + + 1157545193883 + -788140402471225589 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithDifferentName/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithDifferentName/content.txt new file mode 100644 index 0000000000..3b9e76128f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithDifferentName/content.txt @@ -0,0 +1,10 @@ + * This also has no keywords and so is run + * It has a different name in the first table, which happens to return the same type of fixture object +|''another chat''| + +|''connect user''|sarah| + +|''user''|sarah|''creates''|fit|''room''| +|''user''|sarah|''enters''|fit|''room''| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithDifferentName/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithDifferentName/properties.xml new file mode 100644 index 0000000000..84e1e07cde --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithDifferentName/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060907002736 + + + + + + + + 1157545219110 + -1968481881288328717 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithKeywords/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithKeywords/content.txt new file mode 100644 index 0000000000..6cc3cac509 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithKeywords/content.txt @@ -0,0 +1,10 @@ + * This has keywords, and it's selected to be run when the keyword for the suite that's run includes 'complete' or 'connect' +|''keywords''|complete,connect| + +|''chat''| + +|''connect user''|sarah| + +|''user''|sarah|''creates''|fit|''room''| +|''user''|sarah|''enters''|fit|''room''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithKeywords/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithKeywords/properties.xml new file mode 100644 index 0000000000..da28f4c883 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithKeywords/properties.xml @@ -0,0 +1,15 @@ + + + + + 20070107154455 + + + + + + + + 1168137895921 + 5172536326867228725 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithSkippedKeywords/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithSkippedKeywords/content.txt new file mode 100644 index 0000000000..f55f7eafcd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithSkippedKeywords/content.txt @@ -0,0 +1,9 @@ + * This has keywords but it's not selected, unless the suite that's run has the keyword 'skipped'. Notice that when it's not selected, only the first table is shown in the report and it's marked as ignored +|''keywords''|skipped| + +|''chat''| + +|''connect user''|sarah| + +|''user''|sarah|''creates''|fit|''room''| +|''user''|sarah|''enters''|fit|''room''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithSkippedKeywords/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithSkippedKeywords/properties.xml new file mode 100644 index 0000000000..adee67a6cc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/TestChatWithSkippedKeywords/properties.xml @@ -0,0 +1,15 @@ + + + + + 20070107154539 + + + + + + + + 1168137939812 + -6742713917615834988 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/content.txt new file mode 100644 index 0000000000..464dc3c6e3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/content.txt @@ -0,0 +1,16 @@ +We have a ^SuiteSetUp page that contains the only reference to a fixture class name + * The fixture concerned is ''!-ChatSuite-!'', a subclass of ''!-SuiteFixture-!'' + * So it is used to run each the storytests in the suite +The ^SuiteSetUp page also defines the keywords for the storytests that are to be selected, in the table with the action ''select or''. + * This action corresponds to a method in class ''!-SuiteFixture-!'' + * It can be overridden in class ''!-ChatSuiteFixture-!'' to handle storytest filtering in a different way +^SuiteSetUp + * Each storytest optionally has a keywords table and then a table with an action that returns the fixture to be used to run the rest of the storytest. + * The action ''chat'' here corresponds to a method in the class ''!-ChatSuiteFixture-!''; this method returns a ''!-DoFixture-!'' object that runs the rest of the storytest +^TestChat +^TestChatWithDifferentName +^TestChatWithKeywords +^TestChatWithSkippedKeywords + +Here's AnotherSuiteFixtureExample, that symbolically links to the storytests here. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/properties.xml new file mode 100644 index 0000000000..5dfbb61acb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/SuiteFixtureExample/properties.xml @@ -0,0 +1,15 @@ + + + + + 20060907003045 + + + + + + + + 1157545845010 + -8303591868658032951 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/ToDo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/ToDo/content.txt new file mode 100644 index 0000000000..8a060e6dbb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ToDo/content.txt @@ -0,0 +1,37 @@ +Versions: + * Add to the bottom of a report: fitLibrary version and date of run. + * Include a manifest in the build that includes the build date. + * Consider allowing other text too, with a link to important new information. + +New Releases: + * Make it easy to check if there's a newer release + * Consider better ways to deliver it + +Notation: + * Rename special action to action-modifier + * Add given, when, then forms - perhaps as action-modifiers (ie, special actions) + +Organisation: + * Collect all global actions together. Ensure this includes |show predefined| and the variations of |set| + * Collect all action-modifiers together (ie special actions). Ensure this includes |also run| + +Publishing and Documentation: + * Tidy up guide and specs and put them on the web for direct access. + * Write more introductory tutorials + * Write up the execution model + * Provide better info on using spreadsheets with folderRunner + +Fixtures: + * Move table lookup from fitLibraryWeb into here + * Check whether |file| writing builds intermediate directories if needed + +Problems: + * Investigate the problem related to DBFit + * Investigate bug list on SF + +Specification: + * Change the specs to be explicit about the actions in the class used, and to be chattier about what's going on. + +Help: + * Have |help| just list the "common" actions and action-modifiers for beginners. Have |help all| for the lot. + * Requires an extra annotation diff --git a/fitnesse/FitNesseRoot/FitLibrary/ToDo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/ToDo/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/ToDo/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/DomainAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/DomainAdapter/content.txt new file mode 100644 index 0000000000..6a7354be83 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/DomainAdapter/content.txt @@ -0,0 +1,29 @@ +It is no longer necessary to subclass the supplied ''!-FitLibrary-!'' fixtures. Subclassing those fixtures has meant that: + * You sometimes have to duplicate code in several different fixture subclasses + * Your class inherits a lot of methods that are irrelevant to you. + * These extra methods clutter up method name continuations in Eclipse and other IDEs. + * You may override a fixture superclass method by mistake, leading to weird behaviour (such as the method ''right()'') +Now, a ''System Under Test'' (''SUT'') object can do all the work. +!3 What's a ''SUT''? +For many releases now, a ''!-FitLibrary-!'' fixture may in turn refer to a SUT. Most of the fixtures can take a SUT as an argument. Eg, in Java: +{{{ public CalculateFixture verify() { + return new CalculateFixture(myDomainObject); +} +}}} In general, a ''!-FitLibrary-!'' fixture works by first checking for a method in the fixture itself. If it's not there, it then checks in the ''SUT''. This means that the fixture acts as an adapter to the SUT, supplying methods only when it's necessary for special fixturing work, such as: + * Changing the name of a method, because the one generated by ''!-FitLibrary-!'' from the table headers, etc is awkward + * Handling reordering of changes to the arguments and/or return values of a method + * Providing special methods that are needed with nested tables for set up (''find''/''show'' methods) +!3 ''!-DomainAdapter-!'' +A SUT may be a ''!-DomainAdapter-!'', which supplies adapter methods and in turn refers to a SUT (or null). + +Instead of subclassing a fixture to provide adapter methods, now create a class that implements ''!-DomainAdapter-!''. Pass this as an argument to a suitable ''!-FitLibrary-!'' fixture. Eg, in Java: +{{{ public CalculateFixture verify() { + return new CalculateFixture(myDomainAdapter); +} +}}} Using a ''DomainAdapter'': + * Your ''DomainAdapter'' classes can be arranged in a subclass hierarchy that allows for code sharing + * There are no longer superfluous framework methods being inherited + * Your ''DomainAdapter'' class can define MethodNameMappings +Chains of SUTs are permitted: A ''!-DomainAdapter-!'' may in turn refer to a ''!-DomainAdapter-!'' as its SUT. +!3 Examples +For examples, see [[''chat code''][.FitLibrary.UserGuide.FitLibraryByExample.WorkFlow.WorkflowCode]] \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/DomainAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/DomainAdapter/properties.xml new file mode 100644 index 0000000000..d56e2f5cac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/DomainAdapter/properties.xml @@ -0,0 +1,14 @@ + + + + + 20081124201811 + + + + + + + 1158226361543 + 963469752210867315 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/EditingNestedTablesInFitNesse/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/EditingNestedTablesInFitNesse/content.txt new file mode 100644 index 0000000000..ac3966e390 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/EditingNestedTablesInFitNesse/content.txt @@ -0,0 +1,38 @@ +There are several ways in which nested tables can be defined in ${fitNesse}. If you're not familiar with the finer details of editing a wiki, you may like to ask for technical assistance from someone who does. + 1 Use ''defines'' + 1 Include tables from another page + 1 Write HTML within tables +I've found that the first option is the best, weighing up the various pros and cons. Let's look at these options, using the same table as example for each. Click the '''Edit'' button to see the wiki markup for these. +!3 ''defines'' +Variable defines are used for inner tables. Eg: +!define inner (|''name''|In Ner| +|''owes''|100.00| +) +|''add debt''|${inner}| + * Each inner table is defined using a wiki variable + * Care is needed with spacing of defines (eg, the space between the variable name and the "(" is important) + * With multiple nesting of tables, it's best to use the "("...")" form of defines, because the "{"..."}" form leads to confusion with the !-${inner}-! form + * The variable definitions clutter up the page. So, instead we can use: +!3 ''defines'' with variables hidden +Variable defines are used for inner tables. Eg: +!**> defines +!define inner (|''name''|In Ner| +|''owes''|100.00| +) +**! +|''add debt''|${inner}| + * So now the variable definitions are (mostly) hidden, with the "!-!**> **!-!" folding form + * Care is also needed with the folding characters +!3 ''Includes'' +Inner tables are included from another page +|''add debt''|!include InnerPage| + * But this leads to another sort of clutter + * This can be avoided with a special notation (I can't remember it), but it makes it very hard to make changes to an inner table +!3 html +|''add debt''|!- + + +
nameIn Ner
owes100.00
-!| + * This can be unpleasant. The first version of the .FitLibrary.SpecifiCations were written in this way. I was pleased to move to using defines + * This depends on characters between "!-!--!" and "-!" being left alone + * Otherwise the HTML gets escaped diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/EditingNestedTablesInFitNesse/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/EditingNestedTablesInFitNesse/properties.xml new file mode 100644 index 0000000000..dc050169e8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/EditingNestedTablesInFitNesse/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118164830 + true + true + true + true + true + true + 1232250510671 + -4605614160879750427 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExperimentalExtensions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExperimentalExtensions/content.txt new file mode 100644 index 0000000000..7255a0ab70 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExperimentalExtensions/content.txt @@ -0,0 +1,8 @@ + * The following are additions to ''!-FitLibrary-!'' that are somewhat experimental in nature. + * Or they may simply be incomplete + * There is no guarantee that these features will remain unaltered, or that they will even remain in ''!-FitLibrary-!''. +!3 State-based extension of ''!-DoFixture-!'' (State pattern) + * Allows exactly the same table to be used in workflow storytests for setup or checking (ie, initial state or final state) + * When a setup fixture is installed in a ''!-DoFixture-!'', all actions are delegated to it until the setup state is completed. + * See .FitLibrary.SpecifiCations.DoWorkflow.StatefulWorkflow + * This approach is most likely to be removed, as ${domainTraverse} provides a more general mechanism diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExperimentalExtensions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExperimentalExtensions/properties.xml new file mode 100644 index 0000000000..ecc72bbd84 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExperimentalExtensions/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118170035 + + + + + + + 1232251235265 + -9060199924431480258 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExtendedCamelCase/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExtendedCamelCase/content.txt new file mode 100644 index 0000000000..b0b433325e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExtendedCamelCase/content.txt @@ -0,0 +1,27 @@ +Consider the names of ''enter'', ''press'' and ''check'' "fields" in ''!-ActionFixture-!'', and the column header labels in ''!-ColumnFixture-!'' and ''!-RowFixture-!''. In the original Fit, these needed to conform to the lexical form of programming language identifiers. In some cases, camel casing was used to provide some flexibility. + +Camel casing takes a string like "the first one" and converts it into a camel form of identifier, "theFirstOne". + +But this had some problems when non-programmers are creating Fit tables: + * A valid identifier in one language would not be in another + * Certain identifiers can't be used, such as "case", "for", "do", etc in Java. +In addition, unicode can't be used for such names, because in general there is little support for unicode in development tools. + +Extended camel is used with all the !-FitLibrary-! fixtures and takes camel casing one step further. It converts a name into a valid identifier in the language concerned. For example, in Java the name "% discount" is translated into "percent discount", which is then camel-cased into "percentDiscount". + +This can result in some weird and/or long identifiers. There's no need to work out such identifiers, however, as an unknown identifier is displayed in a error messages in a Fit table. These weird identifiers don't need to "pollute" the application, as they only need to appear in fixture code. + +Here's some examples: + +|!-fitlibrary.specify.TestCamelCase-!| +|name || identifier | +|" hi " || quoteHiQuote | +|^`{}~ || caretBackquoteLeftBraceRightBraceTilde | +|two words || twoWords | +|2 words || twoWords | +|cost $ || costDollar | +|!! || bangBang | +|meet @ || meetAt | +|rick@rimuResearch.com || rickAtRimuResearchDotCom | +| || blank | +|case || case_ | diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExtendedCamelCase/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExtendedCamelCase/properties.xml new file mode 100644 index 0000000000..c248334445 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/ExtendedCamelCase/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118164813 + + + + + + + 1232250493578 + -6326546472772345818 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/DebugCapability/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/DebugCapability/content.txt new file mode 100644 index 0000000000..c29022301c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/DebugCapability/content.txt @@ -0,0 +1,16 @@ +${fitLibrary} includes the class ''!-DebugPage-!'' to allow the use of a debugger. + +Write your own class to make use of that. For example: +----{{{ public class Debug { + public static void main(String[] args) throws Exception { + String url = "http://localhost:8086/"; + String[] pageNames = new String[] { + "MyProject.MySuite.MyPage" + }; + new DebugPage(url).runs(pageNames); + } +} +}}}---- +Include the URL for your ''!-FitNesse system-!'', which needs to be running. The ''runs()'' method takes an array of ''!-FitNesse-!'' page names. + +''!-DebugPage-!'' retrieves each of the pages through HTTP and runs them through ''!-FitLibraryServer-!'' directly. This means that you can use a debugger, such as in Eclipse, putting in breakpoints, etc in your code. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/DebugCapability/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/DebugCapability/properties.xml new file mode 100644 index 0000000000..a39b4d7995 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/DebugCapability/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20070106143459 + true + true + true + true + true + true + 1168047299093 + -8495792080045076675 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/KeepTags/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/KeepTags/content.txt new file mode 100644 index 0000000000..1255f9912b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/KeepTags/content.txt @@ -0,0 +1,30 @@ +!3 Sometimes, the HTML tags used within a table cell are important to the test. + * But they get stripped off automatically by Fit. + * So, instead use a ''!-TaggedString-!'' in the declaration of the corresponding method: either/or for the result type and the argument type(s). + * Eg, +|!-fitlibrary.specify.DoWithTags-!| +---- + * The next 4 tables pass because the strings, including tags, are consistent: +|check|tagged text|!-bold-!| + +|check|tag text|!-bold-!|!-bold-!| + +|check|tag text|!-
one
-!|!-
one
-!| + +|check|tag text|!-
  • one
  • two
-!|!-
  • one
  • two
-!| + * But this fails because the tags aren't consistent +|check|tag text|!-bold-!|bold| + +----{{{public class DoWithTags extends DoFixture { + public TaggedString taggedText() { + return new TaggedString("bold"); + } + public TaggedString tagText(TaggedString s) { + return s; + } +} +}}}---- + +----The following specifies the expected counts of passes, fails, etc for the page. This is used here to avoid manually checking, as here the storytests are written to fail. You'll most probably not use this technique, as you'd expect all your storytests to pass. There are other approaches to testing for errors, etc. +|''expected test results''|4|''right''|1|''wrong''|0|''ignored''|0|''exceptions''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/KeepTags/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/KeepTags/properties.xml new file mode 100644 index 0000000000..8ef8907f6b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/KeepTags/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118164908 + + + + + + + + 1232250548625 + -8330939311913245471 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/content.txt new file mode 100644 index 0000000000..e2110e7c5d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/content.txt @@ -0,0 +1,34 @@ +!2 FAQ for Programmers + +----!3 How do I debug my storytest fixtures, etc? + * See DebugCapability +----!3 How do I handle null as a special String value? + * See .FitLibrary.UserGuide.FitLibraryByExample.TextToValues +----!3 How do I handle specialised Date (or other) formats? + * See .FitLibrary.UserGuide.FitLibraryByExample.TextToValues +----!3 What if I can't add a static ''parse()'' method to someone else's class? + * See .FitLibrary.UserGuide.FitLibraryByExample.TextToValues +----!3 How to do some processing before and/or after a fixture (or traverse or domain adapter) does its work: + * See FitLibraryByExample.WorkFlow.SetUpTearDown +----!3 How to keep the HTML tags within a table cell, as they're important to the test: + * See ^KeepTags +----!3 Flow style with ''!-DoFixture-!'' doesn't work when I use an Import table + * That's because the fixture of the first table of a storytest has to be a ''!-DoFixture-!'' for flow to be used. + * However, there's no need for the Import table in flow style, because there's no need to mention fixture names after the first one with ''!-DoFixture-!'' +----!3 What's the point of removing fixture names? + * They add technical complexity to the storytests that are best hidden away from customers who read/write storytests + * It's then possible to substitute different fixtures without having to change the storytests +----!3 What's the point of substituting fixtures? + * The same storytests can be used to test a system at different levels + * Some fixtures are used to test the system under test directly at the domain layer + * Other fixtures could have some extra code to instead test the system through a UI or some other interface + * Some fixtures could generates user documentation from some of the storytests +----!3 My tests used to pass, but they fail with the latest ''!-FitLibrary-!'' + * Here's one possibility, if you've been using ''parse delegates'': + * In the latest version, all registered ''parse delegates'' are cleared at the end of a test, to avoid potentially confusing interactions between tests (''test indepedence'' is a fundamental principle of storytesting). + * Perhaps your tests previously depended on this interaction? + * If so, you'll need to ensure that ''parse delegates'' are registered for each test. + * That's easy if you use the same (''!-DoFixture-!'') class to start all your tests: simply register the ''parse delegates'' in the constructor of the class. That is, don't do it in a ''static { ... }'' block. +----!3 How can I avoid duplicating code in several fixture subclasses? + * It is no longer necessary to subclass ''!-FitLibrary-!'' fixtures + * See DomainAdapter diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/properties.xml new file mode 100644 index 0000000000..a4668697f2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FaQ4Programmers/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118164855 + + + + + + + 1232250535359 + 1050575368476624027 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitBook/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitBook/content.txt new file mode 100644 index 0000000000..9b8f8fbcc1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitBook/content.txt @@ -0,0 +1 @@ +Rick Mugridge and Ward Cunningham, ''Fit for Developing Software'', Prentice Hall, July 2005 diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitBook/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitBook/properties.xml new file mode 100644 index 0000000000..47233921e2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitBook/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060818154159 + + + + + + + 1127091100046 + -8795088106056646916 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/CodeInGeneral/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/CodeInGeneral/content.txt new file mode 100644 index 0000000000..72de3e005e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/CodeInGeneral/content.txt @@ -0,0 +1,4 @@ +!3 In General + * For each ''expected'' column in a calculation rule table, a distinct method is called. The name of the method is created from that ''expected'' column label followed by each of the ''given'' column labels. The method will have a parameter for each of the ''given'' columns and returns a result which is compared against the ''expected'' value. + * To enable a specific string to signify repeating of the previous ''given'' value, you will need to use a subclass of ''!-CalculateTraverse-!'' instead of a DomainAdapter. Call the inherited method ''setRepeatString()'' with the string to use. + * To enable a specific string to signify an exception is ''expected , you will need to use a subclass of ''!-CalculateTraverse-!'' instead of a DomainAdapter. Call the inherited method ''setExceptionString()'' with the string to use. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/CodeInGeneral/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/CodeInGeneral/properties.xml new file mode 100644 index 0000000000..393e5ed85b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/CodeInGeneral/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20081124201812 + true + true + true + true + true + true + 1155278324671 + 406399379211509409 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountCode/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountCode/content.txt new file mode 100644 index 0000000000..b08166c943 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountCode/content.txt @@ -0,0 +1,21 @@ +Let's start by looking at the code for the previous example, shown in part again: + +|!-fitlibrary.eg.Discount-!| + +|''calculate''| +|''$''||''discount''| +|0.00||0.00| +|1000.00||0.00| + +The code is as follows: +----{{{ public class Discount { + public double discountDollar(double dollar) { + if (dollar <= 1000) + return 0; + return dollar * 0.05; + } + } }}}----The method ''discountDollar()'' is called for each of the rows. The ${given} value is supplied as an argument to the method and the result is compared to the ${expected} value. + +The header ${label}s are used to determine the ${ruleMethod} name. Each of the ${given} column labels is appended to the ${expected} column label ("discount" + "$"). This name is converted into a valid Java method name based on ${extendedCamelCase}. While this can result in some weird method names, it does given the storytest writer considerable freedom of expression. + +Such weird names means that a ${domainAdapter} is usually needed with calculation rules. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountCode/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountCode/properties.xml new file mode 100644 index 0000000000..32d1b86f08 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountCode/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232250737921 + -8777323700385897730 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountExample/content.txt new file mode 100644 index 0000000000..9dc04d80b2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountExample/content.txt @@ -0,0 +1,30 @@ +Let's start with a simple example, computing the discount. The general rule can be stated as: ''If the amount is more than $1000.00, the discount is 5%'': + +|!-fitlibrary.eg.Discount-!| + +|''calculate''| +|''$''||''discount''| +|0.00||0.00| +|1000.00||0.00| +|1010.00||50.50| +|1100.00||55.00| +|1200.00||60.00| +|2000.00||100.00| + + * We start with a table that identifies the domain. + * The second table defines the calculation rules + +In the second table: + + * The first row simply specifies that we're defining calculations + * The second row has the labels. The ''given'' label on the left of the empty column is the "$" amount. The ''expected'' label on the right of the empty column is "discount". + * The third row, and thereafter, independently specify an example of the calculation rule + * The third row specifies that if the "$" amount is 0.00, the expected "discount" is 0.00. + * The 5th row specified that if the "$" amount is 1010.00, the expected "discount" is 55.00. + +In general: + + * There can be any number of ''given'' and ''expected'' columns + * The values need not be numbers. + +Here's the corresponding DiscountCode. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountExample/properties.xml new file mode 100644 index 0000000000..1b60e342f1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DiscountExample/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232250726593 + -3238798628228887658 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DomainAdapter/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DomainAdapter/content.txt new file mode 100644 index 0000000000..41f0754a98 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DomainAdapter/content.txt @@ -0,0 +1,17 @@ +Usually, a ''domain adapter'' is needed for calculation rules, given that the method names are unlikely to match those used in the domain (if any such methods exist in the domain). The discount example could be handled as followed, so that the adapter code and domain code doesn't get mixed up: +|!-fitlibrary.eg.DiscountAdapter-!| + +|''calculate''| +|''$''||''discount''| +|0.00||0.00| +|1000.00||0.00| + +The code for the domain adapter is as follows: +----{{{public class DiscountAdapter implements DomainAdapter { + private Discount discount = new Discount(); + + public Object getSystemUnderTest() { + return discount; + } +} }}}---- +CodeInGeneral diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DomainAdapter/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DomainAdapter/properties.xml new file mode 100644 index 0000000000..9dd31457dd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/DomainAdapter/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1171570421906 + -6031350578340797568 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/content.txt new file mode 100644 index 0000000000..1fce98d12b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/content.txt @@ -0,0 +1,8 @@ +A CalculationRule specifies business rules that involve calculations. + +!3 Example +^DiscountExample +!3 Code +^DiscountCode +^CodeInGeneral +^DomainAdapter diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/properties.xml new file mode 100644 index 0000000000..8a475bf0c8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CalculationRule/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165156 + + + + + + + 1232250716406 + -1579437754567018741 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CollectionsCode/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CollectionsCode/content.txt new file mode 100644 index 0000000000..f0d97cd2bc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CollectionsCode/content.txt @@ -0,0 +1,39 @@ +Here's the code for the various collection examples. +----{{{ public class Collections { + private List elements = new ArrayList(); + private int[] ints; + + public void listIs(int[] array) { + for (int i = 0; i < array.length; i++) + elements.add(new Element(array[i])); + } + public void intsAre(int[] array) { + ints = array; + } + public int[] getInts() { + return ints; + } + public List getOrderedList() { + return elements; + } + public Set getUnorderedList() { + return new HashSet(elements); + } + public Traverse subset() { + return FitLibrarySelector.selectSubset(elements); + } + public static class Element { + private int item; + + public Element(int i) { + this.item = i; + } + public int getItem() { + return item; + } + public void setItem(int item) { + this.item = item; + } + } +} }}} + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CollectionsCode/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CollectionsCode/properties.xml new file mode 100644 index 0000000000..081d8f2bfe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CollectionsCode/properties.xml @@ -0,0 +1,13 @@ + + + + + 20090118165257 + + + + + + 1232250777609 + 908685449914849234 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CombinationRule/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CombinationRule/content.txt new file mode 100644 index 0000000000..90e7a28030 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CombinationRule/content.txt @@ -0,0 +1,36 @@ +A CombinationRule table is for showing how pairs of values are expected to be combined. For example, here's a times table: + +!|fitlibrary.specify.TimesCombination| +| |1 |2 |3| +|1 |1 |2 |3| +|2 |2 |4 |6| +|3 |3 |6 |9| + +The fixture for this is as follows: +----{{{public class TimesCombination extends CombinationFixture { + public int combine(int x, int y) { + return x * y; + } +} +}}}---- +The method ''combine()'' is called for each pair of values, and the result checked. For example, for the cell in the last row above containing an expected value of 6, the method is called with the arguments ''combine(3,2)''. + +In general, as usual: + * The given and expected values can be of any types + * A ''!-SystemUnderTest-!'' object (of any type) can be supplied to the fixture, so that the method ''combine()'' in that object is called instead. See the next example. + +!|fitlibrary.specify.DirectCombination| +| |1 |2 |3| +|100 |100 |200 |300| +|220 |220 |440 |660| +|330 |330 |660 |990| + +The fixture for this class is as follows: +----{{{public class DirectCombination extends CombinationFixture { + public DirectCombination() { + super(new TimesCombination()); + } +} +}}}---- +It just happens to refer to an object that is also a fixture. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CombinationRule/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CombinationRule/properties.xml new file mode 100644 index 0000000000..f2e8acdd00 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CombinationRule/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118165407 + + + + + + + + 1232250847781 + -2799583695780772270 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CommentTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CommentTables/content.txt new file mode 100644 index 0000000000..b9a5244254 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CommentTables/content.txt @@ -0,0 +1,8 @@ +!|fitlibrary.DoFixture| + +|''comment''| +|any old|stuff| +|is|completely|ignored| +|and|not even|coloured as|ignored| +----The following specifies the expected counts of passes, fails, etc for the page. This is used here to avoid manually checking, as here the storytests are written to fail. You'll most probably not use this technique, as you'd expect all your storytests to pass. There are other approaches to testing for errors, etc. +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CommentTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CommentTables/properties.xml new file mode 100644 index 0000000000..5a880473c1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/CommentTables/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118170002 + + + + + + + + 1232251202781 + 2063777828557042522 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/ProgramCode/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/ProgramCode/content.txt new file mode 100644 index 0000000000..f7adc04117 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/ProgramCode/content.txt @@ -0,0 +1,9 @@ +The class ''Constraints'' is as follows: +----{{{public class Constraints { + public boolean aB(int a, int b) { + return a < b; + } + public boolean positive(int a) { + return a > 0; + } +} }}}---- diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/ProgramCode/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/ProgramCode/properties.xml new file mode 100644 index 0000000000..f530bbf405 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/ProgramCode/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118165356 + true + true + true + true + true + true + 1232250836921 + 3254644204835701541 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/content.txt new file mode 100644 index 0000000000..67e903efde --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/content.txt @@ -0,0 +1,26 @@ +Constraint rules are a variation of calculation rules. Constraint rules don't specify any ''expected'' value, because they have an implied expected value of true (or false). + +For example, the following constraint rule table is checking the constraint that the ''a'' value is less than the ''b'' value. It only has ''given'' columns: + +|!-fitlibrary.eg.Constraints-!| + +|''constraint''| +|''a''|''b''| +|1|2| +|2|5| + +The two rows are colored green because the constraint is satisfied. For each value row, the method ''aB()'' is called in the class ''!-Constraints-!'' below. If the method returns ''true'' the row passes, otherwise it is colored red. + +In general, it's useful to show passing and failing constraint rules. Here we show some numbers that fail to meet out constraint (> 0): + +|''constraint''| +|positive| +|1| +|435| + +|''failing constraint''| +|positive| +|0| +|-3| +Here's the ^ProgramCode + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/properties.xml new file mode 100644 index 0000000000..1b4c3874ed --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ConstraintRule/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232250824640 + -6491589801509259497 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/ClassBasedDefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/ClassBasedDefinedActions/content.txt new file mode 100644 index 0000000000..ab975f88d7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/ClassBasedDefinedActions/content.txt @@ -0,0 +1,18 @@ +''Defined actions'' may also be defined within classes, to provide an object-oriented approach to storytests. The class system is similar to Java but much simpler; there isn't a notion of static methods, for example. + +We need to describe the following: + * How ''defined actions'' as associated with a class. This is either: + * Through a local definition of a ''defined action'', which also specifies a class + * Through a convention of organising ''defined actions'' for a class within a page hierarchy headed by a page with the name ''!-ClassColour-!'', where ''Colour'' is the name of the class of those ''defined actions''. + * How instances (''wiki objects") are defined + * How the class of an instance is defined + * How superclasses are defined + * How dispatching occurs for calling OO ''defined actions'', using a '''oo''' special action (to be renamed!) + * How the instance and instance properties are accessed within a ''defined action'' + * How we can implicitly use the '''oo''' special action + * How we can use a class itself as an instance when there is only one instance of a class needed at once in a storytest +''Dynamic variables'' are used to define instances, instance properties, and class and superclass relationships. + +''To be continued....'' + +See .FitLibrary.SpecifiCations.DefinedActions.BasedOnClass \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/ClassBasedDefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/ClassBasedDefinedActions/properties.xml new file mode 100644 index 0000000000..58ac1a0bd6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/ClassBasedDefinedActions/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20091009121102 + true + true + true + true + true + true + 1232263507421 + 64824585826913618 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/InLine/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/InLine/content.txt new file mode 100644 index 0000000000..a47c7982bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/InLine/content.txt @@ -0,0 +1,76 @@ +!2 Appendix A. Defining an Action Within a Storytest +An action definition can be included within a storytest, but it's messier than with suites (as above). Here's an example: + +!**< hide +!define getUrlGiving ( +|''get url''|url|''giving title''|title| + +|''get url''|@{url}| + +|''title''|'''becomes'''|@{title}| +) + +**! +|!-fitlibrary.DefineAction-!| +|${getUrlGiving}| + +The first row of the table has the fixture ''!-fitlibrary.DefineAction-!''. The second row of the table contains several nested tables. The first of these tables gives the defined action, with the even cells containing parameter names (here, ''URL'' and ''TITLE''). They are in uppercase here, but that's not necessary. + +The subsequent (nested) tables give the ''body'' of the ''defined action'', and can include use of the parameters at any point. The example above uses the parameters by themselves in various cells. In general, the parameters can be included with other text. +!3 A.1 Wiki Format for ''defined actions'' Within a Storytest +Here it is shown in wiki format: + +----{{{ +!**< hide +!define getUrlGiving ( +|''get url''|url|''giving title''|title| + +|''get url''|@{url}| + +|''title''|'''becomes'''|@{title}| +) + +**! +|!-fitlibrary.DefineTemplate-!| +|!-${getUrlGiving}-!| +}}}---- +This, unfortunately, uses lots of messy wiki hieroglyphics! + +Let's go through them, step by step. + +!3 A.2 Hiding text by folding +The text surrounded by the following is folded up and hidden: +----{{{ +!**< hide +... + +**! +}}}---- +If you want to be able to see the text inside the folded area, replace the "<" by a ">". Then, when not editing the text, you can fold/unfold the text, etc inside that folding area by clicking on the little triangle. + +!3 A.3 Defining nested tables +Nested tables can't be written directly in place. They need to be ''defined'' and used as we see above. + +A definition has a name and a value (inside brackets). The value may be on a single line, such as: +----{{{ +!define date (20 Dec 2009) +}}}---- +Or it may be over several lines, such as: +----{{{ +!define getUrlGiving ( +|''get url''|url|''giving title''|title| + +|''get url''|@{url}| + +|''title''|'''becomes'''|@{title}| +) +}}}---- +''!-FitNesse-!'' is fussy about the format of the ''define'': + * "!define" has to be at the start of the line, without a space in the middle. + * The name of the define can't have spaces in it. I suggest just using letters and digits. + * There has to be one space after the name and before the first bracket + * There can't be a ")" inside the value of the define. +If you need to include a ")" inside the value, uses "{" and "}" instead to delimit the value. Then you can't use "}" inside the value. If you need to use both ")" and "}" you have to break the text up with several !defines so that any define has either one or the other, but not both. + +A defined value is used as follows: !-${getUrlGiving}-!. In our example above, we use that to include the nested tables inside the second row of the ''define action'' table. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/InLine/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/InLine/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/InLine/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/content.txt new file mode 100644 index 0000000000..21383b1c54 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/content.txt @@ -0,0 +1,84 @@ +!1 DefinedActions +DefinedActions allow high-level actions to be defined in terms of lower-level actions. For example, business-level actions can be mapped into automatic actions carried out through a web browser, through web services, etc. + +This means that: + + * Storytests can be concise and to the point, with additional detail included in the ''defined actions''. + + * There is no need to repeat sequences of tables; instead, use ''defined actions'' to build a higher-level "domain language" + +These can be applied with any flow storytests and any fixtures, including Fit fixture. +!2 1. ''Defined actions'' for shared use across a suite +''Defined actions'' can be specified so that they are processed once for a suite. Eg, within the ''!-SuiteSetUp-!'' page, include one or more tables that reference where ''defined actions'' are to be found: + +!|MySuiteFixture| + +|''define actions at''|!-.MyApp.ActionDefinitions-!| + +The page name provided as the argument to the action above must be a complete and valid path, starting with ".". + +The defined actions in ''!-.MyApp.ActionDefinitions-!'', and its child pages, can then used in that suite. + +The page structure could look like this, with the defined actions organised by function: +{{{ +MyApp + * ActionDefinitions + * DiscountVouchers + * EnterVoucher + * SaleConfirmation + * CreateOrder + * MultilineOrder + etc +}}} +In each of those pages, there can be zero or more defined actions specified. For example, the following specifies two defined actions (''loginWith'' and ''getUrlGivingTitle'') shown in wiki syntax: +{{{ +|''login''|user|''with''|pass| + +|''with''|//input[@id="userName"]|''enter text''|@{user}| + +|''with''|//input[@id="password"]|''enter text''|@{pass}| + +|''submit''|//form| +---- +|''get url''|url|''giving title''|title| + +|''get url''|@{url}| + +|''title''|'''becomes'''|@{title}| +---- +}}}The first row specifies the name and arguments of the ''defined action'', following the usual form of ''!-DoFixture-!'' actions. The even cells contain the parameter names (eg, ''URL'' and ''TITLE''). They are in uppercase here, but that's not necessary. + +The subsequent tables (up to the !- ---- -! or the end of the page) give the ''body'' of the ''defined action'', and can include use of the parameters at any point. The example above uses the parameters by themselves in various cells. In general, the parameters can be included with other text. The following tables make up the body of the ''defined action''. + +!2 2. Using a Defined Action +When a defined action is used ("''called''") in a storytest, the ''body'' of the defined action is run after parameter substitution. Consider the following action: + +|''get url''|http://localhost:8080|''giving title''|!-FrontPage-!| + +This matches the ''defined action'' given above. So the parameter URL takes the value "!-http://localhost:8080-!" and the parameter TITLE takes the value "!-FrontPage-!". These are substituted into the body, to give the following: + +|''get url''|http://localhost:8080| + +|''title''|'''becomes'''|!-FrontPage-!| + +This is then run in the usual way. If further defined actions are used within the body, these are treated in the same way. + +If the use of a ''defined action'' passes, the original use is coloured green. Otherwise, it's coloured red or yellow, and the full details of what failed are shown in the report. + +By including the following table in a storytest, the subsequent uses of ''defined actions'' within the storytest will be expanded even when they pass: + +|''set expand defined actions''|true| +# +!2 3. Class-Based Defined Actions +# +These are an experimental feature that will probably be dropped. An alternative and more powerful approach is to use dynamic variables within the keywords of actions. + +See ^ClassBasedDefinedActions +# +!2 4. Inline +# +It's not recommended, but it's possible to specify ''defined actions'' [[inline, within a storytest][^InLine]]. +# +!2 5. Specifications +# +See .FitLibrary.SpecifiCations.DefinedActions diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/properties.xml new file mode 100644 index 0000000000..8c6e353315 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DefinedActions/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1232258375718 + -3984793331712545113 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/DoFixtureSummary/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/DoFixtureSummary/content.txt new file mode 100644 index 0000000000..b1bb146084 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/DoFixtureSummary/content.txt @@ -0,0 +1,45 @@ +!2 !-DoFixture-!: +!3 ''keywords'' + * Actions start with a ''keyword'' and appear in every second cell. + * A ''keyword'' cell can be empty. + * The last ''keyword'' is optional. + * A ''keyword'' can contain any characters, such as "+" +!3 Special actions +!-DoFixture-! has several special actions, which apply to the rest of their row: + * ''check'' checks whether the result of the action in the rest of the row matches the value in the last cell of the row. That last cell is colored green, red, etc accordingly. + * ''reject'' checks that the action fails, as expected. + * ''not'' acts the same as ''reject''. + * ''ensure'' checks that the action succeeds. + * ''show'' displays the result of the action in the rest of the row by adding an extra cell in the report. + * ''show dot'' displays the result of the action in the rest of the row by adding an extra cell in the report. This is shown as a Dot graph. + * ''note'' ignores the rest of the row, allowing notes to be included in tables + * ''comment'' ignores the rest of the table + * ''ignored'' ignores the rest of the table, but colours it as ignored in the report + * ''abandon storytest'' to ignore the rest of the storytest (without colouring it as ignored) +!3 Postfix Special Actions (new in 2008) + * Instead of writing: +|'''check'''|''some action''|a|''with arg''|b|4.0| + * You can now write: +|''some action''|a|''with arg''|b|'''is'''|4.0| + * And the following is prepared to wait awhile for the value to become 4.0 +|''some action''|a|''with arg''|b|'''becomes'''|4.*| + * A similar special action does pattern matching: +|''some action''|a|''with arg''|b|'''matches'''|4.*| + +See .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions for further details +!3 Flow Style +To be in "flow", the first table must be a ''!-DoFixture-!'' (or ''!-SequenceFixture-!''). The actions in all following tables are carried out with that fixture. However, as we saw before, an action may provide a different fixture, such as a ''!-RowFixture-!'', which will be used with the rest of the table. + +This restriction has now been relaxed, so that the first table doesn't have to be a ''!-DoFixture-!'' . Instead, the first ''!-DoFixture-!'' table in the storytest will continue the storytest in flow. + +However, this behaviour requires that the following define is placed high in the page structure: +{{{ +!define TEST_RUNNER {fitlibrary.suite.FitLibraryServer} +}}}See .FitLibrary.SpecifiCations.GoingIntoFlow for further details. +!3 More Examples +Lots more examples of using !-DoFixture-! and the other flow fixtures are provided in ''Fit for Developing Software'' by Rick Mugridge and Ward Cunningham, Prentice-Hall, 2005. The tables and fixture code for these examples will be made available on the [[Fit website][http://fit.w2.com]]. +!3 Fixture Code +Let's now look at WritingFixtures for !-DoFixture-! tables. +!3 More Technical Issues +SpecialisedIssues + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/DoFixtureSummary/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/DoFixtureSummary/properties.xml new file mode 100644 index 0000000000..07c3c15016 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/DoFixtureSummary/properties.xml @@ -0,0 +1,13 @@ + + + + + 20090118165934 + + + + + + 1232251174156 + -9189191801356899652 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/FixtureDetails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/FixtureDetails/content.txt new file mode 100644 index 0000000000..0008d0630d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/FixtureDetails/content.txt @@ -0,0 +1,54 @@ +!3 Calling a method from an action +The keywords of an action are concatentated together, with spaces between and converted into a valid Java identifier. This is done using [[''extended camel casing''][.FitLibraryUserGuide.ExtendedCamelCase]]. +!3 Rules for coloring + * If an action returns a boolean value, the 'keywords' of that action are colored green if the returns true. If it returns false or throws an exception, it colors it red. + * A 'check'' special action colors the last cell, containing the expected value, just like ''!-ActionFixture-!'' + * A 'reject' or 'not' special action color the action green if the action returns false or throws an exception. Otherwise it colors it red. + * An 'ensure' special action colors the action red if the action returns false or throws an exception. Otherwise it colors it green. +!3 Auto-Wrapping +The value returned by the method corresponding to an action may be auto-wrapped with a fixture, as follows: + * A ''Set'' object is auto-wrapped with a ''!-SetFixture-!''. + * An ''Object[]'', ''Collection'' or ''Iterator'' is wrapped with an ''!-ArrayFixture-!''. + * An 'Object' is wrapped with a ''!-DoFixture-!''. But only if it's not one of the above, nor a ''Fixture'', and doesn't have a ''static Object parse(String)'' method. +This fixture object, or the one returned explicitly, is used to interpret the rest of the table. +!3 Fixture as Adapter +An object may be associated with a ''!-DoFixture-!'' (by calling the method ''setSystemUnderTest(Object)'' or through the ''super()'' constructor). If there is no method in the ''!-DoFixture-!'' corresponding to an action, ''!-DoFixture-!'' tries to call that method on the ''!-SystemUnderTest-!'' object instead (if it's been defined). (This approach is also used in [[''!-CalculateFixture-!''][.FitLibrary.UserGuide.FitLibraryByExample.CalculationRule]] and [[''!-SetUpFixture-!''][.FitLibraryUserGuide.SetUpFixture]].) + +This means that a subclass of ''!-DoFixture-!'' is only needed as an adapter, when actions don't map directly onto methods of the ''!-SystemUnderTest-!'' object. +!3 Domain Objects +If an action corresponds to a property, the value of that property is returned. The value may be an ''Object''. + +Because some ''Object''s are auto-wrapped with ''!-DoFixture-!'', it's possible to access and test domain objects directly, without the need to write fixtures. +!3 Tests without Fixture +Because of auto-wrapping and Domain objects, it's possible to use Fit for testing without the need to write any fixtures at all (inspired by [[''Naked Objects''][http://www.nakedobjects.org]]).My original aim in introducing these facilities was to enable the use of Fit in teaching beginner programmers, but I found them generally useful. + +This approach depends on two experimental special actions in ''!-DoFixture-!'': + * A ''start'' special action creates an object of the specified class as the ''!-SystemUnderTest-!'' object. This can be an object of any class that has a public nullary constructor. + * A ''calculate'' special action in ''!-DoFixture-!'' returns a ''!-CalculateFixture-!'' that refers to the ''!-SystemUnderTest-!'' object of the ''!-DoFixture-!''. This means that the rest of the table is interpreted by that ''!-CalculateFixture-!'', without needing a subclass of that fixture. + +This may need more work to make it general enough... + +Here's a trivial example: + +|!-fitlibrary.DoFixture-!| +|start|java.awt.Rectangle| + +|check|''x''|0| +|check|''y''|0| + +|set location|100||200| +|check|''x''|100| +|check|''y''|200| + * ''location'' gives a copy of the ''Point'' of the (x,y) position of the Rectangle: +|location| +|''move''|12||14| +|check|''x''|12| +|check|''y''|14| + * The original location is unchanged +|check|''x''|100| +|check|''y''|200| + +|''set size''|20||30| +|check|''width''|20| +|check|''height''|30| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/FixtureDetails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/FixtureDetails/properties.xml new file mode 100644 index 0000000000..d0d1fcad73 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/FixtureDetails/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165949 + + + + + + + 1232251189765 + 2499481429677512518 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SetUpTearDown/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SetUpTearDown/content.txt new file mode 100644 index 0000000000..39079af149 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SetUpTearDown/content.txt @@ -0,0 +1,10 @@ +!3 Doing your own processing before and/or after a fixture has done its work +Rather than overriding implementation-specific methods (such as ''doTable()'') in ''Fit'' or ''!-FitLibrary-!'', use the methods ''setUp()'' and ''tearDown()''. + +Fixture objects of class ''!-DoFixture-!'' (and subclasses) call these two methods. Consider first a ''!-DoFixture-!'' that's running a single table. Such a fixture could be introduced in the middle of flow-style, or it could be introduced with an explicit fixture class name in core-style. In this case: + * ''setUp()'' is called before the fixture object processes the table + * ''tearDown()'' is called after the fixture object has finished processing the table +Now let's consider a ''!-DoFixture-!'' that's a ''flow fixture object'' -- the first ''!-DoFixture-!'' of a storytest that runs the whole storytest. This is responsible for running all of the tables in a storytest, passing control to other fixtures as needed. In this case: + * ''setUp()'' is called before the fixture object processes any of the tables + * ''tearDown()'' is called after the fixture object has finished processing all of the tables (or after it is prematurely stopped) + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SetUpTearDown/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SetUpTearDown/properties.xml new file mode 100644 index 0000000000..374d1293a6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SetUpTearDown/properties.xml @@ -0,0 +1,14 @@ + + + + + 20060729130224 + + + + + + + 1137294742451 + -4171209258708067812 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SpecialisedIssues/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SpecialisedIssues/content.txt new file mode 100644 index 0000000000..dad6296bd3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SpecialisedIssues/content.txt @@ -0,0 +1,8 @@ +!3 Core fixtures in flow +A fixture may be named in later tables in a sequence of tables, and is handled in the usual way for core fixtures. +!3 Flow fixtures not in flow +If the fixture named in the first table is not a !-DoFixture-!, the tables are handled in the usual way for core tables. ''!-DoFixture-!''s can still be used in this case. +!3 Stopping !-DoFixture-! +There are two ways of stopping a !-DoFixture-! from continuing to run a storytest when there is an error (or whatever): + * Call ''setStopOnError(true)'' -- on the next unexpected exception, !-DoFixture-! will stop running + * Use the !-DoFixture-! action ''abandon storytest'' or call ''abandonStorytest(null)'' -- and !-DoFixture-! will stop running the rest of the storytest \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SpecialisedIssues/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SpecialisedIssues/properties.xml new file mode 100644 index 0000000000..6fb3817772 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/SpecialisedIssues/properties.xml @@ -0,0 +1,13 @@ + + + + + 20060729130224 + + + + + + 1136769451129 + -31445960469589645 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WhenActionsFail/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WhenActionsFail/content.txt new file mode 100644 index 0000000000..800ecd6209 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WhenActionsFail/content.txt @@ -0,0 +1,34 @@ +Let's look at what happens when an action fails. + +| !-fitbook.ChatStart-! | + +|''connect user''|sarah| + +|''user''|sarah|''creates''|fit|''room''| + +There should be no occupants in the "fitNesse" room: + +|check|''occupants''|fit|0| + +Sarah can't enter an unknown room: + +|''user''|sarah|''enters''|unfit|''room''| + +We can expect that, by putting ''reject'' in the first cell: + +|reject|''user''|sarah|''enters''|unfit|''room''| + +and an unknown user can't create a room: + +|reject|''user''|george|''creates''|unfit|''room''| + +Sarah hasn't entered the room, so she can't be in there: + +|''users in room''|fit| +|''name''| +|sarah| + +Here's a ''DoFixtureSummary''. +----The following specifies the expected counts of passes, fails, etc for the page. This is used here to avoid manually checking, as here the storytests are written to fail. You'll probably not use this technique, as you'd expect all your storytests to pass. There are other techniques to use with ''!-FitLibrary-!'' to test for expected failures (eg, the ''not'' action of ''!-DoFixture-!''). +|''expected test results''|7|''right''|4|''wrong''|0|''ignored''|0|''exceptions''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WhenActionsFail/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WhenActionsFail/properties.xml new file mode 100644 index 0000000000..bec0b18b49 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WhenActionsFail/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165843 + + + + + + + 1232251123671 + -4447377404854033241 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WritingFixtures/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WritingFixtures/content.txt new file mode 100644 index 0000000000..ad92a18662 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WritingFixtures/content.txt @@ -0,0 +1,50 @@ +!3 Actions and Methods +Each action in a ''!-DoFixture-!'' table is mapped directly to a method in the fixture (we'll expand this model in FixtureDetails). + +Eg, consider the first few tables: + * The fixture of the first table is a ''!-DoFixture-!'', so the created ''flow fixture object'' handles the rest of the tables: +| !-ChatStart-! | + * The second table contains an action, which is mapped into the method ''connectUser()'' of the (initial) ''flow fixture object'', as shown below. +|''connect user''|sarah| + * The third table contains two actions which are also applied to the ''flow fixture object''. +|''user''|sarah|''creates''|fit|''room''| +|''user''|sarah|''enters''|fit|''room''| + +!3 Some Example Code +----{{{public class ChatStart extends fitlibrary.DoFixture { + private ChatRoom chat = new ChatRoom(); + + public ChatStart() { + setSystemUnderTest(chat); + } + public boolean connectUser(String userName) { + return chat.connectUser(userName); + } + public boolean userCreatesRoom(String userName, String roomName) { + return chat.userCreatesRoom(userName,roomName); + } + public boolean userEntersRoom(String userName, String roomName) { + return chat.userEntersRoom(userName,roomName); + } + ... +}}}---- +The next table checks a list. + +|''users in room''|fit| +|''name''| +|sarah| + +The first row is an action, which corresponds to the method ''usersInRoom()'' which returns a [[''!-ParamRowFixture-!''][.FitLibraryUserGuide.ParamRowFixture]]. This fixture object interprets the rest of the table. +----{{{ ... + public Fixture usersInRoom(String roomName) { + return new ParamRowFixture(chat.usersInRoom(roomName).toArray(),User.class); + } + ... +}}}---- +Each following table is handled by the initial ''!-DoFixture-!'': + +|''connect user''|rick| + +This means that each table doesn't need an explicit fixture, so actions can be split up easily. Because actions may return a fixture object for the rest of the table, that object can be created with all the appropriate information. This avoids the needs for global variables for communication between fixtures. + +FixtureDetails diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WritingFixtures/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WritingFixtures/properties.xml new file mode 100644 index 0000000000..fba2672aa2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/WritingFixtures/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165857 + + + + + + + 1232251137156 + -1170684635259632812 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/content.txt new file mode 100644 index 0000000000..34ffa8c6df --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/content.txt @@ -0,0 +1,49 @@ +!3 Contents + * Introduction + * ^WhenActionsFail + * ^DoFixtureSummary + * ^WritingFixtures + * ^FixtureDetails + * ^SetUpTearDown +!3 Introduction +DoFixture tables are used to define/test workflow, a sequence of actions. The aim is to make the tests easily readable. + +Let's look at a simple example test (which you can run). + +| !-fitbook.ChatStart-! | + +|''connect user''|sarah| + +|''user''|sarah|''creates''|fit|''room''| +|''user''|sarah|''enters''|fit|''room''| + +|''users in room''|fit| +|''name''| +|sarah| + +The tables define/test the following sequence: + * Start the System Under Test, a chat server + * Anna connects to the chat server + * Anna creates a new room and enters it + * Check that Sara is the only occupant of that room +Unlike with the core fixtures, the first row of each table (other than the first) doesn't usually name a fixture. + +Each row of the second and third tables define actions. Eg consider the following table: + +|''user''|sarah|''enters''|fit|''room''| + +The first, third and fifth cells contain ''keywords'', which give information about the role of the data that's in the second and fourth cells ("anna" and "lotr"). The ''keywords'' are shown in ''italics'' and are often colored when the tst is run (try it now). The keywords all joined together give the name of the action, ''user enters room''. + +The fourth table is a little different, as it's checking the list of users in the given room: + +|''users in room''|fit| +|''name''| +|sarah| + +The first row is an action, as before, with ''keywords'' and data alternating. This serves a similar purpose to a fixture name, but is an action which provides an appropriate fixture. + +The rest of the table is like a !-RowFixture-! table. The second row gives the ''header labels'' and there is a single element expected in the list. + +Let's look at what happens ''^WhenActionsFail''. + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/properties.xml new file mode 100644 index 0000000000..c1cf15868c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DoFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165832 + + + + + + + 1232251112703 + 6660530234987322781 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DotGraphics/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DotGraphics/content.txt new file mode 100644 index 0000000000..c7732ad583 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DotGraphics/content.txt @@ -0,0 +1,26 @@ +DotGraphics allows graph images to be used in tests in any of the ''!-FitLibrary-!'' fixture. For example, graphs are used in the following ''!-DoFixture-!'' example: + +!|fitlibrary.specify.DoGraphics| + +|''actions''| + +|check|graph|!img http://files/dots/ChatGraph.gif | + +This requires that ''Dot'', an open-source graph visualization system, is installed. ''Dot'' is available at http://www.graphviz.org. + +The corresponding class is as follows: +----{{{public class DoGraphics { + public DotGraphic graph() { + return new DotGraphic("digraph G {\n"+ + "lotr->luke;\n"+ + "lotr->Anna;\n"+ + "shrek->luke;\n"+ + "shrek->anna;\n"+ + "shrek->madelin;\n"+ + "}\n"); + } +} +}}}----Because of the special type ''!-DotGraphic -!'', ${fitLibrary} expects that the cell contains a IMAGE link to an image file, which has an associated text file. ''!-DotGraphic -!'' compares the text of the associated text file with the text supplied by the ''graph()'' method. If it's the same, the cell is colored green; otherwise, Dot is run on the actual text and the resulting image is displayed as the actual value. + +See Chapters 11 and 29 of the ${fitBook} for other examples. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DotGraphics/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DotGraphics/properties.xml new file mode 100644 index 0000000000..b76bc2e5cd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/DotGraphics/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165308 + + + + + + + 1232250788546 + -2120731472505428312 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/FileComparison/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/FileComparison/content.txt new file mode 100644 index 0000000000..3c2af834ea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/FileComparison/content.txt @@ -0,0 +1,13 @@ +FileComparison takes two files or two directories and compares them. The differences is presented as an HTML list, showing the structure (but only enough to show differences). This list includes links to the files concerned. + +!|fitlibrary.CompareFilesFixture| +!3 Differing file contents +|check|''file''|testFiles/threeLines.txt|''same as''|testFiles/differingThreeLines.txt|!-threeLines.txt
  • Files differ at byte position 9
  • differingThreeLines.txt
-!| +!3 The two directories are equal +!|check|directory|testFiles/diry1|same as|testFiles/diry2|diry1| +!3 Differing directories due to different files +!|check|directory|testFiles/diry3|same as|testFiles/diry4|!-diry3
  • threeLines.txt
    • Missing
  • empty.txt
    • Surplus
-!| +!2 Absolute file names +''!-CompareFileFixture-!'' now handles absolute file names as well as relative file names. A file name is treated as absolute if it starts with "/" or has ":" as the second character. Examples of absolute file names: + * "/tmp/generatedFile" + * "C:\Documents and Settings\Me\My Documents\generatedDirectory". diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/FileComparison/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/FileComparison/properties.xml new file mode 100644 index 0000000000..6057e8d534 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/FileComparison/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165429 + + + + + + + 1232250869671 + 1679780542237934327 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/GridTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/GridTables/content.txt new file mode 100644 index 0000000000..7733e7be1a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/GridTables/content.txt @@ -0,0 +1,34 @@ +GridTables checks that a grid of values in the table matches the values in a 2D array. + +!|fitlibrary.specify.GridFixtureUnderTest| + +|strings| +|a|b| +|c|d| + +The method ''string()'' in class ''!-GridFixtureUnderTest-!'' is as follows: + +{{{ ... + public Fixture strings() { + return new GridFixture(new String[][] { + {"a", "b"}, {"c", "d"} }); + } +}}} +The grid can contain graphics: +|images| +|!img http://files/gameImages/wall.jpg |!img http://files/gameImages/space.jpg |!img http://files/gameImages/box.jpg |!img http://files/gameImages/space.jpg |!img http://files/gameImages/wall.jpg | + +The image file names in the table are compared against the File names supplied by the fixture. + +The method ''images()'' in class ''!-GridFixtureUnderTest-!'' is as follows: + +----{{{... + public Fixture images() { + return new GridFixture(new ImageNameGraphic[][] { + { new ImageNameGraphic("gameImages/wall.jpg"), + new ImageNameGraphic("gameImages/space.jpg"), + new ImageNameGraphic("gameImages/box.jpg"), + new ImageNameGraphic("gameImages/space.jpg"), + new ImageNameGraphic("gameImages/wall.jpg") }}); + } +}}}---- diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/GridTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/GridTables/properties.xml new file mode 100644 index 0000000000..be154cc020 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/GridTables/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232250602203 + -2009562999101041843 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageGrids/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageGrids/content.txt new file mode 100644 index 0000000000..063efcd241 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageGrids/content.txt @@ -0,0 +1,20 @@ +ImageGrids just needs the names of the image files: + +!|fitlibrary.specify.GridFixtureUnderTest| + +|images for image fixture| +|!img http://files/gameImages/wall.jpg|!img http://files/gameImages/space.jpg |!img http://files/gameImages/box.jpg |!img http://files/gameImages/space.jpg |!img http://files/gameImages/wall.jpg | + +The method ''imagesForImageFixture()'' in class ''!-GridFixtureUnderTest-!'' is as follows: + +----{{{... + public Fixture imagesForImageFixture() { + return new ImageFixture(new String[][] { + { "gameImages/wall.jpg", + "gameImages/space.jpg", + "gameImages/box.jpg", + "gameImages/space.jpg", + "gameImages/wall.jpg" }}); + } +}}}---- + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageGrids/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageGrids/properties.xml new file mode 100644 index 0000000000..b04db7cbd2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageGrids/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232250859109 + -1872722525992898333 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageNameGraphic/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageNameGraphic/content.txt new file mode 100644 index 0000000000..e7fd164dd9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageNameGraphic/content.txt @@ -0,0 +1,19 @@ +Here we use images in a ''!-GridFixture-!''; they can be used as a value with any of the ''!-FitLibrary-!'' fixtures. +!|fitlibrary.specify.GridFixtureUnderTest| + +|images| +|!img http://files/gameImages/wall.jpg |!img http://files/gameImages/space.jpg |!img http://files/gameImages/box.jpg |!img http://files/gameImages/space.jpg |!img http://files/gameImages/wall.jpg | +The corresponding code: +----{{{public class GridFixtureUnderTest { + public Fixture images() { + return new GridFixture(new ImageNameGraphic[][] { + { new ImageNameGraphic("images/wall.jpg"), + new ImageNameGraphic("gameImages/space.jpg"), + new ImageNameGraphic("gameImages/box.jpg"), + new ImageNameGraphic("gameImages/space.jpg"), + new ImageNameGraphic("gameImages/wall.jpg") }}); + } + +}}}---- +Because the type is ''!-ImageNameGraphic-!'', the values in the grid are treated specially. The file name for the image is compared against the file name in the ''!-ImageNameGraphic-!''. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageNameGraphic/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageNameGraphic/properties.xml new file mode 100644 index 0000000000..d0c2fa126d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/ImageNameGraphic/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232250799390 + 7277703471461452684 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/ProgramCode/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/ProgramCode/content.txt new file mode 100644 index 0000000000..2179afc6bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/ProgramCode/content.txt @@ -0,0 +1,10 @@ +Here's the corresponding code: +----{{{ public class Owing { + public Map getAmountsOwing() { + HashMap map = new HashMap(); + map.put("anmol", new Double(5.00)); + map.put("sally", new Double(15.00)); + map.put("ryan", new Double(200.00)); + return map; + } +} }}}---- diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/ProgramCode/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/ProgramCode/properties.xml new file mode 100644 index 0000000000..4a50759482 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/ProgramCode/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20090118165036 + true + true + true + true + true + true + 1232250636671 + 7516370783398190489 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/content.txt new file mode 100644 index 0000000000..62a42f1ef2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/content.txt @@ -0,0 +1,13 @@ +A ''Map'' is a mathematical function, specifying the relation between a ''key'' and a ''value''. There is at most one ''value'' for a ''key''. + +Let's look at an example. We may record the amount owed to us by different friends. We'll assume that our friends have distinct names, and that we record the full amount owed by that friend. Here's a table that checks the amounts owing. The order of the rows don't matter. + +|!-fitlibrary.eg.Owing-!| + +|''amounts owing''| +|ryan|200.00| +|anmol|5.00| +|sally|15.00| + * There is a row for each element, with the ''key'' in the first cell and the ''value'' in the second. + * Notice that there is no header row, as they're unnecessary. +^ProgramCode diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/properties.xml new file mode 100644 index 0000000000..e56d69ebf2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/MapHandling/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232250620484 + -3398957292175533613 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/GeneralNesting/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/GeneralNesting/content.txt new file mode 100644 index 0000000000..cb84c4250b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/GeneralNesting/content.txt @@ -0,0 +1,16 @@ +Nested tables may be used in general with ''!-FitLibrary-!'' fixtures. Tables may be nested to arbitrary level, and mixed in arbitrary ways. +!3 When an expected value is a collection, array or object +In this case, the actual value is checked against the expected value, by colouring the nested table. Eg: + * As the ''check'' value in a ''!-DoFixture-!'' action + * In a value in a checked collection, set, array or map + * In a property check with ''!-DomainObjectCheckFixture-!'' + * As the expected value in a ''!-CalculationFixture-!'' table +!3 When a given (or supplied) value is a collection, array or object. +In this case, the value is set up from the data in the nested table. Eg: + * In a parameter value in a ''!-DoFixture-!'' action + * In a property set with ''!-DomainObjectSetUpFixture-!'' + * As a ''given'' in a ''!-CalculationFixture-!'' table +!3 Setup Tables and Methods + * Consider when a setup method is needed when ''!-FitLibrary-!'' runs, but it doesn't yet exist. An error message gives the method name and the arguments required, as well as the class in which the method needs to appear. + * When a etup table is nested several levels deep, the setup method is expected in the fixture at the top level. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/GeneralNesting/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/GeneralNesting/properties.xml new file mode 100644 index 0000000000..b80e6f14fa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/GeneralNesting/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060818154209 + true + true + true + true + true + true + 1154156548367 + -7311756025984211345 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedArrays/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedArrays/content.txt new file mode 100644 index 0000000000..e29383069e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedArrays/content.txt @@ -0,0 +1,29 @@ +In this example, we show some calculations. Again we keep it very simple, illustrating how an array may be expressed in a comma-separated form and in a table. +!**< test +!define array1 (|1| +|2| +|3| +) +!define array2 (|0| +) + +**! +|!-fitlibrary.eg.NestedArray-!| + +|''calculate''| +|comma array||array| +|1,2,3||${array1}| +|0||${array2}| + +The method ''arrayCommaArray()'' is called for each row. The whole of the ''!-NestedArray-!'' class is as follows: +----{{{public class NestedArray extends DoFixture { + public int[] arrayCommaArray(int[] array) { + return array; + } +} +}}}---- +Notice that: + * The nested table for an array doesn't have a header + * The fixture is a ''!-DoFixture-!''. We make use of the ''calculate'' action so that the calculations are handled by a ''!-CalculateFixture-!''. + * The comma-separated list form of the array is handled automatically (''!-FitLibrary-!'' can determine the component-type of the array from the argument of the method ''arrayCommaArray()'' +Let's now look at NestedObjects. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedArrays/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedArrays/properties.xml new file mode 100644 index 0000000000..e278796c80 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedArrays/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118170405 + + + + + + + + 1232251445468 + -4201783015839557514 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedListsAndSets/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedListsAndSets/content.txt new file mode 100644 index 0000000000..b221ad4380 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedListsAndSets/content.txt @@ -0,0 +1,63 @@ +!2 Nested lists and sets +The use of nested tables is easiest to see by example. Let's look at a simple example and see how it's implemented. We'll define an action that takes a list as given and returns a set as a result. + +!**< test +!define list (|''name''| +|anna| +|anna| +|luke| +) +!define set (|''name''| +|luke| +|anna| +) +**! +|!-fitlibrary.eg.ListToSet-!| +|'''check'''|''list''|${list}|''to set''|${set}| + +The method ''listToSet()'' is defined as follows: +----{{{ public Set listToSet(List list) { + return new HashSet(list); + } +}}}---- +But what's the type of the components of the List, the argument of the method? Pre-jdk1.5, ''!-FitLibrary-!'' can't tell. So the ''!-ListToSet-!'' fixture is required to provide a setup method to create each element of the List. As the header of the List table is ''name'', the method ''name()'' is expected, with one argument. Here's what the fixture provides: +----{{{ public Person name(String name) { + return new Person(name); + } +}}}---- +That's all that's needed to create the List. What about checking the result? The method ''listToSet()'' returns a ''Set'', and so that is auto-wrapped with a ''!-SetFixture-!'', which checks the elements of the set against the second inner table. Obviously, the Set contains objects of class ''Person'', and that class has a property ''name''. Here's the whole of the code: +----{{{public class ListToSet extends DoFixture { + public Set listToSet(List list) { + return new HashSet(list); + } + public Person name(String name) { + return new Person(name); + } + public static class Person { + private String name; + + public Person(String name) { + this.name = name; + } + public String getName() { + return name; + } + public void setName(String name) { + this.name = name; + } + public int hashCode() { + return name.hashCode(); + } + public boolean equals(Object obj) { + if (!(obj instanceof Person)) + return false; + return name.equals(((Person)obj).name); + } + } +} +}}}---- +Notice that: + * We don't need to mention any fixtures other than ''!-ListToSet-!''; the rest is handled automatically by ''!-FitLibrary-!''. Behind the scenes, it makes use of a ''!-SetUpFixture-!'' and a ''!-SetFixture-!'' to do some of the work. + * We do need to define the ''name()'' method to create the elements of the List. These are assembled automatically by ''!-SetUpFixture-!''. + * The ''hashCode()'' and ''equals()'' methods are needed in ''Person'' so a Set can be constructued correctly. +Let's look at another example, this time using arrays: NestedArrays diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedListsAndSets/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedListsAndSets/properties.xml new file mode 100644 index 0000000000..921ebfb40e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedListsAndSets/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118170356 + + + + + + + + 1232251436250 + 8384657457601414578 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedObjects/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedObjects/content.txt new file mode 100644 index 0000000000..f196b60e83 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedObjects/content.txt @@ -0,0 +1,65 @@ +We can also use nested tables to directly express domain objects. Again, let's use a very simple example. We want to define the addition of two vectors: +!**< test +!define vector1 (|''x''|5| +|''y''|7| +) +!define vector2 (|''x''|10|''y''|20| +) +!define vector3 (|''x''|15| +|''y''|27| +) +**! + +!|fitlibrary.eg.VectorAddition| + +|'''check'''|''add''|${vector1}|''to''|${vector2}|${vector3}| + +Notice that the domain objects are defined as property-value pairs. There can be one or more pairs in a row. + +Now the method ''addTo()'' is defined as follows: +----{{{ public Vector addTo(Vector v1, Vector v2) { + return v1.add(v2); + } +}}}---- +Here's the steps that happen automatically: + * Before the method is called, the first two nested tables need to be converted into a ''Vector''. Let's just discuss the first one. As there is an inner table for the object, ''!-FitLibrary-!'' automatically creates an object of class ''Vector'' and uses a ''!-DomainObjectSetUpFixture-!'' to set the properties appropriately from the table. + * The method ''addTo()'' is called. + * The result of the method is checked against the third nested table. As the result type is an object (of type ''Vector'') and there's a nested table, ''!-FitLibrary-!'' automatically uses a ''!-DomainObjectCheckFixture-!'' to check that the properties in the table and the object correspond. +Here's all the Java code: +----{{{public class VectorAddition extends DoFixture { + public Vector addTo(Vector v1, Vector v2) { + return v1.add(v2); + } + public static class Vector { + private int x, y; + + public Vector() { + // + } + public Vector(int x, int y) { + setX(x); + setY(y); + } + public Vector add(Vector v2) { + return new Vector(x+v2.getX(),y+v2.getY()); + } + public int getX() { + return x; + } + public void setX(int x) { + this.x = x; + } + public int getY() { + return y; + } + public void setY(int y) { + this.y = y; + } + } +} +}}}---- +Notice that: + * class ''Vector'' needs a nullary constructor (ie, it's a Java bean) + * The only fixture mentioned is the first one + * Much of the work happens automatically +Let's now consider GeneralNesting. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedObjects/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedObjects/properties.xml new file mode 100644 index 0000000000..ca837bb934 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/NestedObjects/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118170415 + + + + + + + + 1232251455906 + 4912296463805305924 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/content.txt new file mode 100644 index 0000000000..c2075961b8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/content.txt @@ -0,0 +1,32 @@ +!**< test +!define releaseManager (|''Name''|Mike| +) +!define stories1 (|''Description''|''Estimated Time''|''Actual Time''| +|Extract calculation rule|3|| +) +!define iterations (|''Week''|''Assigned stories''| +|1|${stories1}| +) +!define allStories (|''Description''|''Estimated Time''| +|Extract calculation rule|3| +|Introduce action|1| +) +**! +Nested tables are not going to suit everyone. If they're too complicated for anyone in your team, I suggest you don't use them. + +Nested tables allow storytests to show more of the structure of the domain. This is useful for Value Objects that have some structure. It's also useful when a domain object is an Aggregate (in the Domain Driven Design sense). I've worked on real storytests for a complex business domain with 5 levels of nesting that make perfect sense, as they lay our clearly the relationship between the domain objects. + +For example, a ''Release'' has a ''Release Manager'', with various details, and is made up of a set of stories and a sequence of ''Iterations''. Each ''Story'' in turn has one or more ''Customers'' and a set of ''Storytests''. A ''Story'' in turn may be assigned to a ''Storytest''. Here's an example ''Release'' that we could use as a part of a storytest: + +|''Release''| +|''Name''|First Quarter 2007| +|''Release Manager''|${releaseManager}| +|''Iterations''|${iterations}| +|''Stories''|${allStories}| + +Notice that: + * The property-value pairs of domain objects are laid out side-by-side + * Collections of values have a header row, followed below by zero or more rows for each of the elements + * This is similar to the way that a UI may be laid out +Let's look at our first simple example, ^NestedListsAndSets. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/properties.xml new file mode 100644 index 0000000000..afbd651c39 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/NestedTables/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118165630 + + + + + + + + 1232250990859 + 594096054029930425 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/EmptyList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/EmptyList/content.txt new file mode 100644 index 0000000000..7aa759450f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/EmptyList/content.txt @@ -0,0 +1,7 @@ +|!-fitlibrary.eg.Collections-!| + + * Create a list with 4 elements +|list is|| + +|''ordered list''| +|''item''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/EmptyList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/EmptyList/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/EmptyList/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/ThatFails/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/ThatFails/content.txt new file mode 100644 index 0000000000..3148191563 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/ThatFails/content.txt @@ -0,0 +1,15 @@ +|!-fitlibrary.eg.Collections-!| + + * Create a list with 4 elements +|list is|1,2,3,4| + + * Here's the list to be checked, but it fails +|''ordered list''| +|''item''| +|3| +|4| +|1| +|2| +----The following specifies the expected counts of passes, fails, etc for the page. This is used here to avoid manually checking, as here the storytests are written to fail. You'll most probably not use this technique, as you'd expect all your storytests to pass. +---- +|''expected test results''|2|''right''|4|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/ThatFails/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/ThatFails/properties.xml new file mode 100644 index 0000000000..d951eaa6bf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/ThatFails/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232250675359 + 9066553005929783591 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/content.txt new file mode 100644 index 0000000000..830cc97d4b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/content.txt @@ -0,0 +1,22 @@ +Let's consider a table for specifying an ordered list that's expected. + * The left cell of the table identifies the property (an ordered list) + * The right cell contains a table for the ordered list: + * The first row contains the ''labels'', the names of the fields of elements of the list. + * The rest of the rows contain the expected elements, in order. If there are no elements at all in the collection, there's no further rows + * This passes: +|!-fitlibrary.eg.Collections-!| + + * Create a list with 4 elements +|list is|1,2,3,4| + +|''ordered list''| +|''item''| +|1| +|2| +|3| +|4| + +And here's further details: + * When the list is empty ^EmptyList + * One ^ThatFails + * The code: CollectionsCode diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/properties.xml new file mode 100644 index 0000000000..5e50d2c354 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/OrderedList/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232250656171 + -1609202518159220174 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SequenceFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SequenceFixture/content.txt new file mode 100644 index 0000000000..b7452bb331 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SequenceFixture/content.txt @@ -0,0 +1,14 @@ +A SequenceFixture is exactly the same as a DoFixture, except that ''keywords'' aren't used. + +For example, the following SequenceFixture table (and its associated fixture) is a slight reformulation of the first example given in DoFixture: + +| !-fitbook.ChatStartSequence-! | + +|''connect user''|sarah| + +|''user creates room''|sarah|fit| +|''user enters room''|sarah|fit| + +|''users in room''|fit| +|''name''| +|sarah| diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SequenceFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SequenceFixture/properties.xml new file mode 100644 index 0000000000..e2e77fa4fb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SequenceFixture/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + null + + + 1232250590265 + 6772014366960252646 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/WritingFixtures/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/WritingFixtures/content.txt new file mode 100644 index 0000000000..0b230c1a73 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/WritingFixtures/content.txt @@ -0,0 +1,23 @@ +Here's the code for the example table: +|!-fitbook.DiscountGroupsSetUp-!| +|future value|max balance|min purchase|discount %| +|low|0.00|0.00|0| +|medium|0.00|500.00|5| +----{{{public class DiscountGroupsSetUp extends fitlibrary.SetUpFixture { + DiscountApplication app = new DiscountApplication(); + public void futureValueMaxBalanceMinPurchaseDiscountPercent( + String futureValue, double maxBalance, double minPurchase, + double discountPercent) { + app.addDiscountGroup(futureValue,maxBalance, + minPurchase,discountPercent); + } +} }}}---- +For each row of the table, the method ''futureValueMaxBalanceMinPurchaseDiscountPercent()'' is called with each of the values. +!3 In General + * The method name is derived from concatenating all of the ''given'' labels and converting into a valid identifier using [[''extended camel casing''][.FitLibraryUserGuide.ExtendedCamelCase]]. + * The method ''setUp()'' may be overridden in a subclass; this is called before the rows are processed. + * The method ''setUp()'' may also be overridden; this is called after all the rows have been processed. + * As with [[''!-CalculateFixture-!''][.FitLibraryUserGuide.CalculateFixture.WritingFixtures]] and [[''!-DoFixture-!''][.FitLibraryUserGuide.DoFixture.FixtureDetails]], a ''!-SystemUnderTest-!'' object may be associated with a ''!-SetUpFixture-!''. If the fixture itself doesn't have a required method, the one in the ''!-SystemUnderTest-!'' is called instead. This means that the fixture acts as an adapter only when necessary, to map actions in the table into methods in the ''!-SystemUnderTest-!''. + +|!-fitlibrary.DoFixture-!| +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/WritingFixtures/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/WritingFixtures/properties.xml new file mode 100644 index 0000000000..99a6f76441 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/WritingFixtures/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165705 + + + + + + + 1232251025578 + -8793307207110740062 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/content.txt new file mode 100644 index 0000000000..7a0b3f78a6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/content.txt @@ -0,0 +1,15 @@ +SetUpFixture tables allow data to be entered, usually for the initial setup phase of a test. + +For example: + +|!-fitbook.DiscountGroupsSetUp-!| +|future value|max balance|min purchase|discount %| +|low|0.00|0.00|0| +|medium|0.00|500.00|5| + +When this is tested, the table is only colored if something goes wrong. + +^WritingFixtures +----The following specifies the expected counts of passes, fails, etc for the page. This is used here to avoid manually checking, as here the storytests are written to fail. You'll probably not use this technique, as you'd expect all your storytests to pass. There are other techniques to use with ''!-FitLibrary-!'' to test for expected failures (eg, the ''not'' action of ''!-DoFixture-!''). +|!-fitlibrary.DoFixture-!| +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/properties.xml new file mode 100644 index 0000000000..89f8897418 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SetUpFixture/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165654 + + + + + + + 1232251014546 + 6652762981844433186 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SimpleArray/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SimpleArray/content.txt new file mode 100644 index 0000000000..baf6d2ead8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SimpleArray/content.txt @@ -0,0 +1,20 @@ +!**< defs +!define array (|1| +|2| +|3| +) +**! +A table for an array with simple values (such as numbers) doesn't have a label row. + * The first row of the table identifies, in some way, that the table contains an ordered list. + * The rest of the rows contain the expected elements, in order. If there are no elements at all in the array, there's no further rows + +!|fitlibrary.eg.Collections| + +|''ints are''|1,2,3| + +|''ints''| +|1| +|2| +|3| + +See CollectionsCode for the Java code for this storytest. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SimpleArray/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SimpleArray/properties.xml new file mode 100644 index 0000000000..9821413518 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SimpleArray/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232251471078 + 992779624014567042 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SubSet/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SubSet/content.txt new file mode 100644 index 0000000000..1eb1e89e9f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SubSet/content.txt @@ -0,0 +1,23 @@ +Sometimes in a ${storytest}, we only are interested in some of the elements of a collection. See the ${fitBook} for motivation and examples. + +To check for a subset of the actual elements in a collection, we have to do it in the ${actions} part. That's because we need to be explicit that we're only interested in some of the elements of the unordered collection or set. + +!|fitlibrary.eg.Collections| + +|list is|1,2,3| + * Some: +|''subset''| +|''item''| +|3| + * All: +|''subset''| +|''item''| +|3| +|1| +|2| + * None: +|''subset''| +|''item''| + +For programming details, see CollectionsCode. + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SubSet/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SubSet/properties.xml new file mode 100644 index 0000000000..7fbc2158a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SubSet/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232250766062 + 1648777083216106414 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SupportForGraphics/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SupportForGraphics/content.txt new file mode 100644 index 0000000000..8236a01bf7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SupportForGraphics/content.txt @@ -0,0 +1,10 @@ +!3 Support for "Graphics" +Core Fit handles textual values in the cells of a table. These values are converted automatically into primitive values, such as 12, and into objects, such as a ''Date''. + +The ''!-FitLibrary-!'' fixtures also support "graphical" values in table cells: + * TreeList uses HTML lists + * ImageNameGraphic uses HTML image names + * DotGraphics uses HTML images and associated Dot files + * TaggedStrings retains the tags from within a table cell (the tags are usually discarded) + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SupportForGraphics/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SupportForGraphics/properties.xml new file mode 100644 index 0000000000..8b49cbdcf1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/SupportForGraphics/properties.xml @@ -0,0 +1,14 @@ + + + + + 20090118165642 + + + + + + + 1232251002406 + -3493109433546704490 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TaggedStrings/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TaggedStrings/content.txt new file mode 100644 index 0000000000..320e8e3b51 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TaggedStrings/content.txt @@ -0,0 +1,29 @@ +TaggedStrings allow you retain tags (HTML or XML) in Fit table cells. + +For example, in the following tests, the tags are included in the comparison between the expected and actual values: + +!|fitlibrary.specify.DoWithTags| + +|check|tag text|!-bold-!|!-bold-!| + +|check|tag text|!-
one
-!|!-
one
-!| + +|check|tag text|!-
  • one
  • two
-!|!-
  • one
  • two
-!| + +These fail because the tags differ: + +|check|tag text|!-bold-!|bold| +|check|tag text|bold|!-bold-!| + +In order for the tags to be retained, the underlying type needs to be a ''!-TaggedString-!'', as shown in the following class: +----{{{public class DoWithTags { + public TaggedString tagText(TaggedString s) { + return s; + } +} +}}}---- +Because the argument to the method ''tagText()'' is a ''!-TaggedString-!'', the ''!-FitLibrary-!'' fixtures retain the tags in the string. The same applies to the return type of the method. +----The following specifies the expected counts of passes, fails, etc for the page. This is used here to avoid manually checking, as here the storytests are written to fail. You'll most probably not use this technique, as you'd expect all your storytests to pass. There are other approaches to testing for errors, etc. +|''expected test results''|3|''right''|2|''wrong''|0|''ignored''|0|''exceptions''| + + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TaggedStrings/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TaggedStrings/properties.xml new file mode 100644 index 0000000000..b491304ac9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TaggedStrings/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232250811968 + -4059374547231119224 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TextToValues/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TextToValues/content.txt new file mode 100644 index 0000000000..7540891b8a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TextToValues/content.txt @@ -0,0 +1,48 @@ +${fitLibrary} needs to convert from the text in a table cell to some value (object or primitive value). It does this even when it's just checking values. + * It includes ${parser}s for the standard primitive types, their class equivalents (eg Integer), and String. +${fitLibrary} determines the type of value required by reflectively looking at method and other signatures. + * For example, a ${workflow} action corresponds to a method. The return type and parameter types of the method are used to work out the type of the corresponding cells in the table, and suitable ${parser}s are used. + * Eg, consider the method: + * ''public boolean greater(int x, int y)'' + * Three ${parser}s are used, one for the return type and one for each of the parameter types. +A ${parser} carries out three functions: + * ''parseTyped()'': Converts the text from a table cell into a value + * ''show()'': Converts a value into text to be shown in a report + * ''matches()'': Compares two values to see if they're the same, such as when checking the actual elements of a list against those expected +!3 1. How a ${parser} is Selected by ${fitLibrary} +If there is no built-in ${parser} for a class ''T'', ${fitLibrary} tries the following in order until finding a ${parser}: + * If a ''parse delegate'' has been registered for the class T, that acts as a ${parser} for T. + * See below for details of the three types of delegates. + * If there is a ''!-PropertyEditor-!'' corresponding to the class T, that's used: + * the editor's methods ''setAsText()'' and ''getValue()'' are used together for ''parseTyped()''; + * the editor's methods ''setValue()'' and ''getAsText()'' are used together for ''show()''; and + * the ''equals()'' in class T is used for ''matches()''. + * If the class has a ''public static parse(String) method'', that's used: + * that method ''parse()'' in T is used for ''parseTyped()''; + * the method ''toString()'' in T is used for ''show()''; and + * the method ''equals()'' in T is used for ''matches()''. + * If the class has a constructor (it doesn't need to be public) that takes a String as an argument, that's used: + * that constructor is used for ''parseTyped()''; + * the method ''toString()'' in T is used for ''show()''; and + * the method ''equals()'' in T is used for ''matches()''. + * ... +!3 2. Choosing the Best Approach for You: +(2.1) It's a class T that you can change: + * The simplest approach is to add a ''public static parse(String)'' method to T. But that won't work if: + * that ''parse()'' method is already being used for something else; or + * The next simplest approach is to add to T a constructor that takes a String as argument. But that won't work if: + * that constructor is already being used for something else; or + * The above two approaches also won't work if: + * you want an object of T to be displayed in the report in a special way, rather than using its ''toString()'' method; or + * you want a specialised way of comparing two values of that type, so it's ''equals()'' method won't do; or + * you want to vary the way that such values are parsed from one storytest to the next + * Otherwise, you'll need to use one of the approaches below. +(2.2) It's a class T that you can '''not''' change: + * finder + * property editor + * register delegate + * ... + +One approach ${fitLibrary} uses to parsing the text in a cell is to use a ${finder}. + * This can be a good way to handle special values, whether for your own classes or those of others. + * For further details, see ${finder} \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TextToValues/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TextToValues/properties.xml new file mode 100644 index 0000000000..c4801375b2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TextToValues/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20081224210558 + true + true + true + true + true + true + 1230105958953 + 4299626027898552927 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/AnotherTreeExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/AnotherTreeExample/content.txt new file mode 100644 index 0000000000..9ff68954b0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/AnotherTreeExample/content.txt @@ -0,0 +1,14 @@ +|!-fitlibrary.specify.calculate.WithLists-!| + +|''calculate''| +|1|2||+| +|a|b||!-
  • a
  • b
-!| +|!-A
  • a
-!|!-B
  • b
-!||!-
  • A
    • a
  • B
    • b
-!| + +Here's the code: +----{{{ public class WithLists { + public ListTree plus12(ListTree t1, ListTree t2) { + return new ListTree("", new ListTree[]{ t1, t2 }); + } +} }}}---- + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/AnotherTreeExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/AnotherTreeExample/properties.xml new file mode 100644 index 0000000000..be60739944 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/AnotherTreeExample/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1157087109514 + -5782534195059341494 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/content.txt new file mode 100644 index 0000000000..70f2605078 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/content.txt @@ -0,0 +1,33 @@ +Table cells may contain HTML lists. Consider the following tests: + +!|fitlibrary.specify.DoTree| + +|check|tree|!-
  • a
  • BB
-!| + +|check|tree|!-Top
  • a
  • BB
-!| + +|show|tree| + +|show|tree|
  • A
  • B
| + +For such lists to be handled correctly, the corresponding types (method arguments and return types) have to be subtypes of the special !-FitLibrary-! type ''Tree''. + +The methods of ''!-DoTree-!'' are as follows: +----{{{public class DoTree { + public ListTree tree() { + ListTree tree = new ListTree(""); + tree.addChild(new ListTree("a")); + tree.addChild(new ListTree("BB")); + return tree; + } + public ListTree tree(String s) { + return ListTree.parse(s); + } +... +}}}---- +This works because class ''!-ListTree-!'' is a subtype of ''Tree''. The fixture treats the HTML list as a tree structure. Here's ^AnotherTreeExample. + +It's easy to define new subtypes of ''Tree''. See the code for details. +----The following specifies the expected counts of passes, fails, etc for the page. This is used here to avoid manually checking, as here the storytests are written to fail. You'll most probably not use this technique, as you'd expect all your storytests to pass. There are other approaches to testing for errors, etc. +|''expected test results''|1|''right''|1|''wrong''|0|''ignored''|0|''exceptions''| + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/properties.xml new file mode 100644 index 0000000000..4ee272c431 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/TreeList/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232250755609 + -6080859200521791273 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/UnorderedList/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/UnorderedList/content.txt new file mode 100644 index 0000000000..8e8b1e0f47 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/UnorderedList/content.txt @@ -0,0 +1,13 @@ + * This is the same as with an ordered list, except that the rows contain the elements in any order. + * We show lists can be checked in both the ${checks} and ${actions} +!|fitlibrary.eg.Collections| + +|list is|1,2,3| + +|''unordered list''| +|''item''| +|3| +|1| +|2| + +For programming details, see CollectionsCode. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/UnorderedList/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/UnorderedList/properties.xml new file mode 100644 index 0000000000..2fbfd96dc4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/UnorderedList/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232251041656 + 4650214774851214420 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/VariAble/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/VariAble/content.txt new file mode 100644 index 0000000000..8c87c360b0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/VariAble/content.txt @@ -0,0 +1,79 @@ +!**< t +!define account ( +|''name''|george| +|''balance''|12.00| +) +**! +Consider a system in which the id for an account is auto-generated when the account is created. We want to specify that the id is created and that it can be used to refer to the account later in the storytest. +!|fitlibrary.eg.AccountVariables| +---- +|''create account named''|george|''with id''|id1| + +|''add''|12.00|''to account''|id1| + +|'''check'''|''account''|id1|${account}| + +In the tables above, ''id1'' is a ''name'' for the id that's created. The code for this, in Java, follows. Here the ''Variable'' holds a value: + * It's assigned a value in ''createAccountNamedWithId()''. + * It's read in the methods ''addToAccount()'' and ''account()''. +----{{{public class AccountVariables extends DomainAdapterWithVariables { + private AccountsRepository accountsRepository = new AccountsRepository(); + + public Object getSystemUnderTest() { + return null; + } + public boolean createAccountNamedWithId(String accountName, Variable idVariable) { + idVariable.setValue(accountsRepository.create(accountName)); + return true; + } + public boolean addToAccount(float amount, Variable idVariable) { + account(idVariable).add(amount); + return true; + } + public Account account(Variable idVariable) { + return accountsRepository.getAccount(((Integer)idVariable.getValue()).intValue()); + } + + public static class AccountsRepository { + private static int NEXT_ID = 0; + public List accounts = new ArrayList(); + + public List getAccounts() { + return accounts; + } + public Account getAccount(int id) { + for (int i = 0; i < accounts.size(); i++) { + Account account = (Account)accounts.get(i); + if (account.getId() == id) + return account; + } + return null; + } + public Integer create(String accountName) { + NEXT_ID++; + accounts.add(new Account(NEXT_ID,accountName)); + return new Integer(NEXT_ID); + } + public void setAccounts(List accounts) { + this.accounts = accounts; + } + } + + public static class Account { + private int id; + private String name; + private float balance; + + public Account(int id, String name) { + this.id = id; + this.name = name; + } + public int getId() { + return id; + } + public void add(float balance) { + this.balance += balance; + } + } +} +}}} diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/VariAble/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/VariAble/properties.xml new file mode 100644 index 0000000000..7f681821e1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/VariAble/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118170337 + + + + + + + + 1232251417703 + -1442050595493100095 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/content.txt new file mode 100644 index 0000000000..475738457b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/content.txt @@ -0,0 +1,62 @@ +!3 Tables for business processes (workflow with ${domainTraverse}) +# +!4 This needs to be revised! +# +|^SetUpFixture |''To create collections (lists, sets, etc)''| + +An earlier version of ^DoFixture was ^SequenceFixture, which doesn't have inter-leaved keywords in actions. + +|^SequenceFixture|''For workflow storytests without keywords in actions''| + +!3 Tables for checking (and creating) collections (lists, sets, arrays, etc) +# +!4 This section has now been included in the [[advanced tutorial][.FitLibrary.AdvancedTutorials]] +Tables are often used to check that collections, such as lists, are as expected. Here's some more detail of checking (different sorts of collections: + +|^OrderedList|''A list, array, etc''| +|^UnorderedList|''A set''| +|^SubSet|''for part of an ^UnorderedList''| +|^SimpleArray|''for arrays''| +|^MapHandling|''for maps''| + +Nested tables show the relationships of ${domainObject}s, with a layout a little like a user interface. For more details, see ^NestedTables +!3 Tables for calculation rules and constraints: +Calculation and constraint rules focus on expressing specific business rules that will impact, indirectly, on workflow. Rather than having lots of workflow storytests to express such business rules, we isolate and express the business rules in a compact form. Extracting such business rules is a significant element of developing a domain model with storytests. + +|^CalculationRule|''Rules for calculations, such as the discount''| +|^ConstraintRule|''Rules for constraints, such as valid and invalid date ranges''| + +A minor variant of these two is a combination rule. + +|^CombinationRule|''Rules for possible combinations''| +!3 Specialised Tables +|^CommentTables|''Tables for comments''| +|^GridTables|''Tables for testing grids''| +|^ImageGrids|''Tables for testing grids containing images''| +| ^FileComparison|''Tables for comparing files and directories''| +|^DotGraphics|''Tables for testing inter-connected data in a visible form''| +|^TaggedStrings|''Tables for directly testing html text''| +|^TreeList|''Tables for testing nested html lists''| + +!3 Suite Fixture +# +!4 This needs to be revised! +# +|.FitLibrary.SuiteFixture|''A suite fixture ...''| +|.FitLibrary.SuiteFixture.DetailsAndRationale|''Rationale for suitte fixtures''| +|.FitLibrary.SpecifiCations.SuiteFixture|''See here for further details''| + +!3 Defined Actions and Dynamic Variables +|^DefinedActions|''A defined action defines a sequence of actions (parameterised) that can be reused in workflow storytests.''| + +!3 How to Change the Way that the Text in Table Cells is Converted to Values (for Programmers) +The text in a table cell is converted into a value (primitive value or object) before it is used by ${fitLibrary}. But sometimes code is needed to make this work as you want. For example, you may want: + * to handle dates in a certain format + * to enter (and show) an object of your own class as text + * an empty cell to mean a null String, rather than an empty one + * to refer to an entity by a "key" string +Here's how we can deal with these >TextToValues. +!3 Variables (for Programmers) +Consider a system in which the id for an account is auto-generated when the account is created. We want to specify that the id is created and that it can be used to refer to the account later in the storytest. + * ^VariAble + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/properties.xml new file mode 100644 index 0000000000..cfd3574ddb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FitLibraryByExample/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + 1232250578546 + 5040369178311485218 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FolderRunner/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FolderRunner/content.txt new file mode 100644 index 0000000000..011b29bdcc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FolderRunner/content.txt @@ -0,0 +1,54 @@ +FolderRunner: + + * Handles test suites, organised in directories (folders) + * Handles both HTML and XLS spreadsheet files + * Now works with the version of Java Fit included with ''!-FitLibrary-!''. + * Uses CSS for reports, and automatically includes the appropriate links in the html header for those + +Run FolderRunner as follows (replace the ";" by ":" if you're on Linux): +{{{ java -cp fitlibrary.jar;log4j-1.2.16.jar fitlibrary.runner.FolderRunner testDiry reportDiry +}}} * You will need to add to the classpath (''cp'') for any application code that you're testing. + * The log4j jar file is provided in the release in fitlibrary/fitnesse/lib + +If you want feedback on progress of FolderRunner, instead run ''!-FolderRunnerUI-!'' as follows: +{{{ java -cp fitlibrary.jar;log4j-1.2.16.jar fitlibrary.runner.FolderRunnerUI testDiry reportDiry +}}} * This shows the current counts of passed tests, etc as it runs the tests + * It also shows any program output (to ''out'' or ''err'') + * It allows you to quit partway through +# +!3 FolderRunner +# + * FolderRunner runs ''!-FitLibrary-!'' on every file in the ''testDiry'' and sub-directories and writes a report file into the corresponding place in the ''reportDiry'' (creating any sub-directories, as needed). + * However, it ignores files that start with "." or "CVS" and any ''files'' directories + * It also ignores files that contain the following text: +{{{[Not a TEST]}}} + * You can have relative references to images, etc, in your test files in a local ''files'' directory. Before running Fit on the files in a directory, FolderRunner copies any ''files'' directory in that directory into the corresponding place in the ''reportDiry'', so that they're available for access from the reports. + * It creates a file ''reportIndex.html'' in the ''reportDiry'' that gives the results of all the tests. It provides links into all of the reports, as well as to the directories holding the reports in a (sub-)suite. + * FolderRunner handles both HTML and XLS spreadsheet files. + * FolderRunner inserts CCS links, etc in the generated reports so that the colors show (and writes a suitable CSS file so it can be accessed). + * If you wish to change the CSS file used (eg, to alter the colors of the reports), run FolderRunner once and it will add several files into ''testDiry/files''. Edit the CSS file (''testDiry/files/css/fitnesse.css'') to suit. FolderRunner won't replace them. +!3 Suite Fixture +${suite} allows the same storytests to be run with different fixtures, etc. For example to run the same storytests (as supplied in the release) in two different ways, run: +{{{ java -cp fitlibraryRunner.jar fitlibrary.runner.FolderRunner -s suiteTests/SuiteFixtureExample.html suiteTests/tests suiteTests/reports +}}} and +{{{ java -cp fitlibraryRunner.jar fitlibrary.runner.FolderRunner -s suiteTests/AnotherSuiteFixtureExample.html suiteTests/tests suiteTests/otherReports +}}}# +!3 Spreadsheet files +# + * FolderRunner uses ''!-SpreadsheetRunner-!'' which in turn uses ''Poi'' to read XLS files. + * ''!-SpreadsheetRunner-!'' uses spreadsheet borders to work out where the tables are in the spreadsheet (just the first sheet). + * See the directory ''folderRunner/tests/trySetUpTearDown/nested'' in the distribution of ''!-FitLibrary-!'' for an example of the use of a spreadsheet file. + * Add the poi jar in the classpath when using such files. (This jar is provided in the release folder ''fitlibrary/fitnesse/lib''. Or download poi from http://jakarta.apache.org/poi) +# +!3 ''!-SetUp-!'' and ''!-TearDown-!'' +# +The following special files may be in the ''testDiry'' or any of its sub-directories, and are used as follows: + + * A ''!-SetUp-!'' file is effectively added to the start of each test in the directory (including sub-directories). The file may be ''!-SetUp.htm-!'', ''!-SetUp.html-!'' or ''!-SetUp.xls-!'' (in any mixture of uppercase and lower case). + * A ''!-TearDown-!'' file is effectively added to the endof each test in the directory (including sub-directories). The file may be ''!-TearDown.htm-!'', ''!-TearDown.html-!'' or ''!-TearDown.xls-!'' (in any mixture of uppercase and lower case). + +Before running a test, all ''!-SetUp-!'' files that appear in the current directory and all those above it (up to the level of the ''testDiry'') are (effectively) added to the start of the test. They are added with the top-most first. + +All ''!-TearDown-!'' files that appear in the current directory and all those above it (up to the level of the ''testDiry'') are (effectively) added to the end of the test. They are added with the top-most last. + +NB: this differs from the ''!-FitNesse-!'' approach, which only takes the closest ''!-SetUp-!'' or ''!-TearDown-!''. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FolderRunner/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FolderRunner/properties.xml new file mode 100644 index 0000000000..6eca12ec4b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FolderRunner/properties.xml @@ -0,0 +1,12 @@ + + + + + + + + + + 1232250522625 + 4534200285581384103 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FurtherInformation/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FurtherInformation/content.txt new file mode 100644 index 0000000000..496612cb26 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FurtherInformation/content.txt @@ -0,0 +1,21 @@ +!3 Future Developments of ${fitLibrary} + * Evolution of ${fitLibrary} continues. + * Here's some PlannedFuture +Some parts of ${fitLibrary} are experimental: + * ExperimentalExtensions +!3 Further Information + * Join the fitlibrary-user email group at https://sourceforge.net/projects/fitlibrary/ + * ${fitLibrary} is specified here: .FitLibrary.SpecifiCations + * This serves as a technical manual +!3 Acknowledgements +Special thanks to: + * Ward Cunningham for developing ''Fit'' in 2002 + * Brian Marick for his ideas on "business-facing" tests and for encouraging me to make ''!-DoFixture-!'' public in 2004 +Many thanks to: + * Those who have ported/implemented ${fitLibrary} to/in other languages: + * John Roth in ''Python'', Randy Coulman in ''Smalltalk'', and Mike Stockdale in ''C#''. + * Micah and Bob Martin for ''!-FitNesse-!'' + * Gojko Adzic (http://gojko.net) for all his work on fixtures, ${fitNesse} documentation, and his two books: + * ''Bridging the Communication Gap'', Neuri Limited, 2009. + * ''Test Driven .NET Development with !-FitNesse-!'', Neuri Limited, 2008. + * The many people who have used ${fitLibrary}, provided feedback and asked interesting questions. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FurtherInformation/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FurtherInformation/properties.xml new file mode 100644 index 0000000000..0ea5b33849 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/FurtherInformation/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20091009104415 + true + true + true + true + true + true + 1255038255500 + 3879682190647531836 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/ExtractCalculations/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/ExtractCalculations/content.txt new file mode 100644 index 0000000000..da0a7d464a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/ExtractCalculations/content.txt @@ -0,0 +1,5 @@ +You may be tempted to copy and paste a ${workflow} storytest to make minor variations on it, such as to show how the calculations that result differ or to show when constraints apply to actions or to input data. + +Instead, build calculation tables that focus on the underlying business rule related to the calculations or constraints. + +See the ${fitBook} for more on this process. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/ExtractCalculations/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/ExtractCalculations/properties.xml new file mode 100644 index 0000000000..83d41dc66a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/ExtractCalculations/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060914104142 + true + true + true + true + true + true + 1158226902480 + -9099399092466141756 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/IgnoreTables/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/IgnoreTables/content.txt new file mode 100644 index 0000000000..5daca62989 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/IgnoreTables/content.txt @@ -0,0 +1,27 @@ +!2 Tables in a workflow storytest (ie, ''!-DoFixture-!''-based) can be ignored in several ways: +---- +!3 The table has nothing to do with Fit, so it shouldn't treat it as a part of the storytest + * Add a first row to the table with ''comment''. + * The rest of the table is ignored, but it's not coloured as being ignored. Eg. +!|fitlibrary.DoFixture| +---- +|comment| +|This is ignored| +!3 The table is a part of the storytest but we want to hide it for now, while we get other things done. However, we want to be reminded that it needs to be dealt with later + * Add a first row to the table with ''ignored'' + * The rest of the table is ignored, and it's coloured as being ignored. Eg. +|ignored| +|This is ignored|and the first row is coloured as being ignored| +|And so is this| +----The following specifies the expected counts of passes, fails, etc for the page. This is used here to avoid manually checking, as here the storytests are written to fail. You'll most probably not use this technique, as you'd expect all your storytests to pass. There are other approaches to testing for errors, etc. +|''expected test results''|0|''right''|0|''wrong''|1|''ignored''|0|''exceptions''| +----!3 The rest of the storytest is ignored, but the following tables should be coloured as ignored. + * There's no capability for this at the moment. Would it be useful? +---- +!3 The rest of the storytest is to be ignored + * Insert a single table with ''abandon storytest'' + * Or call the method ''abandonStorytests()'' in the fixture concerned + * The rest of the tables are ignored (they're not coloured) and are not shown in the !-FitNesse-! report. Eg. +|abandon storytest| + +|This is ignored|and marked as such| diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/IgnoreTables/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/IgnoreTables/properties.xml new file mode 100644 index 0000000000..9a946df26a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/IgnoreTables/properties.xml @@ -0,0 +1,15 @@ + + + + + 20090118170024 + + + + + + + + 1232251224593 + 6597718994446132374 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/content.txt new file mode 100644 index 0000000000..8d5c1744f6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/content.txt @@ -0,0 +1,8 @@ +!2 How to, in storytests + * Edit nested tables: + * EditingNestedTablesInFitNesse + * Ignore some tables in a page/file: + * ^IgnoreTables + * Avoid lots of similar workflow storytests, which are boring, difficult to change, and rather verbose: + * ^ExtractCalculations + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/properties.xml new file mode 100644 index 0000000000..6e6756a07d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/HowTo/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232251213687 + 3319173399218076724 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/InnerPage/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/InnerPage/content.txt new file mode 100644 index 0000000000..5af74bc533 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/InnerPage/content.txt @@ -0,0 +1,2 @@ +|''name''|In Ner| +|''owes''|100.00| diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/InnerPage/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/InnerPage/properties.xml new file mode 100644 index 0000000000..0d4f17afb5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/InnerPage/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20060824153043 + true + true + true + true + true + true + 1156390243608 + -8811042003378124400 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/MethodNameMappings/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/MethodNameMappings/content.txt new file mode 100644 index 0000000000..15eb051705 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/MethodNameMappings/content.txt @@ -0,0 +1 @@ +This mechanism has been withdrawn. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/MethodNameMappings/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/MethodNameMappings/properties.xml new file mode 100644 index 0000000000..e6d49247cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/MethodNameMappings/properties.xml @@ -0,0 +1,14 @@ + + + + + 20070106143554 + + + + + + + 1168047354390 + 4089836525856134639 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/OtherLanguages/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/OtherLanguages/content.txt new file mode 100644 index 0000000000..86cf0355ea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/OtherLanguages/content.txt @@ -0,0 +1,8 @@ +!3 Support in Java + * The Java ''!-FitLibrary-!'' only works with the !-FitNesse-!-supported Java version of Fit + * It does '''not''' work with the core Fit version from http://fit.c2.com). +!3 Support in Python, C# and other programming languages + * John Roth has added ''!-FitLibrary-!'' to the Python version of Fit (for both core Fit and ''!-FitNesse-!''). This is available at www.python.org/pypi + * Mike Stockdale has released a C# port for much of ''!-FitLibrary-!'' at https://sourceforge.net/projects/fitlibrary/ + * Randy Coulman has ported it to Smalltalk + * Work is underway on ports for PHP (and possibly Ruby and C++). diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/OtherLanguages/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/OtherLanguages/properties.xml new file mode 100644 index 0000000000..31e6d49dbc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/OtherLanguages/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20081011231531 + true + true + true + true + true + true + 1223720131203 + -3821060640482347672 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/PlannedFuture/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/PlannedFuture/content.txt new file mode 100644 index 0000000000..00c77d1484 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/PlannedFuture/content.txt @@ -0,0 +1,12 @@ +Plans for extensions to ${fitLibrary} include: + * Permit xpath expressions for access into domain objects + * Generalise ${suite} + * Handle nested sets - this doesn't work correctly at present because matching is not deterministic + * Handle mixed-type (polymorphic) collections + * Handle polymorphic objects + * If you have ideas you'd like to see in ${fitLibrary}, contact me (Rick Mugridge) + * See http://www.rimuresearch.com for my email address + * However, I will only consider changes that are consistent with the rest of ${fitLibrary} and that add sufficient value + * I am unlikely to add: + * Strings/characters that have special meaning in tables. I am unhappy that I've introduced two (''class'', for distinguishing different types in a mixed-type collection, and the @{} notation). + * Capability that pushes away from the notion of storytests as specification by example and towards general programming. Some may argue that ${fitLibrary} already goes too far. I believe that we must take account of the people who will be writing/reading the storytests and choose the power of expression to suit. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/PlannedFuture/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/PlannedFuture/properties.xml new file mode 100644 index 0000000000..483f8d6966 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/PlannedFuture/properties.xml @@ -0,0 +1,14 @@ + + + true + true + 20091009105001 + true + true + true + true + true + true + 1255038601265 + -1836458880927489395 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/content.txt b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/content.txt new file mode 100644 index 0000000000..e8b4ab5d42 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/content.txt @@ -0,0 +1,30 @@ +!2 Introduction to ${fitLibrary} + * ${fitLibrary} is an open-source framework for developing and running ${storytest}s. It was first developed in 2004 as a library for ${fit}, and has evolved considerably since then. + * Many of the additions and changes of this latest release have been trialled over the last 6 months with companies that I've worked with. They have developed many hundreds of complex ${storytest}s. + * Many examples of the development of ${storytest}s using ${fit} and an earlier version of ${fitLibrary} are covered in: + * !3 ''Fit for Developing Software'', Rick Mugridge and Ward Cunningham, Prentice-Hall, 2005. + * Much of this book is still relevant to storytesting with the latest ${fitLibrary}. + +|!1 [[''!-FitLibrary by Example-!''][^FitLibraryByExample]]| + + * We show the use of ${fitLibrary} for ${storytest}s with lots of little examples + * If you want to get started with ${fitLibrary}, start with these examples. + * If you're familiar with ${fitLibrary}, you'll see in these examples that new capability has been added. +----!3 Running storytests in batch with FitLibraryRunner and ''^FolderRunner'' + * To use ${fitLibrary} in Java with ${fitNesse}, you need to include the following at the top level page of your project: +{{{ + !define TEST_RUNNER {fitlibrary.suite.FitLibraryServer} +}}} * ''!-FitLibrary-!'' requires jdk 1.6 + * Batch testing of ''!-FitNesse-!'' storytests (wiki format) is supported. See FitLibraryRunner + + * ''^FolderRunner'' runs Fit tests in batch, as an alternative to ''!-FitNesse-!'' (using HTML and XLS formats instead of wiki format). +!3 How to achieve various tasks with ${fitLibrary} +This is just a beginning... + * ^HowTo for storytest writers + * ^FaQ4Programmers +!3 Downloads + * Download ${fitLibrary} at https://sourceforge.net/projects/fitlibrary/ +!3 ''!-FitLibrary-!'' in other programming languages + * ^OtherLanguages +!3 ^FurtherInformation + * Here's some ^FurtherInformation about ${fitLibrary}. diff --git a/fitnesse/FitNesseRoot/FitLibrary/UserGuide/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/properties.xml new file mode 100644 index 0000000000..46b083ff42 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/UserGuide/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232247451890 + 4374470364451572134 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WasSuiteSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WasSuiteSetUp/content.txt new file mode 100644 index 0000000000..c5ec759796 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WasSuiteSetUp/content.txt @@ -0,0 +1,4 @@ +!***> configuration +|auto wrap pojo with !-DoFixture-!| + +***! \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/WasSuiteSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WasSuiteSetUp/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WasSuiteSetUp/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008Fixturing/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008Fixturing/content.txt new file mode 100644 index 0000000000..8d9e3a72eb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008Fixturing/content.txt @@ -0,0 +1,109 @@ +!2 20080702 + * Added support for Do macros. + * Enabled the use of fixture class names while in flow + * Included ''!-FitNesse-!'' plugin support for suite fixtures and macros. This means that a ''!-SuiteSetUp-!'' page is run, if it exists up the page hierarchy, when a single storytest is run. +!2 20070225 + * Added support for Batch running of ''!-FitNesse-!'' storytests with ''!-TestRunner-!''. See BatchWithFitNesse. + * Fixed a substitution bug with storytest templates + * Added a check for an element of a collection being null, and now give a useful error message +!2 20070217 +Added support for: + * Variables. See .FitLibrary.UserGuide.FitLibraryByExample.VariAble + * Templates. +For ''!-FolderRunner-!'', included the pre-jdk1.4 version of the Fit classes from ''!-FitNesse-!'' +!2 20070128 + * Added support for parsing of any type. See .FitLibrary.SpecifiCations.ParserSpecifications.EntityParser.FinderAsSpecialisedParser +!2 20070119 + * Release for both ''!-FitNesse-!'' and ''!-FitLibraryRunner-!'' supporting ''!-FolderRunner-!'' + * Added support for direct read access to class fields (ie, instance variables), including non-public ones. If a getter is not available for a property, a check is made for a field. + * This brings ''!-FitLibrary-!'' closer to the way that Hibernate handles object access. It means that a getter doesn't need to be provided only for testing with storytests, and the field can remain private (or whatever). + * Improved error reporting with ''!-FolderRunner-!'' +!2 20070110 + * Release of ''!-FitLibraryRunner-!'', supporting ''!-FolderRunner-!'' + * Updated the Fit book examples to be consistent with the latest package structure + * Release of ''!-FitLibrary-!'' for ''!-FitNesse-!'' + * When using ''!-FitLibraryServer-!'' with ''!-FitNesse-!'': + * Normally, tables in some storytests that pass are not reported by ''!-FitNesse-!''. + * The first two storytests are reported in full, so that you can see the full report for a single storytest by running it. + * However, when running ${suite}, all storytests are reported in full. + * This is to reduce the socket traffic between ''!-FitNesse-!'' and ''!-FitLibraryServer-!'' so as to reduce the likelihood of ''!-FitNesse-!'' hanging partway through running a Suite. +!2 20070104 + * A ${fixturingMethod} is no longer called on a ${sut}. + * ${suiteSetUpMethod} and ${suiteSetUpMethod} methods are called on a ${suite}, at the beginning and end of processing of the whole suite. +!2 20061230 + * ${fitLibrary} now enables debugging when running storytests. See .FitLibrary.UserGuide.FaQ4Programmers.DebugCapability + * ''!-CompareFileFixture-!'' now handles absolute file names as well as relative file names. See .FitLibrary.UserGuide.FitLibraryByExample.SpecialisedTables.FileComparison + * An empty tables cell may be interpreted as follows, depending on what value the cell is expected to hold: + * An empty list, set, array, map + * A null value for an object, including Integer, etc + * ${fitLibrary} accesses private getter/setters for properties. This allows for setter injection without generally exposing properties. + * ${fitLibrary} accesses private nullary constructors. This allows for object creation without generally exposing the constructor. + * use of HR to separate phases of ${domainFixture} + * The method that is called for a calculation rules may return an object that's a subtype of the declared return type of the method. The actual type of the result is used to check it against the expected value + * Fixed problem with a ''startUp()'' method being called more than once for suite fixtures, etc. + * Lots of storytests have been added to check that exceptions are caught correctly and nulls are handled correctly + * '''Experimental feature''': If it exists, the method ''startCreatingObject()'' of a ${domainAdapter} is called when ${domainFixture} (and other fixtures) automatically create an object; the object is passed as an argument. This allows for specialised setup of the object before it has property values automatically injected into it. The corresponding method ''endCreatingObject()'' is called at the end of automatic injection. + * '''Experimental feature''': A ${parseDelegate} may be specified for any type, and so will override any provided ${parser} for that type for the duration of the storytest concerned. + * '''Experimental feature''': A revised mechanism for supporting polymorhism is included. I will later add support for tailoring the way that the type is specified in the table. The documentation is still to be completed. + * '''Only relevant to those who write their own fixtures:''' The interpretation cycle passes extra type information; this is used in ''!-FitLibrary2-!'' to track the generic types of objects (which is missing at runtime, due to ''erasure'' in Java). The way that Parsers are selected has been changed considerably. Some class names have been changed, and the package structure has changed in minor ways. ''!-FitLibraryServer-!'' has changed considerably. +!2 20060906delta +This release contains many changes. + * It is a ''delta'' release because of the large number of changes and because some recent additions are not well documented + * In this release, if the first class name in the first table of a ${storytest} is not a Fixture (or a ${traverse}), it is automatically wrapped with a ${domainFixture}, a new, extended ''!-DoFixture-!'' +!3 Change from Fixture to Traverse + * ${fitLibrary} is now organised around ${traverse}s instead of Fixtures. + * For the most part, for each ''X''Fixture there is now a corresponding ''X''Traverse. + * However, in some cases, there are name changes. ''!-SetUpFixture-!'' maps to ${collectionSetUpTraverse}. ''!-DoFixture-!'' maps to ${workflowTraverse}. + * Some new ${traverse}s don't have a corresponding fixture (eg, ''!-ArrayTraverse-!''). + * However, as we cover below, there's no need to know about the particular classes + * This change, and others in the implementation of ${fitLibrary}, were made to enable larger-scale refactorings and the continuing evolution of ${fitLibrary}. + * The previous dependencies of ${fitLibrary} on the finer details of the ${fit} implementation were making this difficult. + * ${fitLibrary} continues to inter-operate with ${fit} and to support existing Fixtures. +!3 Handling of maps and arrays + * See ${mapTraverse} + * See ${arrayTraverse} +!3 Simplified and generalised code for setup tables + * ''!-SetUpFixture-!'' continues to be supported as it was in previous releases + * This required that a subclass have a ${objectFactoryMethod} that creates an object for each row of the table and adds it to a collection + * The replacement is ${collectionSetUpTraverse}: + * See .FitLibrary.SpecifiCations.CollectionSpecifications.CollectionSetUpTraverse + * With this, it's not necessary to subclass + * Instead, call ''!-FitLibrarySelector.selectCollectionSetUp()-!'' with a ''List'' or ''Set''. + * The ${objectFactoryMethod} creates an object for each row and returns it. That object is automatically added to the collection + * To set up a ''Map'', use the old technique.For further details, see .FitLibrary.SpecifiCations.CollectionSpecifications.CollectionSetUpTraverse +!3 Domain Adapters + * It is no longer necessary to subclass or explicitly use fixtures/traverses. See the code in FitLibraryByExample for examples. +!3 Specifying how a table is to be interpreted +Most of the time, there's no need to specifically mention the code that will interpret a table: + * If the method for a ${workflow} action returns a List, Set, array, Map, Object, etc, it will be ${autoWrapped} with an appropriate fixture/traverse + * You may want to use a specific fixture/traverse in your code. For example, you may prefer to have a ''!-SetTraverse-!'' manage a ''Map'' instead of ''!-MapTraverse-!'', the default. Rather than referring to the specific fixture or traverse, call the appropriate factory method in ${selector}. +!3 Change to fixture class hierarchy + * ''!-CalculateFixture-!'', ''!-ConstraintFixture-!'', and ''!-CombinationFixture-!'' no longer subclass ''!-DoFixture-!'' +!3 Fixtures and ${traverse}s: Implementation Detail + * This is only relevant to you if you have written fixtures that depend on the finer implementation details of ${fitLibrary} + * The implementation of ${fitLibrary} has been drastically changed + * A Traverse carries out a similar function to a Fixture: interpreting a table in some way. However, the implementation of a Traverse is somewhat different from a Fixture. A Traverse is not a subclass of Fixture. + * The ''!-FitLibrary-!'' fixtures are now implemented in terms of ${traverse}s + * ''!-TypeAdapter-!'' has been replaced by ${parser}, which generalises the parsing and matching of the contents of table cells, including nested tables. + * ''Parse'' has been replaced by ''Tables'', ''Table'', ''Row'', ''Cell'' for better encapsulation and clearer code + * ''Counts'' has been replaced by ''!-TestResults-!'' for better encapsulation. Unlike with ''Counts'', ''!-TestResults-!'' are passed through as arguments in internal method calls in ${traverse}, etc + * Special methods in ''!-DoFixture-!'' (and ${workflowTraverse} now take two arguments: (''Row'',''!-TestResults-!'') instead of one: (''Parse'') + * As stated above, these change in the implementation of ${fitLibrary} were made to enable larger-scale refactorings and the continuing evolution of ${fitLibrary}. The previous dependencies of ${fitLibrary} on the finer details of the ${fit} implementation were making this difficult. +---- +!3 20060610 + * The error messages for unfound methods are more explicit about where the methods are expected to be + * It is no longer necessary to subclass the supplied ''!-FitLibrary-!'' fixtures. See DomainAdapter. + * Method names derived from table headers can be mapped programmatically, both in a fixture subclass and in a ''DomainAdapter''. See MethodNameMappings. +!2 20060219 + * Distributed with the ''!-FitNesse-!'' release Of August 2006 + * Suite fixtures added. See .FitLibrary.SuiteFixture and .FitLibrary.SpecifiCations.SuiteFixture for further details +!2 20060116 +fitlibrary20060116.jar and fitlibraryRunner20060116.jar + * ''!-DoFixture.SetUpTearDown-!'' extended + * setUp() and tearDown() added to ''!-CalculateFixture-!'', ''!-ConstraintFixture-!'' and ''!-CombinationFixture-!'' + * This user guide reorganised, splitting out experimental parts +!2 20060111 +fitlibrary20060111.jar + * ''!-DoFixture-!'' methods ''setUp()'' and ''tearDown()'' + * ''!-FolderRunner-!'' now allows for BODY tags with extra information in them, as generated by MS-Word (it adds extra information to a report for CSS to show colored tags) + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008Fixturing/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008Fixturing/properties.xml new file mode 100644 index 0000000000..a4bddfda63 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008Fixturing/properties.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + 1232250564984 + -2844487394824219778 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008StorytestWriters/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008StorytestWriters/content.txt new file mode 100644 index 0000000000..9de196b61c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008StorytestWriters/content.txt @@ -0,0 +1,20 @@ +!2 20081020 + * !-SelectFixture-! allows for the use in flow of several !-DoFixtures-! to be interleaved + * Can get into flow part-way through a storytest (but need to use !-FitLibraryServer-!) +!2 20080702 + * Added support for defined actions. See .FitLibrary.SpecifiCations.DefinedActions + * Enabled the use of fixture class names while in flow + * Included ''!-FitNesse-!'' plugin support for suite fixtures and macros. This means that a ''!-SuiteSetUp-!'' page is run, if it exists up the page hierarchy, when a single storytest is run. +!2 20060930 + * When running a suite with ${fitLibrary}, the only report tables shown in full are on the first page and those that don't pass + * To see the full report for a ${storytest}, run it as a single Test + * '''Perhaps''' I should provide another fitLibraryServer that doesn't have this behaviour +!2 20060906delta +!3 The three phases of ${workflow} + * This version enables the three phases of ${workflow} to be made more explicit. + * With this approach, the structure of tables for setup and checking have changed + * Tables for setup and checking are based on the notion of property-value pairs +!3 Nested Tables + * The biggest change is the addition of nested tables. + * See the examples in .FitLibrary.UserGuide.FitLibraryByExample. + * These allow ${storytest}s to look more like user interfaces in the way that they're laid out diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008StorytestWriters/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008StorytestWriters/properties.xml new file mode 100644 index 0000000000..255b66d7f0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2006To2008StorytestWriters/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1255038310562 + 2713353351075370245 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2008November/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2008November/content.txt new file mode 100644 index 0000000000..a4b75a8913 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2008November/content.txt @@ -0,0 +1,62 @@ +There are a lot of changes to ''!-FitLibrary-!'' in this version. +!3 1. ''!-FitLibraryGeneric-!'' +# +''!-FitLibrary-!'' supports jdk1.5 generics and enums through a separate jar (''fitLibraryGeneric.jar'') that's supplied with this release. If you're running jdk1.5 or later, that jar will be used automatically. + +''!-FitLibrary-!'' itself still only depends on jdk1.4, but runs with Java versions up to jdk1.6. + +''!-FitLibraryGeneric-!'' supports (see .FitLibrary.SpecifiCations.FitLibraryGeneric for details): + * Generic lists, sets, maps and other collections. This means that fixture code is no longer needed to create collections, as ''!-FitLibrary-!'' can determine the element type through reflection. + * Generic classes defined in an application. ''!-FitLibrary-!'' maintains full generic type information at runtime (reversing Java's ''type erasure''). + * Enums. Enum constants can be used directly in storytest. ''!-FitLibrary-!'' manages them directly. + +The file ''fitlibraryGeneric.jar'' needs to be on the classpath and the ''!-FitLibraryServer-!'' needs to be used (see 3. below). +# +!3 2. Support for legacy fixtures in ''!-DoFixture-!'' tables +Fit fixtures are supported again by name with ''!-DoFixture-!''. Even if a storytest is in flow, a table can name a Fit (or any other) fixture class and it will be run. +# +!3 3. Getting into Flow +It is no longer necessary for the first table of a storytest to be a ''!-DoFixture-!'' for a storytest to go into flow. Now, the first ''!-DoFixture-!'' table in a storytest will take over flow. +This depends on using ''!-FitLibraryServer-!'' instead of ''!-FitServer-!''. To do so, place this way up in the page hierarchy: +{{{ +!define TEST_RUNNER {fitlibrary.suite.FitLibraryServer} +}}}See .FitLibrary.SpecifiCations.GoingIntoFlow for further details. +# +!3 4. New (Postfix) Special Actions in ''!-DoFixture-!'' +Instead of writing: + +|'''check'''|''some action''|a|''with arg''|b|44| + +you can now write: + +|''some action''|a|''with arg''|b|'''is'''|44| + +A similar special action is prepared to wait awhile before the actual value is the same as the expected value: + +|''some action''|a|''with arg''|b|'''becomes'''|4.*| + +A similar special action does pattern matching: + +|''some action''|a|''with arg''|b|'''matches'''|4.*| + +See .FitLibrary.UserGuide.FitLibraryByExample.DoFixture.DoFixtureSummary for further details. +# +!3 5. ''!-SelectFixture-!'' +See example in .FitLibrary.UserGuide.FitLibraryByExample.SelectFixture + +See .FitLibrary.SpecifiCations.MultipleFlowObjects for the specification +# +!3 6. Defined Actions +It can be convenient to define the actions in a high-level domain language in terms of actions in a lower-level language, such as actions that drive web tests. Rather than writing fixture code to translate the high-level actions, ''defined actions'' can be used instead. + +See example in .FitLibrary.UserGuide.FitLibraryByExample.DefinedActions + +See .FitLibrary.SpecifiCations.DefinedActions +# +!3 7. Dynamic Variables +These are not based on the Fit Fixture symbols, as I needed them to be thread-safe and separated across storytests to allow for several storytests to be run in parallel. +# +!3 8. Bug Fixes +Two bugs have been fixed: + * A ''!-DoFixture-!'' subclass may define ''setUp()'' and ''tearDown()'' methods, which are called just before and just after processing. Sometimes the ''tearDown()'' method was called at the wrong time. + * When a ''!-DoFixture-!'' was used in a storytest that was run with the standard ''!-FitServer-!'', it processed the first row of the table again and complained about a strange method. This now works with ''!-FitServer-!'', as well as with ''!-FitLibraryServer-!''. diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2008November/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2008November/properties.xml new file mode 100644 index 0000000000..60ff64a7e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2008November/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1228980088468 + -439334756707410693 + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009July/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009July/content.txt new file mode 100644 index 0000000000..430fac3da5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009July/content.txt @@ -0,0 +1,62 @@ +!2 1. Logging into the report + * A storytest table (or a fixture) may log text that is added in a folding area after the table concerned. See .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestShowAfter +# + +!2 1. ''Dynamic Variables'' in Fit tables + * If a Fit table is used within a flow storytest (ie, started with ''!-DoFixture-!''), any ''dynamic variables'' in that table are substituted before Fit is called. This allows ''dynamic variables'' that have been set within ''!-FitLibrary-!'' to be used in Fit tables. See .FitLibrary.SpecifiCations.AlienEvaluator.DynamicVariablesSubstitutedForFit + * Changes to the dynamic variables (and timeout values) in one ''!-DoFixture-!'' will be seen in other ''!-DoFixtures-!'' that are being managed by a ''!-SelectFixture-!''. + * Dynamic variables can be updated from a unicode-based property file. +!2 2. New Special Actions + * ''is not'' (see .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestIsNot) + * ''does not match'' (see .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestDoesNotMatch) +!2 3. Logging + * Logging capability has been added. See ... +----!1 January 2009 Version +!2 1. Changes to ''Defined Actions'' + * There is now a much more convenient way of specifying ''defined actions'' that are to be used in a suite. + * Any ''show''s in a ''defined action'' body are now displayed at the outer-most point of call of the ''defined action''. + * An object-oriented form of ''defined actions'' is provided + * It's no longer necessary to make explicit use of '''oo''' special actions + * A wiki class can be used in an '''oo'' special action as well as a wiki object +See .FitLibrary.UserGuide.FitLibraryByExample.DefinedActions +!2 2. Changes to Dynamic Variables + * Dynamic properties can now hold arbitrary objects as values, not just Strings + * A dynamic variable can be set to the value of an action. Eg: +|'''set'''|id|''some action of''|person| + * Dynamic properties are still rather experimental and very likely subject to further (non-backwards compatible) change. In particular, their "object nature" will be explored much further (in a cross-over with ''defined actions''). +See .FitLibrary.UserGuide.FitLibraryByExample.DynamicVariables +!2 3. ''New Instance'' Plugin Support + * Where a value of an interface or abstract class is needed, it's possible to specify the details of the concrete class to be constructed. But this is specific to a particular interface or class. It would be handy to define a general object creation mechanism. For example, this is needed for creating objects corresponding to xml with xmlBeans. + * It's now possible to define a "plugin" method in a fixture or domain adapter, a ''newInstancePlugin()''. This takes a class as argument and is expect to return a new instance of that class (or to return null if it doesn't handle the class provided). +See .FitLibrary.SpecifiCations.PlugInMethods.ObjectCreationPlugin.SpecifyCall and the corresponding class, ''!-HasNewInstancePlugin-!''. +!2 4. Super Parse Delegation +''!-FitLibrary-!'' has a general ''parse delegate'' mechanism, which specifies a class or object that's used to parse an object of a particular type. However: + * It is only applied to a class that is exactly the specified type + * It does not provide a mechanism to handle object comparison or showing the value of an object. +''!-FitLibrary-!'' fixtures (and traverses) now have a method to register a ''parse delegate'' that applies to a type and any subtype of that type. That method is ''registerSuperParseDelegate()''. + * See .FitLibrary.SpecifiCations.ParserSpecifications.ValueObjectParser.TextInCell.DelegateParseString.SpecifySuperParseDelegate for an example of the use of this, and the corresponding class ''!-ParseMyFixedPointAsStringWithSuperDelegate-!''. +The delegate has the following methods (with only the first one being mandatory): + * ''parse()'' to convert a String to an object of the given type. This could be used, for example, when you want to parse an object of some class that you're unable to change, such as a ''Date''. + * ''matches()'' to check whether two objects of the given type are equal. This could be used, for example, if you don't want to rely on the normal ''equals()'' method of the object concerned, such as to ignore some properties. + * ''show()'' to display an object of the given type, such as in a ''show'' special action or in an error message. This could be used, for example, to display a terse or otherwise specialised form of an object when that's sufficient. +Super parse delegates are only applied if there is no ordinary parse delegate that applies. + +Super parse delegates are applied in pseudo-random order. If two or more super parse delegates my apply to a particular type, either one may be chosen, as determined at runtime. + * If this proves to be a problem, let me know and I will change the system in future to check for ambiguity so as to avoid the random choice. This would have a performance implication if there were lots of them. +See .FitLibrary.SpecifiCations.ParserSpecifications.ValueObjectParser.TextInCell.SpecifySuperParseDelegate +!2 5. ''!-PropertyEditors-!'' used for parsing +If a ''!-PropertyEditor-!'' exists for a given class, that's used by ''!-FitLibrary-!'' to + * parse text in table cells to create an object of that class (using the ''!-PropertyEditor-!'' method ''setAsText()'') + * show an object of that class in a report (using the ''!-PropertyEditor-!'' method ''getAsText()''). +For a class ''!-a.b.MyClass-!'', it will look for a class ''!-a.b.MyClassEditor-!'' that ''implements !-PropertyEditor-!'' to use for this, as is usual with Java ''!-PropertyEditors-!''. + +Such ''!-PropertyEditors-!'' are used for handling primitive and built-in types like, '''char''' and '''Boolean'''. + +See .FitLibrary.SpecifiCations.ParserSpecifications.ValueObjectParser.TextInCell.HasPropertyEditor +!2 6. Show + * The ''show'' special action now colours the added cell blue + * A method called from a ''!-DoFixture-!'' action can throw a ''!-FitLibraryShowException-!'', which contains some text (can be html). That text is inserted in an extra cell that's added to the row. This allows for extra information to be provided when things go wrong (or for debugging). See .FitLibrary.SpecifiCations.DoWorkflow.ShowExceptionHandling +!2 7. Recording with Dynamic Variables +Where a storytest makes use of ''dynamic variables'', it can be used to record, in a limited way, variations of data. + +See .FitLibrary.SpecifiCations.DynamicVariables.RecordPropertyFile \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009July/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009July/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009July/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009October/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009October/content.txt new file mode 100644 index 0000000000..c0594bff7e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009October/content.txt @@ -0,0 +1,59 @@ +''!-FitLibrary-!'' now depends on Java 6. +# +!3 ''!-DoFixture-!'' +# + * Added infix special actions '''contains''', '''eventually contains''', '''does not contain''', '''optionally'''. See .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestContains and .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestNotContains and .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestOptionally, .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestEventuallyContains + + * Added relationals, <, <=, >, >=, =. See .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestRelationals + + * Added a ''stop watch'' and ''sleep for'': See .FitLibrary.SpecifiCations.DoWorkflow.TestStopWatch + + * When longer strings don't match with '''is''', etc, a diff is shown. See .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestIs, .FitLibrary.SpecifiCations.DoWorkflow.SpecialActions.TestIsDiffWithBlanks. + + * A new action uses pattern matching to extract pieces of text out of a string. See .FitLibrary.SpecifiCations.DoWorkflow.TestHarvestFromText + + * Fixed auto-wrapping so that it doesn't auto-wrap Boolean, Number, Character + + * Added some support for plain text for single-table actions. This is still experimental, somewhat incomplete, and may change. This is not supported within defined actions. See .FitLibrary.SpecifiCations.PlainTextInsteadOfTables + + * To produce a cross reference of all calls to actions and defined actions, see .FitLibrary.CrossReference. This is not precise, as it cannot easily tell which are data rows in tables. +# +!3 Defined Actions +# + * Sped up loading defined actions by reading them directly from the file system. This does mean that !-FitNesse-! features such as !-FitNesse-! variables and includes are not available. For backwards compatibility, a variation is available that uses the slow way.... Now defined action name lookup is case sensitive, while previously it was not. + + * Changed the way that defined action calls are shown in the report. + + * Partially implemented a multi-defined action. This may change. More details later... See .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters +# +!3 ''!-SuiteFixture-!'' + * Fixed a problem with ''!-SuiteFixture-!'' so that it now passes a copy of its dynamic variables to the fixture in each storytest. + + * Allow for ''set stop on error'' to be set at the SuiteFixture level. +# +!3 ''!-SelectFixture-!'' + * Can now add to the SUT set a fixture that is returned from an action. See .FitLibrary.SpecifiCations.MultipleFlowObjects.AddingFixtureFromAnAction + + * Note that the behaviour of ''!-SelectFixture-!'' is soon going to be built into the fundamental flow mechanism. +# +!3 New fixtures +# + * Added specialised Map fixtures. See .FitLibrary.SpecifiCations.FitLibraryGeneric.GenericMaps.GenericSubsetMap and .FitLibrary.SpecifiCations.FitLibraryGeneric.GenericMaps.ListOfMaps + + * Randomly generating dynamic variables: + +|''select''|colour|''randomly''| +|| +|re@{D}| +|yellow| +|$white| + +This binds the dynamic variable ''colour'' to one of four possibilities, selected randomly. See .FitLibrary.SpecifiCations.DynamicVariables.RandomSelection +# +!3 Implementation Changes +# + * Some of the built-in mechanism of ''!-FitLibrary-!'' are now pluggable. Eg, you can alter the way that methods are looked up or the way that stack dumps for exceptions are shown in the report. See class ''!-fitlibrary.global.PlugBoard-!'', which requires that alternative objects are thread safe. + + * I've also started to get ready to make more parts pluggable: See ''!-fitlibrary.global.TemporaryPlugBoardForRuntime-!'' for the first step. + + * In a later release, I am planning to integrate a ''!-ColumnFixture-!'' look-alike into ''!-FitLibrary-!'' and then remove all dependency on ''Fit'' code. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009October/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009October/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2009October/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August12/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August12/content.txt new file mode 100644 index 0000000000..e478e9d882 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August12/content.txt @@ -0,0 +1,3 @@ +|!2 ''Details of changes in this release''|12 August 2010| + + * Fixed a bug with passing XML strings as parameters to ''defined actions'' diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August12/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August12/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August12/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August5/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August5/content.txt new file mode 100644 index 0000000000..74fe7eaf83 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August5/content.txt @@ -0,0 +1,4 @@ + * Changed ''!-FolderRunner-!'' so it is now included as a part of the normal ''!-FitLibrary-!'' release, rather than needing a specialised one. + * Included some ''!-FolderRunner-!'' tests that are also checked through ''!-FitNesse-!''. + * Fixed an obscure bug in ''defined action'' parameters + * Added some advanced tutorials: .FitLibrary.AdvancedTutorials diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August5/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August5/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010August5/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010June/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010June/content.txt new file mode 100644 index 0000000000..aa07263f59 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010June/content.txt @@ -0,0 +1,30 @@ +!2 Defined actions Parameters +# +''Defined action'' parameters are now used in the body of the ''defined action'' in the same way as ''dynamic variables''. + +Eg, the parameter ''x'' is now used in the body as ''@{x}''. This makes ''defined actions'' consistent with ''multi defined actions''. + +Eg, See .FitLibrary.SpecifiCations.DefinedActions.DefinedElsewhere + +For class-based (OO) ''defined actions'', ''this'' is now used as ''@{this}''. Eg, see .FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.SingleClass + +If you have existing ''defined actions'', they will continue to run if the following action is called before any defined actions are loaded: + +|''auto translate defined action parameters''| + +This action can be included in ''!-SuiteSetUp-!'', for example. + +It's possible to have a mix of defined actions, some using this new style and some using the old style: + + * The auto-translation first checks whether any parameter ''x'' is already used in the body as ''@{x}''. + * If so, it doesn't carry out the auto-translation. + +See .FitLibrary.SpecifiCations.DefinedActions.CallPassesWithOldStyle + +For documentation on ''defined actions'', see .FitLibrary.UserGuide.FitLibraryByExample.DefinedActions +# +!2 Nested tables +# + * Dynamic variables can now hold nested tables. Eg, see .FitLibrary.SpecifiCations.DynamicVariables.NestedTablesArePermitedAsTheValueOfDynamicVariables + + * Nested tables can be passed as arguments to ''defined actions'' and ''multi defined actions''. Eg, see .FitLibrary.SpecifiCations.DefinedActions.CallWithNestedTablePasses diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010June/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010June/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010June/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/ImplementationChanges/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/ImplementationChanges/content.txt new file mode 100644 index 0000000000..484ae15084 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/ImplementationChanges/content.txt @@ -0,0 +1,27 @@ +Relevance: + * It's not necessary to be aware of the following unless you're doing advanced extensions that rely on the implementation of ''!-FitLibrary-!''. + +There are many changes to the underlying implementation of ''!-FitLibrary-!'': + + * Tables, Table, Row and Cell are now Java interfaces, rather than classes. + * The functionality of ''!-DoFixture-!'', ''!-SelectFixture-!'', ''!-DomainFixture-!'' and some of ''!-SuiteFixture-!'' is now handled by ''!-DoFlow-!''. + * ''!-TestResults-!'' is now a Java interface, with ''!-TestResultsOnCount-!'' the corresponding class. + * Some classes have shifted to new packages +# +!3 Table, Row, Cell +# + * Tables, Table, Row and Cell are now Java interfaces, rather than classes. + * There are two implementations, one based on ''Parse'' (eg, ''!-TableOnParse-!''), and the other based on a completely different structure. + * Use the static methods in ''!-TableFactory-!'' to creates a Row, Cell, etc. +# +!3 ''!-DoFlow-!'' +# + * The functionality of ''!-DoFixture-!'', ''!-SelectFixture-!'', ''!-DomainFixture-!'' and some of ''!-SuiteFixture-!'' is now handled by a new '''internal''' object, of class ''!-DoFlow-!''. + * It is no longer necessary to use a ''!-SelectFixture-!'' explicitly. More than one object can be current at once. + * ''!-DoFlow-!'' now controls the flow style execution of actions. + * It manages calls to ''!-setUp()-!'' and ''!-tearDown()-!'' at the correct time. + * It manages calls to ''!-suiteSetUp()-!'' and ''!-suiteTearDown()-!'' at the correct time. + * It makes sure that the appropriate information is shared between tests when there is a suite fixture. + * It makes use of a Scope Stack to determine the order of lookup of methods corresponding to classes. + * The Scope Stack has a Global method object for lookup of standard methods. + * Other global methods can be introduced at runtime. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/ImplementationChanges/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/ImplementationChanges/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/ImplementationChanges/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/content.txt new file mode 100644 index 0000000000..84a08d48bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/content.txt @@ -0,0 +1,137 @@ +!1 Important +# +To use ''!-FitLibrary-!'', it is now necessary to include the following in the top-most page of your suite: +{{{ +!define TEST_RUNNER {fitlibrary.suite.FitLibraryServer} +}}} +It may be necessary to recompile/jar all fixturing code, as the underlying implementation has changed in several significant ways. +---->ImplementationChanges +----!2 Additions +# +!2 1. Fit included +# + * ''Fit'' is now included in the ''!-FitLibrary-!'' download. + * ''Fit'' will continue to run under ''!-FitNesse-!'' but ''!-FitNesse-!'' will no longer come with the ''Fit'' framework code included. + * ''Fit'' variables can be accessed from ''!-FitLibrary-!'' - see below. + +Fit can continue to be used with ''!-FitServer-!''. However, if you want to mix Fit and ''!-FitLibrary-!'' capability, you have to use ''!-FitLibraryServer-!'' as explained at the top. +# +----!2 2. Do Tables (and flow) +# +!3 !-DoFixture-! and Sequence-style actions +# + * !-DoFixture-! first tries to find a method that matches an action in keyword style (inter-leaved keywords and arguments) + * Only if there is no match, it then tries to find a method in sequence style (the first cell contains the name of the method and subsequent cells contain the arguments) + * This works with all the infix special actions ('''is''', '''matches''', etc) + * This works with the following prefix special actions: '''check''', '''not''', '''reject''', '''show''', '''show after''', '''show escaped''', '''set''', '''set symbol named''', '''log''' + * This makes it particularly easy to access ordinary methods within a SUT without having to write adapter methods in keyword style. +# +!3 New special action in !-DoFixture-! +# + * The action 'not true' is like 'not', except that it gives an error if an exception has been thrown. For example: + +|'''not true'''|''some action''|1|''on''|2| +# +!3 Auto-wrapping of bare objects with !-DoFixture-! +# + * If the first table in a storytest creates an object that's not a fixture, it will be auto-wrapped with !-DoFixture-! + * This means that it's not necessary to subclass fixtures for usual development + * Bare objects used to be auto-wrapped by !-DomainFixture-!. If that behaviour is still required, make those classes implement the marker interface ''!-DomainFixtured-!''. If that will be painful, let me (Rick Mugridge) know and I will consider a configuration option to make it work like it used to. +# +!3 ''!-SelectFixture-!'' capability now part of flow +# +It's no longer necessary to use a ''!-SelectFixture-!'' to switch between ''!-DoFixture-!''s. This switching behaviour has been generalised and included as a part of standard flow. + +So you can simply remove the ''!-SelectFixture-!'' table in your storytests. See .FitLibrary.AdvancedTutorials.MultipleFlowObjects for how to use the new, generalised features. +# +!3 Tailored colouring of table cells +# +It's now possible for ordinary code to make changes to the colouring and messages of the current row of the current table. This allows for tailored error reporting. + +See .FitLibrary.SpecifiCations.PojoAccessToCurrentRow +# +!3 ''!-GlobalMethod-!'' Objects +# +See .FitLibrary.SpecifiCations.AddingGlobalActionsObject +# +!3 Using Fit variables in !-FitLibrary-! +# + * From !-FitLibrary-!, it is now possible set change and access Fit variables. + * See .FitLibrary.SpecifiCations.DynamicVariables.SpecifyConvertFromToFitSymbols +# +!3 onFailure() method call +# +The ''onFailure()'' method can be defined in a fixture. It is called if the storytest has failed (fails/errors), and allow for diagnostic information to be included in the report, such as a screen dump. + +See .FitLibrary.AdvancedTutorials.SetUpTearDownOnFailure for further details. +# +!3 ''Scope'' +# +When a fixture executes now, an action can lead to a call to any method of an object that is in ''scope''. Such scope includes the following: + + * The standard global action methods, such as to set dynamic variables, change a timeout, etc + * The user-provided globals, if any (see above for details) + * The suite fixture, if any + * The main fixture for the storytest, if any + * Any fixtures that are in action within a table, if any. This arises when an action returns a fixture (or auto-wrapped object) that interprets the rest of the table. + +Any fixtures introduced within a table (other than the main fixture for the storytest) go out of scope at the end of that table. + +When a defined action is called, the scope for the execution of the body of the defined action is the same as the scope in action at the point of call. This means that: + + * If a defined action is called as a row in a larger table, it will include any fixtures in scope that are due to that table + * When defined actions call defined actions they may expand the scope further. Any scope that is introduced in a table within a defined action is removed when that table is finished executing. +# +----!2 3. Defined Actions +# +!3 Loading defined actions +# + * An action has been added to allow defined actions to be loaded quickly when the !-FitNesseRoot-! directory is not in the usual place. + * The extra argument is a relative or absolute location for the !-FitNesseRoot-! directory + * See .FitLibrary.SpecifiCations.DefinedActions.DefinedWithRootLocation + * For example: + +|''define actions at''|.FitLibrary.SpecifiCations.DefinedActions.OneDefinedAction|''from''|!-../whereIkeepFitNesse/FitNesseRoot-!| +# +!3 Link to defining page for defined action +# + * Consider when a defined action is called in a storytest + * If there is an error in the defined action body, or if the body is to be expanded regardless, this is shown in an added cell. + * This has been changed so that a link is included back to the page in which the defined action was given. + * For example, see .FitLibrary.SpecifiCations.DefinedActions.DefinedElsewhereExpanded +# +!3 Plain text tables +Plain text now uses the wiki syntax for plain text tables ("![ ... ]!"). For example: + +![ +address is at Waimauku +]! + +Such plain text tables can only refer to defined actions; other actions are ignored. If more than one defined action matches, the one with more keywords is used. + +See .FitLibrary.SpecifiCations.PlainTextInsteadOfTables +# +!3 ''Scope'' when a defined action is executing +# +As explained above, the scope that's active when a defined action is executing depends on the scope at the time of the call. + +This changes the execution model slightly, such as when a defined action is called within the third row of a table and the first row has introduced a new fixture (or object). +# +----!2 4. Rule Table +# +A ''!-RuleTable-!'' acts rather like a ''!-ColumnFixture-!'' tables, except that setters are used for the inputs. See the example at .FitLibrary.BeginningTutorial.FirstRuleTableExample. +# +----!2 5. Fixed Problems +!3 Bug fixes +# + * !-DebugPage-!, a Java class that's handy for running a storytest from within a debugger, works again with !-FitNesse-!. It had previously failed because of changes to the !-FitNesse-! code. + * All subclasses of class ''Number'' are now treated as primitive types and are not ${autoWrapped} by !-DoFixture-!. + * Checks are now made for blank parameters and for duplicated parameters in the definition of a defined action. See .FitLibrary.SpecifiCations.DefinedActions.BlankParameter and .FitLibrary.SpecifiCations.DefinedActions.DuplicatedParameter + * When a ''stop on error'' is required, when there is an error inside a defined action it now stops the storytest + * ''setUp()'' and ''tearDown()'' methods are now called correctly, including when a storytest is abandoned +# +----!2 6. Removed +# + * Obscure Functionality: It's no longer possible to have !-DoFixture-! fake the results it expects. This was added to record Selenium results several years ago, but was not effective. However, it's possible to record with dynamic variables. + * Templates have been removed, as they are now superceded by multi-defined actions. See .FitLibrary.SpecifiCations.DefinedActionsWithNamedParameters + * ''!-DomainFixture-!'' is no longer used as the default wrapper for the first object of a storytest. See section 2 above for further details. diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/From2010May/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/content.txt b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/content.txt new file mode 100644 index 0000000000..58c5d2f603 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/content.txt @@ -0,0 +1,42 @@ +!1 This Release: +# +|!2 ''Details of changes in release''|Version '''2.0''', 17 October 2011| + + * Added the action-modifier ("special" action) '''show with tags'''. See .FitLibrary.SpecifiCations.SpecialActions.TestShowWithTags + * Made ''!-FitLibrary's-!'' ''!-DebugPage-!'' Java class more convenient to use inside an IDE for debugging. Call ''!-DebugPage.run(String[] fullPageNames, String fitNesseDiry, int port)-!'' from your own class. + * Added an alternative protocol so that ''!-ZiBreve-!'' can run tests in a non-batch way. This allows for tests to be created dynamically by "running" defined actions and recording them, and run through ''!-FitLibrary-!'' as they're created. + +|!2 ''Details of changes in release''|1 March 2010| + + * Revised the previous addition so that the errors are signalled for the row where they occur. Updated the specs to show how info can be added to the current row. See .FitLibrary.SpecifiCations.GlobalActionsProvided.OnErrorListener + +|!2 ''Details of changes in release''|24 February 2010| + + * Technical addition: Can register a listener to be informed of errors, so that stopping on errors can be tailored. See .FitLibrary.SpecifiCations.GlobalActionsProvided.OnErrorListener + +|!2 ''Details of changes in this release''|21 February 2011| + + * Can request that elapsed time information be added to the table in the report. See .FitLibrary.SpecifiCations.GlobalActionsProvided.ElapsedTimesAdded + * Can request that a storytest stop running if there are more than a specified number of exceptions and/or fails. This generalises stopOnError. See .FitLibrary.SpecifiCations.GlobalActionsProvided.StoppingOnErrors + * Can find out what actions may be called at a point in a storytest, based on what is in scope. See .FitLibrary.SpecifiCations.GlobalActionsProvided.WhatIsInScope + +|!2 ''Details of changes in release''|3 December 2010| + + * Logging property files are now optional. + +|!2 ''Details of changes in release''|1 December 2010| + + * Added log4j logging capability. See .FitLibrary.AdvancedTutorials.LoggingTechniques for details on using this logging, as well as approaches to logging that are visible in the report page. + * Added retry capability to batch running. See FitLibraryRunner for details + * Revised the internal implementation of many of the ''special actions'' (.FitLibrary.SpecifiCations.SpecialActions). + * Extended the [[''File'' handling capability][.FitLibrary.SpecifiCations.GlobalActionsProvided.FileProcessing]] + * Added [[''relative file'' handling][.FitLibrary.SpecifiCations.GlobalActionsProvided.RelativeFileHandling]], so that file accesses will work correctly both when running in ''!-FitNesse-!'' and in batch. + * Added ''String'' handling capability. See .FitLibrary.SpecifiCations.SpecialActions.TestAsString + * Added the special action '''show predefined''' to use a
 tag to show the whitespace (tabs, new lines, etc) in the resulting string. See .FitLibrary.SpecifiCations.SpecialActions.TestShowPredefined
+ * Updated to use fitnesse release 20101101
+ * Allow for configuring ''!-FitLibrary-!'' so that it leaves unicode characters in class and method names that are valid Java characters. See .FitLibrary.SpecifiCations.JavaSpecific.CamelCasingUnicode
+ * Where a List> is provided to a ''!-SetFixture-!'', ''!-ArrayFixture-!'', or ''!-SubsetFixture-!'', map keys are tested both in extended camel case form as well as in plain form. So a table header of '&' will match both '&' and 'ampersand'. See .FitLibrary.SpecifiCations.CollectionSpecifications.ListTraverse.TestMapCollection
+ * Access is now available through ''!-RuntimeContextual-!'' to the full details of the current row being executed through the method ''!-RuntimeContextInternal.row()-!''
+#
+----!1 Earlier Releases:
+|!contents|
diff --git a/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/properties.xml
new file mode 100644
index 0000000000..8aff58de58
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibrary/WhatIsNew/properties.xml
@@ -0,0 +1,13 @@
+
+
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	1254352303584
+	4871575032378574776
+
diff --git a/fitnesse/FitNesseRoot/FitLibrary/content.txt b/fitnesse/FitNesseRoot/FitLibrary/content.txt
new file mode 100644
index 0000000000..2c81dd61e6
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibrary/content.txt
@@ -0,0 +1,115 @@
+!**< defines
+!define REGRACE_LINK {false}
+!define REGRACE_TOC {false}
+
+!define advanced {Advanced (and more technical) features of FitLibrary, including:
+ * Specific sorts of collections:
+  * ordered, unordered, subsets, maps, arrays
+ * [[''Defined actions''][.FitLibrary.UserGuide.FitLibraryByExample.DefinedActions]]
+ * [[''Dynamic variables''][.FitLibrary.AdvancedTutorials.DynamicVariables]]
+ * [[Multiple flow objects][.FitLibrary.AdvancedTutorials.MultipleFlowObjects]]
+ * Implementation details:
+  * [[setUp, tearDown, onFailure methods][.FitLibrary.AdvancedTutorials.SetUpTearDownOnFailure]]
+  * runtime information access in fixture code
+  * specialised handling of table cell text
+ * [[Migrating from Slim to FitLibrary][.FitLibrary.AdvancedTutorials.MigratingSlimDecisionTables]]
+ * [[Logging techniques][.FitLibrary.AdvancedTutorials.LoggingTechniques]] using '''show''', '''show after''' and [[''log4j''][.FitLibrary.AdvancedTutorials.LoggingTechniques.Log4jLogging]] logging
+}
+
+**!
+!3 Invented and developed in Java by [[''Rick Mugridge''][.FitLibrary.GlosSary.RickMugridge]], http://www.rimuresearch.com
+
+|!3 ^WhatIsNew|''What's new in this release.''|
+|!3 ^ToDo|''Things we might do.''|
+
+|!3 ^BeginningTutorial|''First tutorial for FitLibrary''|
+|!3 >AdvancedTutorials|''${advanced}''|
+|!3 ^UserGuide|''User guide for FitLibrary''|
+|!3 ^ReferenCe|''Reference for FitLibrary''|
+|!3 ^SpecifiCations|''Storytests that specify FitLibrary. These are used to drive the development of FitLibrary''|
+
+|!3 ^SuiteFixture|''Details of suite fixtures''|
+|!3 ^FitBook|''Example storytests from the [[Fit Book][.FitLibrary.GlosSary.FitBook]]''|
+|!3 ^RentEz|''An extended example of storytests for an application. These build on the example in the [[Fit Book][.FitLibrary.GlosSary.FitBook]].''|
+|!3 ^GlosSary|''Glossary of terms used in FitLibrary''|
+|!3 ^CrossReference|''A way of getting cross reference information about actions used by storytest''|
+|!3 ^BuildingFitLibrary|''Details of the build process for FitLibrary''|
+
+!c !img http://files/images/fitBookCover.jpeg
+
+>WasSuiteSetUp
+
+!1 Temporarily disabled tests:
+
+.FitLibrary.SpecifiCations.DefinedActions.BasedOnClass.UseTheTextThisInClassBasedActions
+
+!**< glossary reference definitions
+!define action ([[''workflow action''][.FitLibrary.GlosSary.WorkflowAction]])
+!define actionMethod ([[''action method''][.FitLibrary.GlosSary.ActionMethod]])
+!define actions ([[''actions phase''][.FitLibrary.GlosSary.ActionsPhase]])
+!define arrayTraverse ([[''arrayTraverse''][.FitLibrary.GlosSary.ArrayTraverse]])
+!define autoWrapped ([[''auto-wrapped''][.FitLibrary.GlosSary.AutoWrapping]])
+!define checks ([[''after phase''][.FitLibrary.GlosSary.AfterPhase]])
+!define collectionSetUpTraverse ([[''collectionSetUpTraverse''][.FitLibrary.GlosSary.CollectionSetUpTraverse]])
+!define copyright {''Copyright (c) 2004 - 2009'' [[''Rick Mugridge''][.FitLibrary.GlosSary.RickMugridge]], ''http://www.rimuresearch.com''}
+!define ddd ([[''Domain Driven Design''][.FitLibrary.GlosSary.DomainDrivenDesign]])
+!define doFixture ([[''doFixture''][.FitLibrary.GlosSary.DoFixture]])
+!define doTraverse ([[''doTraverse''][.FitLibrary.GlosSary.DoTraverse]])
+!define domainAdapter ([[''Domain Adapter''][.FitLibrary.GlosSary.DomainAdapter]])
+!define domainObject ([[''Domain object''][.FitLibrary.GlosSary.DomainObject]])
+!define domainObjectCheck ([[''domainObjectCheck''][.FitLibrary.GlosSary.DomainObjectCheck]])
+!define domainObjectSetUp ([[''domainObjectSetUp''][.FitLibrary.GlosSary.DomainObjectSetUp]])
+!define domainFixture ([[''domainFixture''][.FitLibrary.GlosSary.DomainFixture]])
+!define domainTraverse ([[''domainTraverse''][.FitLibrary.GlosSary.DomainTraverse]])
+!define entity ([[''Entity''][.FitLibrary.GlosSary.DomainEntity]])
+!define extendedCamelCase ([[''extendedCamelCasing''][.FitLibrary.GlosSary.ExtendedCamelCase]])
+!define expected ([[''expected''][.FitLibrary.GlosSary.ExpectedValue]])
+!define finder ([[''finder method''][.FitLibrary.GlosSary.FinderMethod]])
+!define fit ([[''Fit''][.FitLibrary.GlosSary.FiT]])
+!define fitBook ([[''Fit Book''][.FitLibrary.GlosSary.FitBook]])
+!define fitLibrary ([[''fitLibrary''][.FitLibrary.GlosSary.FitLibrary]])
+!define fitLibrary2 ([[''fitLibraryGeneric''][.FitLibrary.GlosSary.FitLibraryGeneric]])
+!define fitNesse ([[''fitNesse''][.FitLibrary.GlosSary.FitNesse]])
+!define fixture ([[''Fixture''][.FitLibrary.GlosSary.FixTure]])
+!define fixturingMethod ([[''fixturing method''][.FitLibrary.GlosSary.FixturingMethod]])
+!define flow ([[''flow''][.FitLibrary.GlosSary.FloW]])
+!define getter ([[''getter''][.FitLibrary.GlosSary.GetterMethod]])
+!define given ([[''given''][.FitLibrary.GlosSary.GivenValue]])
+!define gpl2 (''Released under the terms of the GNU General Public License version 2 or later.'')
+!define key ([[''key''][.FitLibrary.GlosSary.EntityKey]])
+!define keywords ([[''keywords''][.FitLibrary.GlosSary.KeyWords]])
+!define label ([[''label''][.FitLibrary.GlosSary.ColumnLabel]])
+!define listSetUp ([[''collectionSetUp''][.FitLibrary.GlosSary.CollectionSetUp]])
+!define listTraverse ([[''listTraverse''][.FitLibrary.GlosSary.ListTraverse]])
+!define mapTraverse ([[''mapTraverse''][.FitLibrary.GlosSary.MapTraverse]])
+!define objectFactoryMethod ([[''object factory method''][.FitLibrary.GlosSary.ObjectFactoryMethod]])
+!define objectUnderTest ([[''Object Under Test''][.FitLibrary.GlosSary.ObjectUnderTest]])
+!define parseDelegate ([[''Parser delegate''][.FitLibrary.GlosSary.ParseDelegate]])
+!define parserDelegateMethod ([[''Parser delegate method''][.FitLibrary.GlosSary.ParserDelegateMethod]])
+!define parser ([[''Parser''][.FitLibrary.GlosSary.ParSer]])
+!define pleaseIgnore (''Please ignore this: it simply hides away the definitions that are needed for nested tables.'')
+!define programmers (!3 This is only relevant to programmers)
+!define rick ([[''Rick Mugridge''][.FitLibrary.GlosSary.RickMugridge]])
+!define rule ([[''business rule''][.FitLibrary.GlosSary.BusinessRule]])
+!define ruleMethod ([[''rule method''][.FitLibrary.GlosSary.RuleMethod]])
+!define selector ([[''fitLibrarySelector''][.FitLibrary.GlosSary.FitLibrarySelector]])
+!define selfParse ([[''self parse''][.FitLibrary.GlosSary.SelfParse]])
+!define setter ([[''setter''][.FitLibrary.GlosSary.SetterMethod]])
+!define setup ([[''before phase''][.FitLibrary.GlosSary.BeforePhase]])
+!define setUpMethod ([[''setUp method''][.FitLibrary.GlosSary.SetUpMethod]])
+!define suiteSetUpMethod ([[''suite setUp method''][.FitLibrary.GlosSary.SuiteSetUpMethod]])
+!define setTraverse ([[''setTraverse''][.FitLibrary.GlosSary.SetTraverse]])
+!define show ([[''show method''][.FitLibrary.GlosSary.ShowMethod]])
+!define storytest ([[''storytest''][.FitLibrary.GlosSary.StoryTest]])
+!define subsetTraverse ([[''subsetTraverse''][.FitLibrary.GlosSary.SubsetTraverse]])
+!define suite ([[''suite fixture''][.FitLibrary.GlosSary.SuiteFixture]])
+!define suiteTearDownMethod ([[''suite tearDown method''][.FitLibrary.GlosSary.SuiteTearDownMethod]])
+!define sut ([[''System Under Test''][.FitLibrary.GlosSary.SystemUnderTest]])
+!define tearDownMethod ([[''tearDown method''][.FitLibrary.GlosSary.TearDownMethod]])
+!define traverse ([[''Traverse''][.FitLibrary.GlosSary.TraVerse]])
+!define valueObject ([[''Value Object''][.FitLibrary.GlosSary.ValueObject]])
+!define workflow ([[''workflow''][.FitLibrary.GlosSary.WorkFlow]])
+!define workflowTraverse ([[''doTraverse {doFixture}''][.FitLibrary.GlosSary.DoTraverse]])
+
+**!
+----'''The following copyright notice applies to all the pages/files in the ${fitLibrary} user guide and specifications that are provided in a release.'''
diff --git a/fitnesse/FitNesseRoot/FitLibrary/properties.xml b/fitnesse/FitNesseRoot/FitLibrary/properties.xml
new file mode 100644
index 0000000000..ff16698f1e
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibrary/properties.xml
@@ -0,0 +1,15 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1255036793312
+	108190147812847129
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/CheckFolderRunner/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/CheckFolderRunner/content.txt
new file mode 100644
index 0000000000..becb52a5c9
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/CheckFolderRunner/content.txt
@@ -0,0 +1,7 @@
+This is to verify that some of the fixtures work under ''!-FolderRunner-!''
+
+ * The ''!-SpiderFixture-!'' '''specifications''' don't because they currently depend on ''!-FitNesse-!'' running. Usual uses of ''!-SpiderFixture-!'' should be fine.
+
+!|fitlibrary.runner.FolderRunnerFixture|
+
+|''run''|folderRunner/tests|''giving''|folderRunner/reports|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/CheckFolderRunner/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/CheckFolderRunner/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/CheckFolderRunner/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/DetailedExample/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/DetailedExample/content.txt
new file mode 100644
index 0000000000..68ede8b6ff
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/DetailedExample/content.txt
@@ -0,0 +1,135 @@
+!3 today
+By default, the date is today's date, of the form "d MMM yyyy":
+
+|''with date''|
+|''create variable''|date|
+
+|'''show'''|''get''|@{date}|
+
+The ''create variable'' row specifies the variable to create.
+----!3 In the past
+Let's go back in time:
+
+|''with date''|
+|''-''|2|''years''|
+|''+''|2|''months''|
+|''create variable''|past|
+
+|'''show'''|''get''|@{past}|
+
+ * In general, we can go back/forward in ''years'', ''months'', ''days'' and ''minutes''.
+ * The ''create variable'' row has to be after altering the date/time
+----!3 In the future
+|''with date''|
+|''+''|2|''months''|
+|''create variable''|future|
+
+|'''show'''|''get''|@{future}|
+----!3 Date Format
+We can specify the date format for one or more variables, picking out different aspects of a date/time (eg, for selecting from a pull-down in a web browser):
+
+|''with date''|
+|''create variable''|day#|''with format''|d|
+|''create variable''|day00#|''with format''|dd|
+|''create variable''|month#|''with format''|M|
+|''create variable''|month00#|''with format''|MM|
+|''create variable''|monthShort|''with format''|MMM|
+|''create variable''|monthLong|''with format''|MMMM|
+|''create variable''|hour|''with format''|h:mma|
+
+|'''show'''|''get''|day @{day#} (or @{day00#}) of @{monthLong} (or @{monthShort} or @{month00#} or @{month#}) at @{hour}|
+
+Here the variables all apply to the same date (see the complex example below for variation on this).
+  * "d" is the day number of the month (1..31). "dd" will ensure there are two digits.
+  * "h:mma" formats it as a 12-hour clock with AM/PM.
+  * For possible date/time formats, see ''help'' below.
+----!3 Format for day of the week (Monday, etc)
+|''with date''|
+|''create variable''|dayOfWeek|''with format''|EEEE|
+
+|'''show'''|''get''|@{dayOfWeek}|
+----!3 Time zone selection
+|''with date''|
+|''time zone''|America/Los_Angeles|
+|''create variable''|us-date|
+
+|show|get|@{us-date}|
+
+See ''help'' below for possible time zones
+----!3 Upper case month name
+In the following we pick a particular date for today so that these examples continue to work (in NZ only). The ''pick date time'' row is intended for testing only.
+
+|''with date''|
+|''pick date time''|1243987143111|
+|''to upper''|
+|''create variable''|DATE|''with format''|EEEE d MMM yyy H:mm|
+
+|''get''|@{DATE}|'''is'''|WEDNESDAY 3 JUN 2009 11:59|
+
+|''with date''|
+|''pick date time''|1243987143111|
+|''time zone''|Pacific/Auckland|
+|''+''|30|''days''|
+|''create variable''|pickupdate1|''with format''|dd MMM yy|
+|''+''|40|''days''|
+|''create variable''|dropoffdate1|''with format''|dd MMM yy|
+
+|''get''|@{pickupdate1} -- @{dropoffdate1}|'''is'''|03 Jul 09 -- 12 Aug 09|
+
+----!3 Selecting the day of the week required
+We can specify the day of the week required.
+
+|''with date''|
+|''pick date time''|1243987143111|
+|''+''|1|''years''|
+|''+''|3|''weeks''|
+|''on Friday''|
+|''create variable''|friday|''with format''|EEEE d MMMM yyyy|
+
+|''get''|@{friday}|'''is'''|Friday 25 June 2010|
+
+Any day of the week can be selected. The date is moved forward into the future and backwards into the past to the right day.
+----!3 Last day of the month
+|''with date''|
+|''pick date time''|1243987143111|
+|''time zone''|America/Los_Angeles|
+|''+''|2|''months''|
+|''last day of month''|
+|''create variable''|usa-end-of-month|''with format''|EEEE d MMMM|
+|''+''|1|''days''|
+|''create variable''|plus1|''with format''|EEEE d MMMM|
+
+|''get''|@{usa-end-of-month}|'''is'''|Monday 31 August|
+|''get''|@{plus1}|'''is'''|Tuesday 1 September|
+
+----!3 Start with an existing date
+|''with date''|
+|''date is''|3 June 2009|''using''|d MMMM YYYY|
+|''+''|2|''months''|
+|''last day of month''|
+|''create variable''|end-of-month|''with format''|EEEE d MMMM|
+
+|''get''|@{end-of-month}|'''is'''|Monday 31 August|
+
+----!3 A crazy example, showing how that the ordering of the rows is important
+|''with date''|
+|''pick date time''|1243987143111|
+|''time zone''|America/Los_Angeles|
+|''+''|2|''months''|
+|''-''|4|''minutes''|
+|''on Thursday''|
+|''create variable''|usa-date|''with format''|EEEE d MMMM yyyy|
+|''create variable''|usa-time|''with format''|H:mm|
+|''last day of month''|
+|''create variable''|usa-end-of-month|''with format''|EEEE d MMMM|
+
+|''get''|@{usa-date} at @{usa-time}, ending on @{usa-end-of-month}|'''is'''|Thursday 6 August 2009 at 16:55, ending on Monday 31 August|
+
+Notice that:
+ * The date of ''usa-date'' differs from ''usa-end-of-month''. A variable is created using the date/time set up previously in the table.
+ * When we select the ''last day of the month'', the ''on Thursday'' is ignored.
+----!3 Help information
+For the possible date/time formats and possible time zones, run the test and expand the logs that are added after the table below:
+
+|''with date''|
+|''help''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/DetailedExample/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/DetailedExample/properties.xml
new file mode 100644
index 0000000000..4e908ad9ff
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/DetailedExample/properties.xml
@@ -0,0 +1,12 @@
+
+
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/content.txt
new file mode 100644
index 0000000000..914cbe4a2f
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/content.txt
@@ -0,0 +1,7 @@
+Including actual dates in storytests can be a pain, as they need to be changed to make sense.
+
+The ''!-CreateDate-!'' fixture creates dates/times in the past and future, for different time zones. It uses a format to specify the detailed form of the date/time required.
+
+It uses '''Joda Time''': see http://joda-time.sourcefoge.net/
+
+^DetailedExample
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/properties.xml
new file mode 100644
index 0000000000..5bbef63ff5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/CreateDate/properties.xml
@@ -0,0 +1,16 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1255039890546
+	-4232393804106623241
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/DatabaseFixtures/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/DatabaseFixtures/content.txt
new file mode 100644
index 0000000000..ff2be066c7
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/DatabaseFixtures/content.txt
@@ -0,0 +1,82 @@
+Two simple wrappers are provided for two fixtures that provide database access to Oracle and MySQL.
+
+The underlying fixtures are in ''!-DbFit-!'', written by Gojko Adzic, http://gojko.net/fitnesse/dbfit.
+
+Here's an example with MySQL. For access to an Oracle database, use ''!-fitlibrary.database.Oracle-!'' instead.
+#
+----!3 1. Connect to the database
+!|fitlibrary.database.MySql|
+
+|''connect''|localhost|''with user''|rick|''and password''|past|''to''|myDB|
+
+where ''localhost'' is a host, instance or service name, ''rick'' is the user, ''past'' is the password, and ''myDB'' is the database SID.
+
+To user non-standard connection properties, use the following table form instead:
+
+|''connect''|data source=Instance;user id=rick;password=past;database=myDB;|
+
+See http://www.fitnesse.info/dbfit:reference:databaseunittests:helloworld:connecttothedatabase for further details of the non-standard connection form.
+#
+----!3 2. Running a simple query
+#
+Eg.
+
+|''Query''| select 'test' as x|
+|x|
+|test|
+
+For further examples and details of running queries, see:
+ * http://www.fitnesse.info/dbfit:reference:databaseunittests:helloworld:testingasimplequery
+ * http://www.fitnesse.info/dbfit:reference:commandreference:querycommand
+#
+----!3 3. Inserting rows
+#
+Eg.
+
+|Insert|Test_DBFit|
+|name|luckyNumber|
+|pera|1|
+|nuja|2|
+|nnn|3|
+
+For further examples and details of insertions, see:
+ * http://www.fitnesse.info/dbfit:reference:commandreference:insertcommand
+
+#
+----!3 4. Update
+#
+Eg.
+
+|Update|Test_DBFit|
+|name|luckyNumber|
+|pera|10|
+
+For further examples and details of insertions, see:
+ * http://www.fitnesse.info/dbfit:reference:commandreference:updatecommand
+
+#
+----!3 5. Execute Stored Procedure
+#
+For examples and details, see:
+ * http://www.fitnesse.info/dbfit:reference:commandreference:executeprocedurecommand
+
+#
+----!3 6. Execute SQL statement
+#
+Eg, to create a table.
+
+For examples and details, see:
+ * http://www.fitnesse.info/dbfit:reference:commandreference:executecommand
+
+#
+----!3 7. Inspect - to extract meta-data for conversion to a test
+#
+For examples and details, see:
+ * http://www.fitnesse.info/dbfit:reference:commandreference:inspectcommand
+#
+
+----!3 8. Store Query and Compare Stored Queries
+#
+For examples and details, see:
+ * http://www.fitnesse.info/dbfit:reference:commandreference:storequerycommand
+ * http://www.fitnesse.info/dbfit:reference:commandreference:comparestoredqueriescommand
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/DatabaseFixtures/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/DatabaseFixtures/properties.xml
new file mode 100644
index 0000000000..f32bd77b49
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/DatabaseFixtures/properties.xml
@@ -0,0 +1,13 @@
+
+
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	1253665288738
+	-7545833880692348771
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/DefinedActions/content.txt
new file mode 100644
index 0000000000..429d71a07e
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/DefinedActions/content.txt
@@ -0,0 +1 @@
+!contents
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/ElectronicMail/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/ElectronicMail/content.txt
new file mode 100644
index 0000000000..8160654727
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/ElectronicMail/content.txt
@@ -0,0 +1,62 @@
+The ''!-ElectronicMail-!'' fixture allow for testing that email has been sent.
+#
+!2 Example:
+#
+|''with email''|
+|''connect using host''|imapper|''and protocol''|imap|''with user name''|testGig|''and password''|ssap|
+|''open folder''|INBOX|
+|''wait up to''|100|''seconds for message to arrive''|
+|''select message with subject matching''|Confirmation|
+|''check message body contains''|confirmed|
+|''has attachment''|Confirmation.PDF|
+|''download attachment''|Confirmation.PDF|to file|Confirmation.PDF|
+|''delete message''|
+|''disconnect''|
+#
+!2 Commands
+#
+ * Access e-mail:
+
+|''with email''|
+
+ * Connect to a server:
+
+|''connect using host''|'''host'''|''and protocol''|'''protocol'''|''with user name''|'''name'''|''and password''|'''password'''|
+
+ * Open a named folder:
+
+|''open folder''|INBOX|
+
+ * Delay, waiting for the email to arrive:
+
+|''wait up to''|5|''seconds for message to arrive''|
+
+ * Select a message by the subject:
+
+|''select message with subject matching''|Confirmation|
+
+ * Check that message body contains some text:
+
+|''check message body contains''|confirmed|
+
+ * Check that the current message has the named attachment:
+
+|''has attachment''|Confirmation.PDF|
+
+ * Download the named attachment as the file:
+
+|''download attachment''|Confirmation.PDF|to file|Confirmation.PDF|
+
+ * Delete the current message from the mail box:
+
+|''delete message''|
+
+ * Disconnect from the map server:
+
+|''disconnect''|
+#
+!2 Implementation
+#
+This makes use of the ''javamail'' system.
+
+See http://java.sun.com/products/javamail/ for further details.
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/ElectronicMail/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/ElectronicMail/properties.xml
new file mode 100644
index 0000000000..b91ebc4a5c
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/ElectronicMail/properties.xml
@@ -0,0 +1,13 @@
+
+
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	1254800405540
+	4574496271134201090
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/GetExample/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/GetExample/content.txt
new file mode 100644
index 0000000000..375a139110
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/GetExample/content.txt
@@ -0,0 +1,11 @@
+!|fitlibrary.http.HttpClientFixture|
+
+|''http get''|http://localhost:${FITNESSE_PORT}|
+
+|'''show'''|''headers''|
+
+|''headers include''|
+|''name''|''value''|
+|Content-Type|ext/html; charset=utf-8|
+
+|'''show'''|''reply escaped''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/GetExample/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/GetExample/properties.xml
new file mode 100644
index 0000000000..4e908ad9ff
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/GetExample/properties.xml
@@ -0,0 +1,12 @@
+
+
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HeadExample/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HeadExample/content.txt
new file mode 100644
index 0000000000..6e3a93daa3
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HeadExample/content.txt
@@ -0,0 +1,9 @@
+!|fitlibrary.http.HttpClientFixture|
+
+|reject|''http head''|http://localhost:${FITNESSE_PORT}|
+
+|'''show'''|''headers''|
+
+|''headers include''|
+|''name''|''value''|
+|Content-Type|text/html; charset=utf-8|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HeadExample/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HeadExample/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HeadExample/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/BadGet/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/BadGet/content.txt
new file mode 100644
index 0000000000..5433e9d565
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/BadGet/content.txt
@@ -0,0 +1,20 @@
+!3 4. Unknown Page
+#
+When run, this storytest gives the error "''Received Status code = 404: Not Found''", as the file can't be found.
+
+Remember to run the server on [[this page][
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServer/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServer/content.txt
new file mode 100644
index 0000000000..55c9ec4020
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServer/content.txt
@@ -0,0 +1,21 @@
+This runs a file server on local port 8093 when you run it as a '''Test'''.
+
+It closes down after the given period in seconds.
+
+!|fitlibrary.server.WebServerForTestingFixture|
+
+|''start file server on port''|8093|''at directory''|!-FitNesseRoot-!|
+
+|''stop testing server after''|60|''seconds''|
+
+Once it stops running, you can run it again.
+
+ * If you run it too soon, it will give an error because the port is already busy.
+
+ * That can happen if you press the back button soon after hitting '''Test''' and press '''Test''' again; the test is still running in the background.
+#
+!3 Warning
+#
+This file server has limited capability, and is only intended for testing purposes.
+
+While it limits the files that can be accessed to the specified directory, it is not guaranteed to be secure.
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServer/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServer/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServer/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServerWithLogging/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServerWithLogging/content.txt
new file mode 100644
index 0000000000..695632a7fe
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServerWithLogging/content.txt
@@ -0,0 +1,31 @@
+!3 With Logging
+#
+This runs a file server on port 8092 with logging enabled.
+#
+!3 Running
+#
+This runs a file server on local port 8092 when you run it as a '''Test'''.
+
+It closes down after the given period in seconds.
+
+!|fitlibrary.server.WebServerForTestingFixture|
+
+|''with fixturing logger''|
+|''level''|ALL|
+|''show after''|true|
+
+|''start file server on port''|8092|''at directory''|!-FitNesseRoot-!|
+
+|''stop testing server after''|10|''seconds''|
+
+Once it stops running, you can run it again.
+
+ * If you run it too soon, it will give an error because the port is already busy.
+
+ * That can happen if you press the back button soon after hitting '''Test''' and press '''Test''' again; the test is still running in the background.
+#
+!3 Warning
+#
+This file server has limited capability, and is only intended for testing purposes.
+
+While it limits the files that can be accessed to the specified directory, it is not guaranteed to be secure.
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServerWithLogging/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServerWithLogging/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunFileServerWithLogging/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunProxy/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunProxy/content.txt
new file mode 100644
index 0000000000..a5c5aae71d
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunProxy/content.txt
@@ -0,0 +1,22 @@
+This runs a proxy server on local port 5555 when you run it as a '''Test'''.
+
+It closes down after the given period in seconds.
+
+!|fitlibrary.server.ProxyServerFixture|
+
+|''with fixturing logger''|
+|''level''|ALL|
+
+|''start proxy server on port''|5555|
+
+|''stop proxy server after''|60|''seconds''|
+
+Once it stops running, you can run it again (as with the file server).
+
+ * If you run it too soon, it will give an error because the port is already busy.
+
+ * That can happen if you press the back button soon after hitting '''Test''' and press '''Test''' again; the test is still running in the background.
+#
+!3 Warning
+#
+This proxy server has limited capability, and is only intended for testing purposes.
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunProxy/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunProxy/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/RunProxy/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/UseLogging/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/UseLogging/content.txt
new file mode 100644
index 0000000000..cdc8154f55
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/UseLogging/content.txt
@@ -0,0 +1,38 @@
+!3 8. Logging
+#
+It can sometimes be useful to turn on logging to see what's going on (and when).
+
+Run a different file server on port 8092 [[on this page][
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/UseProxy/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/UseProxy/content.txt
new file mode 100644
index 0000000000..1444e62aef
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/UseProxy/content.txt
@@ -0,0 +1,45 @@
+!3 5. Using a Proxy
+#
+In many organisations, it's necessary to access external web sites through a proxy.
+
+ * Then the proxy will be configured in your browser.
+ * If it's an authenticating proxy, you may have to log in.
+
+If you're testing, and need to go through a proxy, httpClient can be configured to use a specified proxy.
+
+ * In this example, we configure it to use a local proxy on port 5555.
+ * In your tests, you'd configure it to your own proxy.
+ * In the next step, we'll see how to run a suitable proxy server.
+
+#
+----!3 6. Example of Using a Proxy
+#
+When first run, this storytest gives a "''Connection to http://localhost:5555 refused''" error as the proxy server is not running.
+
+|''with http client''|
+
+|''proxy url''|localhost|''with port''|5555|
+
+|''http get''|http://localhost:8093/files/handlingWindows.html|
+
+|'''show'''|''headers''|
+
+|''headers include''|
+|''name''|''value''|
+|Content-Type|text/html; charset=UTF-8|
+#
+----!3 7. Running the Proxy Server
+#
+Let's now run a proxy server for it to talk to: open [[this page][RunProxy]] in (yet) another browser window.
+
+Notice that both the proxy server and the file server need to be running for this storytest to pass.
+
+ * If the proxy server is not running, a "''Connection to http://localhost:5555 refused''" error is given.
+ * If the proxy server is running, but the file server is not, a "''The target server failed to respond''" error will be given (by the proxy server).
+
+Run the file server on [[this page][
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/content.txt
new file mode 100644
index 0000000000..88cde0ab17
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/content.txt
@@ -0,0 +1,42 @@
+!3 1. Get fails without a server
+#
+Let's start with GET-ting a page from a server. We use the ''!-HttpClientFixture-!'' fixture to do this.
+
+Run '''Test''':
+
+ * This will initially fail, with a ''connection refused''.
+ * That's because there is no server running on port 8093. We'll fix that shortly, in #3 below.
+ * However, if you already have a server running on port 8093, you may get a response! See #2 below for how to fix that.
+
+|''with http client''|
+
+ * Request a page from the given port on localhost (ie on the current machine):
+
+|''http get''|http://localhost:8093/files/handlingWindows.html|
+
+ * If it succeeds, this will display the HTTP headers from the reply
+
+|'''show'''|''headers''|
+
+ * This table allows us to check that certain headers are as expected. In this case, we simply test the ''Content-Type'' header value:
+
+|''headers include''|
+|''name''|''value''|
+|Content-Type|text/html; charset=UTF-8|
+
+ * If it succeeds, the following will display the reply received. Because it's HTML, we ''escape'' it so we can see the underlying HTML:
+
+|'''show escaped'''|''reply''|
+#
+----!3 2. If your own server is running on port 8093
+#
+Change the port number in the second table above to another 4-digit number in the 8000-9000 range (avoid 8080). You'll also need to change the port number in [[this page][^RunFileServer]] to be the same before step #3 will work.
+#
+#
+----!3 3. Get succeeds when a server is running
+#
+Let's run a server for it to talk to: open [[this page][^RunFileServer]] in another browser window so you can see them both at the same time.
+#
+----!3 4. Next
+#
+On [[this page][^BadGet]], we'll see what happens if the page is not known about by the server.
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/HttpClientTutorial/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGet/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGet/content.txt
new file mode 100644
index 0000000000..a56965f119
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGet/content.txt
@@ -0,0 +1,17 @@
+|''with http client''|
+
+|'''also run'''|''with web server for testing''|
+
+|''start file server on port''|8096|''at directory''|!-FitNesseRoot-!|
+
+|''http get''|http://localhost:8096/files/handlingWindows.html|
+
+|'''show'''|''headers''|
+
+|''headers include''|
+|''name''|''value''|
+|Content-Type|text/html; charset=UTF-8|
+
+|'''show'''|''reply escaped''|
+
+|''stop testing server''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGet/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGet/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGet/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGetWithProxy/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGetWithProxy/content.txt
new file mode 100644
index 0000000000..a988a77218
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGetWithProxy/content.txt
@@ -0,0 +1,27 @@
+|''with http client''|
+
+|''proxy url''|localhost|''with port''|5557|
+
+|'''also run'''|''with web server for testing''|
+
+|'''also run'''|''with proxy server for testing''|
+
+|''start proxy server on port''|5557|
+
+|''start logging''|
+
+|''start file server on port''|8096|''at directory''|!-FitNesseRoot-!|
+
+|''http get''|http://localhost:8096/files/handlingWindows.html|
+
+|'''show'''|''headers''|
+
+|''headers include''|
+|''name''|''value''|
+|Content-Type|text/html; charset=UTF-8|
+
+|'''show'''|''reply escaped''|
+
+|''stop testing server''|
+
+|''stop proxy server''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGetWithProxy/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGetWithProxy/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpGetWithProxy/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHead/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHead/content.txt
new file mode 100644
index 0000000000..fe9720e446
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHead/content.txt
@@ -0,0 +1,15 @@
+|''with http client''|
+
+|'''also run'''|''with web server for testing''|
+
+|''start file server on port''|8096|''at directory''|!-FitNesseRoot-!|
+
+|''http head''|http://localhost:8096/files/handlingWindows.html|
+
+|'''show'''|''headers''|
+
+|''headers include''|
+|''name''|''value''|
+|Content-Type|text/html; charset=UTF-8|
+
+|''stop testing server''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHead/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHead/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHead/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHeadWithProxy/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHeadWithProxy/content.txt
new file mode 100644
index 0000000000..cb05c9af83
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHeadWithProxy/content.txt
@@ -0,0 +1,25 @@
+|''with http client''|
+
+|''proxy url''|localhost|''with port''|5557|
+
+|'''also run'''|''with web server for testing''|
+
+|'''also run'''|''with proxy server for testing''|
+
+|''start logging''|
+
+|''start proxy server on port''|5557|
+
+|''start file server on port''|8096|''at directory''|!-FitNesseRoot-!|
+
+|''http head''|http://localhost:8096/files/handlingWindows.html|
+
+|'''show'''|''headers''|
+
+|''headers include''|
+|''name''|''value''|
+|Content-Type|text/html; charset=UTF-8|
+
+|''stop testing server''|
+
+|''stop proxy server''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHeadWithProxy/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHeadWithProxy/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/HttpHeadWithProxy/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/content.txt
new file mode 100644
index 0000000000..8cba095360
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/content.txt
@@ -0,0 +1,4 @@
+^HttpHead
+^HttpGet
+^HttpHeadWithProxy
+^HttpGetWithProxy
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/properties.xml
new file mode 100644
index 0000000000..1e01581b7d
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/SpecifiCations/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/content.txt
new file mode 100644
index 0000000000..8f4eacbe9d
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/content.txt
@@ -0,0 +1,8 @@
+An HTTP Client can carry out various HTTP requests:
+
+ * HEAD, to get the head information from a URL (to either display the headers or check some of them).
+
+ * GET, to get a page from a URL (to display the text or check it as plain text or XML). Eg, ^GetExample
+
+^SpecifiCations
+^HttpClientTutorial
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/properties.xml
new file mode 100644
index 0000000000..124f46a10b
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/HttpClient/properties.xml
@@ -0,0 +1,11 @@
+
+
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/AlternativeRequests/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/AlternativeRequests/content.txt
new file mode 100644
index 0000000000..f29a17e9f8
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/AlternativeRequests/content.txt
@@ -0,0 +1,36 @@
+!3 7. Alternative requests
+So far, we've assumed that we're only interested in a specific request. What if we want to provide counts for apples and oranges? We can do that with two table, as follows:
+
+|''with mock web services''|
+
+|''mock soap11 on port''|8081|
+|''xpath''|//countOf|''is''|Oranges|
+|''response''|44|
+|''response''|23|
+
+|''mock soap11 on port''|8081|
+|''xpath''|//countOf|''is''|Apples|
+|''response''|17|
+|''response''|9|
+
+|''close after''|5|''seconds''|
+
+This passes when you also run OrangesAndApples
+
+When a request comes in, it's matched against the first table. As that doesn't match, it's then matched against the second table.
+
+This means that we don't care which order the requsts for apples and oranges come in. Once a response has been used, it's not used again. So we could end up with the following alternative sequences of requests/responses:
+
+ * (oranges/44), (oranges/23), (apples/17), (apples/9) '''or'''
+ * (oranges/44), (apples/17), (oranges/23), (apples/9) '''or'''
+ * (oranges/44), (apples/17), (apples/9), (oranges/23)  '''or''', etc...
+
+That is, the two tables define a partial order, with a complete order within a single table.
+
+To see it fail, try OrangesCall or ApplesCall.
+#
+!3 8. Next
+#
+What if we want to constrain the order of the requests for oranges and apples?
+
+An example is [[on this page][ConstrainSequence]].
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/AlternativeRequests/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/AlternativeRequests/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/AlternativeRequests/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ApplesCall/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ApplesCall/content.txt
new file mode 100644
index 0000000000..947c3b65b0
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ApplesCall/content.txt
@@ -0,0 +1,11 @@
+|''with web services client''|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Apples|
+
+|'''show'''|''headers''|
+
+|'''show'''|''reply''|
+
+|'''show'''|''reply escaped''|
+
+|''xpath''|//count|''in response''|'''is'''|33|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ApplesCall/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ApplesCall/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ApplesCall/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ConstrainSequence/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ConstrainSequence/content.txt
new file mode 100644
index 0000000000..080bd4624f
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ConstrainSequence/content.txt
@@ -0,0 +1,30 @@
+!3 8. Ordering the requests
+#
+If we really want to constrain the order of the requests for oranges and apples, we can do that within a single table.
+
+|''with mock web services''|
+
+|''mock soap11 on port''|8081|
+|''xpath''|//countOf|''is''|Oranges|
+|''response''|44|
+|''response''|23|
+|''then''|
+|''xpath''|//countOf|''is''|Apples|
+|''response''|17|
+|''response''|9|
+
+|''close after''|5|''seconds''|
+
+This will only match the following sequence of calls:
+
+ * (oranges/44), (oranges/23), (apples/17), (apples/9)
+
+OrangesThenApples works.
+
+But OrangesAndApples doesn't.
+#
+!3 9. Next
+#
+What if we want to repeat 0 once there are no more oranges?
+
+An example is [[on this page][RepeatResponse]].
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ConstrainSequence/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ConstrainSequence/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/ConstrainSequence/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FiveOrangeCalls/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FiveOrangeCalls/content.txt
new file mode 100644
index 0000000000..95539abfa7
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FiveOrangeCalls/content.txt
@@ -0,0 +1,21 @@
+|''with web services client''|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|''xpath''|//count|''in response''|'''is'''|44|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|'''show'''|''reply escaped''|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|'''show'''|''reply escaped''|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|'''show'''|''reply escaped''|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|'''show'''|''reply escaped''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FiveOrangeCalls/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FiveOrangeCalls/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FiveOrangeCalls/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FourOrangeCalls/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FourOrangeCalls/content.txt
new file mode 100644
index 0000000000..33a014bc37
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FourOrangeCalls/content.txt
@@ -0,0 +1,17 @@
+|''with web services client''|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|''xpath''|//count|''in response''|'''is'''|44|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|''xpath''|//count|''in response''|'''is'''|23|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|''xpath''|//count|''in response''|'''is'''|10|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|''xpath''|//count|''in response''|'''is'''|0|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FourOrangeCalls/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FourOrangeCalls/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/FourOrangeCalls/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/MatchRequest/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/MatchRequest/content.txt
new file mode 100644
index 0000000000..58a71ef939
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/MatchRequest/content.txt
@@ -0,0 +1,25 @@
+!3 5. Matching the request
+#
+Let's extend the second table, as follow:
+
+|''with mock web services''|
+
+|''mock soap11 on port''|8081|
+|''xpath''|//countOf|''is''|Oranges|
+|''response''|44|
+
+|''close after''|5|''seconds''|
+
+Now, the response of 44 will only be sent if the request exactly matches "oranges":
+
+ * Try it with OrangesCall.
+
+If the request doesn't match, an error (404) is returned:
+
+ * Try running ApplesCall with it to see this error.
+#
+!3 6. Next
+#
+But what if there are several requests, because our system checks regularly for the stock count.
+
+An example of that is on [[this page][RequestSequence]].
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/MatchRequest/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/MatchRequest/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/MatchRequest/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesAndApples/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesAndApples/content.txt
new file mode 100644
index 0000000000..420c396694
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesAndApples/content.txt
@@ -0,0 +1,17 @@
+|''with web services client''|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|''xpath''|//count|''in response''|'''is'''|44|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Apples|
+
+|''xpath''|//count|''in response''|'''is'''|17|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Apples|
+
+|''xpath''|//count|''in response''|'''is'''|9|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|''xpath''|//count|''in response''|'''is'''|23|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesAndApples/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesAndApples/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesAndApples/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesCall/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesCall/content.txt
new file mode 100644
index 0000000000..9c3bb12f76
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesCall/content.txt
@@ -0,0 +1,11 @@
+|''with web services client''|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|'''show'''|''headers''|
+
+|'''show'''|''reply''|
+
+|'''show'''|''reply escaped''|
+
+|''xpath''|//count|''in response''|'''is'''|44|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesCall/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesCall/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesCall/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesThenApples/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesThenApples/content.txt
new file mode 100644
index 0000000000..30764cbf83
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesThenApples/content.txt
@@ -0,0 +1,17 @@
+|''with web services client''|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|''xpath''|//count|''in response''|'''is'''|44|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Oranges|
+
+|''xpath''|//count|''in response''|'''is'''|23|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Apples|
+
+|''xpath''|//count|''in response''|'''is'''|17|
+
+|''to''|http://localhost:8081/ws|''post soap11''|Apples|
+
+|''xpath''|//count|''in response''|'''is'''|9|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesThenApples/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesThenApples/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/OrangesThenApples/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RepeatResponse/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RepeatResponse/content.txt
new file mode 100644
index 0000000000..3f3ad6e10b
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RepeatResponse/content.txt
@@ -0,0 +1,31 @@
+!3 9. Repeating a response
+What if we want the last reponse to be repeated, any number of times. Eg, once the count of oranges gets to 0, it stays at that count:
+
+|''with mock web services''|
+
+|''mock soap11 on port''|8081|
+|''xpath''|//countOf|''is''|Oranges|
+|''response''|44|
+|''response''|23|
+|''response''|10|
+
+|''mock soap11 on port''|8081|
+|''xpath''|//countOf|''is''|Oranges|
+|''response''|0|
+|''repeat''|
+
+|''close after''|5|''seconds''|
+
+This will provide a sequence of responses of: 44, 23, 10, 0, 0, 0, ...
+
+Both FourOrangeCalls and FiveOrangeCalls work.
+
+Some others that fail with it: ApplesCall, OrangesCall.
+
+An error will be given if there are fewer than four requests for orange counts, but four or more are permitted.
+#
+!3 10. Next
+#
+We can have several services on the same port (and we can have them across ports as well)
+
+An example is [[on this page][SeveralServices]].
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RepeatResponse/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RepeatResponse/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RepeatResponse/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RequestSequence/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RequestSequence/content.txt
new file mode 100644
index 0000000000..1d6b6488df
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RequestSequence/content.txt
@@ -0,0 +1,28 @@
+!3 6. A Sequence of Responses for a Request
+We can handle a sequence of requests for the stock count for oranges, where the count may change on each request. We extend the second table, as follows:
+
+|''with mock web services''|
+
+|''mock soap11 on port''|8081|
+|''xpath''|//countOf|''is''|Oranges|
+|''response''|44|
+|''response''|23|
+|''response''|10|
+|''response''|0|
+
+|''close after''|5|''seconds''|
+
+Now, our system will get back responses from 4 requests for oranges: 44, 23, 10, 0.
+
+ * We can try that with FourOrangeCalls
+
+The close will fail unless exactly 4 requests for oranges have been received within the time period.
+
+ * We can try that with too many: FiveOrangeCalls and with too few: OrangesCall
+#
+!3 7. Next
+#
+What if we want to provide counts for apples and oranges?
+
+An example is [[on this page][AlternativeRequests]].
+#
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RequestSequence/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RequestSequence/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/RequestSequence/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/SeveralServices/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/SeveralServices/content.txt
new file mode 100644
index 0000000000..63acc60343
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/SeveralServices/content.txt
@@ -0,0 +1,59 @@
+(The examples from here are not set up to run)
+#
+!3 10. Several services on the same port
+Where there are several web services on the same port, we can distinguish between them. For example:
+
+|''with mock web services''|
+
+|''mock soap11 on port''|8081|
+|''matches URL''|/stockCount|
+|''xpath''|//countOf|''is''|Oranges|
+|''response''|10|
+
+|''mock soap11 on port''|8081|
+|''matches URL''|/creditRating|
+|''xpath''|//user|''is''|1234567|
+|''response''|90|
+
+Then an incoming request is matched against the URL as well as the contents of the request.
+#
+----!3 11. Matching several parts of xml
+#
+The response may depend on several details within the request. For example:
+
+|''mock soap11 on port''|8081|
+|''xpath''|//name[@a="st"]|''is''|street|
+|''xpath''|//address[@id="add"]|''matches''|fanshawe|
+|''response''|out|
+
+Both xpaths in the table above have to match before the response will be used.
+#
+----!3 12. Inserting a matcher to dynamically change the behaviour of the mock web services
+Consider a test in which we want to change the number of oranges available at a specific point in the test.  We can do that by inserting a new matcher at the start of the matchers so that it will be applied first.
+
+Eg:
+|''mock soap11 on port''|8081|
+|''xpath''|//countOf|''is''|Oranges|
+|''response''|0|
+|''repeat''|
+
+... later in the storytest, so that the next request for orange count will return 10, irrespecive of what other matchers specify
+|''mock soap11 on port''|8081|
+|''xpath''|//countOf|''is''|Oranges|
+|''response''|10|
+|''insert''|
+|''repeat''|
+#
+#
+----!3 13. Gathering the data for the Mock Web Services
+#
+See 
+
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+	true
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/SimplyRespond/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/SimplyRespond/content.txt
new file mode 100644
index 0000000000..5ede579918
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/SimplyRespond/content.txt
@@ -0,0 +1,50 @@
+!3 3. Mocking a simple response
+#
+Let's mock a soap1.1 web service that returns the available stock count for a specified item.
+
+ * For our first test, there will be a single request for the count of "oranges" and a single response of "44".
+ * We'd need to configure our system so that it goes to http://localhost:8081.
+  * However, if your system is running on another computer, you'd need to alter the url to suit.
+
+For a start, we'll ignore the details of the request and simply specify the response.
+
+|''with mock web services''|
+
+|''mock soap11 on port''|8081|
+|''response''|44|
+
+The above table immediately starts the mock web services server.
+
+At this point, we'd normally have some other tables that run our system.
+
+ * Eg, it may check that the UI displays that there are 44 oranges.
+ * We'll ignore that aspect here and focus on how to set up mock web services
+
+At the end of the storytest, we close the mock web server, after a delay.
+
+ * It will fail if no request was received on port 8081 or unexpected requests were received.
+ * Details of what happened will then appear in the folding area after the table.
+
+|''close after''|5|''seconds''|
+
+Run this as a '''Test''' and you'll see that it stops after 5 seconds with an error because nothing has connected to the web service.
+#
+----!3 4. Seeing it Run
+#
+To see the above mocking work, open OrangesCall in another browser window so you can see both pages at the same time.
+
+Run this page again and then run OrangesCall.
+
+So now:
+
+ * The final table passes.
+ * The folded log tells us that a single call occurred
+ * OrangesCall also passes
+
+Notice what happens when you run this page and then run OrangesCall twice quickly.
+#
+----!3 5. Next
+#
+But what happens if the web service call asks for the count of ''apples'' instead? We still return 44.
+
+Let's see how to match on the contents of the request [[on this page][MatchRequest]].
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/SimplyRespond/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/SimplyRespond/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/SimplyRespond/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/content.txt
new file mode 100644
index 0000000000..5e6cb25958
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/content.txt
@@ -0,0 +1,22 @@
+!3 1. Why mock Web Services?
+#
+Consider a system ("our" system), which is being tested. It makes web service calls to other systems, to gather data or have an impact on those other systems.
+
+It can be difficult to test our system when we don't have complete control of those other systems. Even if we can set up those other systems to respond appropriately, it can be a pain to coordinate. So often we're forced to test in the context of those other systems, making use of their current data. That brings its own problems. And it may be difficult to force those other systems to respond in odd ways (eg, with obscure errors), so it makes it very difficult to test our error-handling. For example, does our system react correctly, such as informing the user, if another system is unavailable for a few seconds.
+
+There may also be problems with calling a web service that has serious impacts, such as carrying out a credit card payment.
+
+A reasonable approach to these problems is to mock the web service to each of those other systems. This means that the test defines how another system should respond. Because the test is written to test certain behaviour, it's often OK to work out what specific ways the other systems should respond. There are techniques that help in defining the mock behaviour, as we discuss next. We also highlight some of the (fundamental) limitations of this approach.
+#
+----!3 2. Defining Mock Web Services
+''!-MockWebServicesFixture-!'' allows one or more web services to be defined.
+
+ * It can handle soap1.1 and soap1.2, as well as plain text web services.
+ * In the following, we use soap1.1, and discuss the other formats later.
+
+We start simply, and build up to more complex scenarios in the following pages.
+#
+----!3 3. Next
+#
+Let's look at our first example [[on this page][^SimplyRespond]].
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/properties.xml
new file mode 100644
index 0000000000..117d1fa188
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/MockTutorial/properties.xml
@@ -0,0 +1,16 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1255135193312
+	7582220036494114363
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap11/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap11/content.txt
new file mode 100644
index 0000000000..8b5f4714b4
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap11/content.txt
@@ -0,0 +1,14 @@
+|''mock full soap as''| SOAP11|''on port''|8081|
+|''matches URL''|/service|
+|''matches request''|${soap11}in${endSoap11}|
+|''response''|${soap11}out${endSoap11}|
+
+|''to''|http://localhost:8081/service|''as''|SOAP11|''post full soap''|${soap11}in${endSoap11}|'''is'''|${soap11}out${endSoap11}|
+
+|''reply content type''|'''is'''|text/xml;charset=utf-8|
+
+|'''show'''|''reply''|
+
+|'''show escaped'''|''reply''|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap11/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap11/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap11/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap12/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap12/content.txt
new file mode 100644
index 0000000000..1a9c81beb2
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap12/content.txt
@@ -0,0 +1,14 @@
+|''mock full soap as''| SOAP12|''on port''|8081|
+|''matches URL''|/service|
+|''matches request''|${soap12}in${endSoap12}|
+|''response''|${soap12}out${endSoap12}|
+
+|''to''|http://localhost:8081/service|''as''|SOAP12|''post full soap''|${soap12}in${endSoap12}|'''is'''|${soap12}out${endSoap12}|
+
+|''reply content type''|'''is'''|application/soap+xml;charset=utf-8|
+
+|'''show'''|''reply''|
+
+|'''show escaped'''|''reply''|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap12/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap12/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/SingleSoap12/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFile/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFile/content.txt
new file mode 100644
index 0000000000..7f0de9cea4
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFile/content.txt
@@ -0,0 +1,11 @@
+|''create soap file''|test1.xml|''with''|${soap11}out${endSoap11}|
+
+|''mock full soap as''| SOAP11|''on port''|8081|
+|''matches request''|${soap11}in${endSoap11}|
+|''response from file''|!-FitNesseRoot/files/soap/test1.xml-!|
+
+|''to''|http://localhost:8081/service|''as''|SOAP11|''post full soap''|${soap11}in${endSoap11}|'''is'''|${soap11}out${endSoap11}|
+
+|''reply content type''|'''is'''|text/xml;charset=utf-8|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFile/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFile/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFile/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFolder/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFolder/content.txt
new file mode 100644
index 0000000000..3637d5c3dc
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFolder/content.txt
@@ -0,0 +1,15 @@
+|''create soap file''|response1.xml|''with''|${soap11}out1${endSoap11}|
+|''create soap file''|response2.xml|''with''|${soap11}out2${endSoap11}|
+|''create soap file''|response3.xml|''with''|${soap11}out3${endSoap11}|
+
+|''mock full soap as''| SOAP11|''on port''|8081|
+|''matches request''|${soap11}in${endSoap11}|
+|''responses from folder''|!-FitNesseRoot/files/soap-!|
+
+|''to''|http://localhost:8081/service|''as''|SOAP11|''post full soap''|${soap11}in${endSoap11}|'''is'''|${soap11}out1${endSoap11}|
+|''to''|http://localhost:8081/service|''as''|SOAP11|''post full soap''|${soap11}in${endSoap11}|'''is'''|${soap11}out2${endSoap11}|
+|''to''|http://localhost:8081/service|''as''|SOAP11|''post full soap''|${soap11}in${endSoap11}|'''is'''|${soap11}out3${endSoap11}|
+
+|''reply content type''|'''is'''|text/xml;charset=utf-8|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFolder/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFolder/properties.xml
new file mode 100644
index 0000000000..1665cb9759
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap11FromFolder/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFile/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFile/content.txt
new file mode 100644
index 0000000000..d58b3f1dee
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFile/content.txt
@@ -0,0 +1,11 @@
+|''create soap file''|test1.xml|''with''|${soap12}out${endSoap12}|
+
+|''mock full soap as''| SOAP12|''on port''|8081|
+|''matches request''|${soap12}in${endSoap12}|
+|''response from file''|!-FitNesseRoot/files/soap/test1.xml-!|
+
+|''to''|http://localhost:8081/service|''as''|SOAP12|''post full soap''|${soap12}in${endSoap12}|'''is'''|${soap12}out${endSoap12}|
+
+|''reply content type''|'''is'''|application/soap+xml;charset=utf-8|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFile/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFile/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFile/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFolder/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFolder/content.txt
new file mode 100644
index 0000000000..52f64b76e1
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFolder/content.txt
@@ -0,0 +1,15 @@
+|''create soap file''|response1.xml|''with''|${soap12}out1${endSoap12}|
+|''create soap file''|response2.xml|''with''|${soap12}out2${endSoap12}|
+|''create soap file''|response3.xml|''with''|${soap12}out3${endSoap12}|
+
+|''mock full soap as''| SOAP12|''on port''|8081|
+|''matches request''|${soap12}in${endSoap12}|
+|''responses from folder''|!-FitNesseRoot/files/soap-!|
+
+|''to''|http://localhost:8081/service|''as''|SOAP12|''post full soap''|${soap12}in${endSoap12}|'''is'''|${soap12}out1${endSoap12}|
+|''to''|http://localhost:8081/service|''as''|SOAP12|''post full soap''|${soap12}in${endSoap12}|'''is'''|${soap12}out2${endSoap12}|
+|''to''|http://localhost:8081/service|''as''|SOAP12|''post full soap''|${soap12}in${endSoap12}|'''is'''|${soap12}out3${endSoap12}|
+
+|''reply content type''|'''is'''|application/soap+xml;charset=utf-8|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFolder/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFolder/properties.xml
new file mode 100644
index 0000000000..6d61bae3c5
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/Soap12FromFolder/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/content.txt
new file mode 100644
index 0000000000..7f8dcdaed0
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/content.txt
@@ -0,0 +1,14 @@
+!*> xml
+!define soap11 ()
+!define endSoap11 ()
+
+!define soap12 ()
+!define endSoap12 ()
+*!
+
+>SingleSoap11
+^SingleSoap12
+^Soap11FromFile
+^Soap12FromFile
+^Soap11FromFolder
+^Soap12FromFolder
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/properties.xml
new file mode 100644
index 0000000000..1e01581b7d
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/FullSoapMocking/properties.xml
@@ -0,0 +1,14 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/FailingSoapMockServer/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/FailingSoapMockServer/content.txt
new file mode 100644
index 0000000000..5ed4a464b4
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/FailingSoapMockServer/content.txt
@@ -0,0 +1,10 @@
+|''mock ${soap} on port''|8081|
+|''matches URL''|/service|
+|''matches request''|in|
+|''response''|out|
+
+
+|'''reject'''|''to''|http://localhost:8081/service|''post ${soap}''|in|
+
+|''close with errors''|>=|2|
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/FailingSoapMockServer/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/FailingSoapMockServer/properties.xml
new file mode 100644
index 0000000000..48bc6221be
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/FailingSoapMockServer/properties.xml
@@ -0,0 +1,15 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1245705149435
+	279714031012365779
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/NoSoapTransaction/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/NoSoapTransaction/content.txt
new file mode 100644
index 0000000000..29d9ac9b7a
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/NoSoapTransaction/content.txt
@@ -0,0 +1 @@
+|'''reject'''|''to''|http://localhost:8081/service|''post ${soap}''|in|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/NoSoapTransaction/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/NoSoapTransaction/properties.xml
new file mode 100644
index 0000000000..a0558808e0
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/NoSoapTransaction/properties.xml
@@ -0,0 +1,16 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1245376325911
+	6224647533814725195
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SeveralOrMockServices/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SeveralOrMockServices/content.txt
new file mode 100644
index 0000000000..1b0048f6dc
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SeveralOrMockServices/content.txt
@@ -0,0 +1,33 @@
+ * The order of the OR transactions is irrelevant
+
+|''mock ${soap} on port''|8081|
+|''matches URL''|/service2|
+|''matches request''|in|
+|''response''|out|
+
+|''mock ${soap} on port''|8081|
+|''matches URL''|/service2|
+|''matches request''|in|
+|''response''|out2|
+
+|''to''|http://localhost:8081/service2|''post ${soap}''|in|'''is'''|out|
+
+|''to''|http://localhost:8081/service2|''post ${soap}''|in|'''is'''|out2|
+
+ * Now use them in reverse order
+
+|''mock ${soap} on port''|8082|
+|''matches URL''|/service2|
+|''matches request''|in|
+|''response''|out|
+
+|''mock ${soap} on port''|8082|
+|''matches URL''|/service2|
+|''matches request''|in|
+|''response''|out2|
+
+|''to''|http://localhost:8082/service2|''post ${soap}''|in|'''is'''|out2|
+
+|''to''|http://localhost:8082/service2|''post ${soap}''|in|'''is'''|out|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SeveralOrMockServices/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SeveralOrMockServices/properties.xml
new file mode 100644
index 0000000000..b35dce9fe4
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SeveralOrMockServices/properties.xml
@@ -0,0 +1,16 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1245645288644
+	7655949089516713773
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServer/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServer/content.txt
new file mode 100644
index 0000000000..ee4c280d52
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServer/content.txt
@@ -0,0 +1,11 @@
+|''mock ${soap} on port''|8081|
+|''matches URL''|/service|
+|''matches request''|in|
+|''response''|out|
+
+
+|''to''|http://localhost:8081/service|''post ${soap}''|in|'''is'''|out|
+
+|''reply content type''|'''is'''|${replyContentType}|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServer/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServer/properties.xml
new file mode 100644
index 0000000000..e24d35389a
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServer/properties.xml
@@ -0,0 +1,15 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1245642903974
+	-8458871357136631763
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerFromFile/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerFromFile/content.txt
new file mode 100644
index 0000000000..a00dcfa65c
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerFromFile/content.txt
@@ -0,0 +1,9 @@
+|''create soap file''|test1.xml|''with''|out|
+
+|''mock ${soap} on port''|8081|
+|''matches request''|in|
+|''response from file''|!-FitNesseRoot/files/soap/test1.xml-!|
+
+|''to''|http://localhost:8081/service|''post ${soap}''|in|'''is'''|out|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerFromFile/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerFromFile/properties.xml
new file mode 100644
index 0000000000..4af4f03a89
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerFromFile/properties.xml
@@ -0,0 +1,15 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1245645493674
+	4204208404983107785
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerWithRequestFromFile/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerWithRequestFromFile/content.txt
new file mode 100644
index 0000000000..c7379cb784
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerWithRequestFromFile/content.txt
@@ -0,0 +1,10 @@
+|''create soap file''|request.in|''with''|in|
+|''create soap file''|response.xml|''with''|out|
+
+|''mock ${soap} on port''|8081|
+|''matches request from file''|!-FitNesseRoot/files/soap/request.in-!|
+|''response from file''|!-FitNesseRoot/files/soap/response.xml-!|
+
+|''to''|http://localhost:8081/service|''post ${soap}''|in|'''is'''|out|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerWithRequestFromFile/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerWithRequestFromFile/properties.xml
new file mode 100644
index 0000000000..8db0ab1cc2
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SingleSoapMockServerWithRequestFromFile/properties.xml
@@ -0,0 +1,16 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1245706915331
+	-6183359587585787186
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SoapMockServerSequenceFromFolder/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SoapMockServerSequenceFromFolder/content.txt
new file mode 100644
index 0000000000..4064e4eac3
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SoapMockServerSequenceFromFolder/content.txt
@@ -0,0 +1,13 @@
+|''create soap file''|response1.xml|''with''|out1|
+|''create soap file''|response2.xml|''with''|out2|
+|''create soap file''|response3.xml|''with''|out3|
+
+|''mock ${soap} on port''|8081|
+|''matches request''|in|
+|''responses from folder''|!-FitNesseRoot/files/soap-!|
+
+|''to''|http://localhost:8081/service|''post ${soap}''|in|'''is'''|out1|
+|''to''|http://localhost:8081/service|''post ${soap}''|in|'''is'''|out2|
+|''to''|http://localhost:8081/service|''post ${soap}''|in|'''is'''|out3|
+
+|''close''|
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SoapMockServerSequenceFromFolder/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SoapMockServerSequenceFromFolder/properties.xml
new file mode 100644
index 0000000000..08cba1989b
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/SoapMockServerSequenceFromFolder/properties.xml
@@ -0,0 +1,16 @@
+
+
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	1245645800937
+	-2167812181581896504
+
diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathAndMatchingSoapMockServer/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathAndMatchingSoapMockServer/content.txt
new file mode 100644
index 0000000000..06cfd1aab2
--- /dev/null
+++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathAndMatchingSoapMockServer/content.txt
@@ -0,0 +1,15 @@
+!*> xm
+!define match (
+street
+
fanshawe
+
+) +*! +|''mock ${soap} on port''|8081| +|''xpath''|//name[@a="st"]|''is''|street| +|''xpath''|//address[@id="add"]|''is''|fanshawe| +|''response''|out| + +|''to''|http://localhost:8081/service|''post ${soap}''|${match}|'''is'''|out| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathAndMatchingSoapMockServer/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathAndMatchingSoapMockServer/properties.xml new file mode 100644 index 0000000000..e236951f36 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathAndMatchingSoapMockServer/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245645920358 + 2998174899333683091 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeFull/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeFull/content.txt new file mode 100644 index 0000000000..d62f6da773 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeFull/content.txt @@ -0,0 +1,12 @@ +|''mock ${soap} on port''|8081| +|''xpath''|//depart/attribute::location|''is''|SYD| +|''xpath''|//arrive/attribute::location|''is''|AKL| +|''xpath''|!-//start-!|''is''|2009-08-09| +|''xpath''|!-//end-!|''is''|2009-08-11| +|''response''|confirmed| + +!define xml {2009-08-092009-08-11} + +|''to''|http://localhost:8081/service|''post ${soap}''|${xml}|'''is'''|confirmed| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeFull/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeFull/properties.xml new file mode 100644 index 0000000000..efb2a0c1ae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeFull/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1247536740312 + -3965693823116362520 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeValue/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeValue/content.txt new file mode 100644 index 0000000000..0c7e268f4d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeValue/content.txt @@ -0,0 +1,9 @@ +|''mock ${soap} on port''|8081| +|''xpath''|//request/attribute::a|''is''|A| +|''xpath''|//request/attribute::b|''is''|b| +|''xpath''|//start|''is''|now| +|''response''|out| + +|''to''|http://localhost:8081/service|''post ${soap}''|innow|'''is'''|out| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeValue/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeValue/properties.xml new file mode 100644 index 0000000000..aedb49b5bb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchAttributeValue/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1247536036472 + 2915490727633646099 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchingSoapMockServer/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchingSoapMockServer/content.txt new file mode 100644 index 0000000000..451eb527c3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchingSoapMockServer/content.txt @@ -0,0 +1,8 @@ +|''mock ${soap} on port''|8081| +|''xpath''|//request[@a="a"]|''is''|in| +|''response''|out| + + +|''to''|http://localhost:8081/service|''post ${soap}''|in|'''is'''|out| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchingSoapMockServer/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchingSoapMockServer/properties.xml new file mode 100644 index 0000000000..c26d85b2a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMatchingSoapMockServer/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245705280752 + -7443652049489375941 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMismatches/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMismatches/content.txt new file mode 100644 index 0000000000..45b0084a7c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMismatches/content.txt @@ -0,0 +1,8 @@ +|''mock ${soap} on port''|8081| +|''xpath''|//request[@a="b"]|''is''|in| +|''response''|out| + + +|'''reject'''|''to''|http://localhost:8081/service|''post ${soap}''|in| + +|''close with errors''|>=|2| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMismatches/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMismatches/properties.xml new file mode 100644 index 0000000000..93c1dcaf5a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/XpathMismatches/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1247090122487 + -3082226689700459992 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/content.txt new file mode 100644 index 0000000000..429d71a07e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/content.txt @@ -0,0 +1 @@ +!contents diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/MockingSoapShared/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/EmptyResponse/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/EmptyResponse/content.txt new file mode 100644 index 0000000000..4dcff69f06 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/EmptyResponse/content.txt @@ -0,0 +1,7 @@ +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/EmptyResponse/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/EmptyResponse/properties.xml new file mode 100644 index 0000000000..4634a93650 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/EmptyResponse/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245378799442 + 4003589025264651571 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ExplicitResponseCodeInResponse/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ExplicitResponseCodeInResponse/content.txt new file mode 100644 index 0000000000..1463a8a43a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ExplicitResponseCodeInResponse/content.txt @@ -0,0 +1,13 @@ +!2 An explicit error code can be provided in any response. +This is useful to mock service calls that fail with various error codes, including a 404 error. + +|''mock plain text on port''|8081| +|''matches URL''|/ws| +|''matches request''|in| +|''response code''|300|''with''|out| + + * When we call the web service it fails because of the result code not being 200: + +|'''reject'''|''to''|http://localhost:8081/ws|''post text''|in| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ExplicitResponseCodeInResponse/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ExplicitResponseCodeInResponse/properties.xml new file mode 100644 index 0000000000..c4a0c82c66 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ExplicitResponseCodeInResponse/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1246935688306 + -6639580832248496524 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/IncorrectRequest/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/IncorrectRequest/content.txt new file mode 100644 index 0000000000..4d8504ee94 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/IncorrectRequest/content.txt @@ -0,0 +1,8 @@ + * A request/response is consumed even if it doesn't match +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| + +|'''reject'''|''to''|http://localhost:8081/ws|''post text''|wrong| + +|''close with errors''|>=|1| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/IncorrectRequest/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/IncorrectRequest/properties.xml new file mode 100644 index 0000000000..14e7e1e922 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/IncorrectRequest/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245381451961 + -4040620684162476847 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/InsertOrTermOnPort/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/InsertOrTermOnPort/content.txt new file mode 100644 index 0000000000..f553ddfee1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/InsertOrTermOnPort/content.txt @@ -0,0 +1,21 @@ +!3 Distinct term tables are alternatives, and can be used in either order. But later terms won't be effective if earlier ones match. In the following, we insert an or term at the start to revise the expectations. +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| + +|''mock plain text on port''|8081| +|''matches request''|in2| +|''response''|out2| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| + +|''mock plain text on port''|8081| +|''insert''| +|''matches request''|in2| +|''response''|out| + +|''to''|http://localhost:8081/ws|''post text''|in2|'''is'''|out| + +|''to''|http://localhost:8081/ws|''post text''|in2|'''is'''|out2| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/InsertOrTermOnPort/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/InsertOrTermOnPort/properties.xml new file mode 100644 index 0000000000..36ea0555b8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/InsertOrTermOnPort/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1248399894828 + 5090084439600980494 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/MissingRequest/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/MissingRequest/content.txt new file mode 100644 index 0000000000..b7fb048fa6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/MissingRequest/content.txt @@ -0,0 +1,9 @@ +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| + +|'''reject'''|''to''|http://localhost:8081/ws|''post text''|in two| + +|''close with errors''|>=|1| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/MissingRequest/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/MissingRequest/properties.xml new file mode 100644 index 0000000000..367a3d0098 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/MissingRequest/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245378877912 + 7124320178030727424 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMatcher/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMatcher/content.txt new file mode 100644 index 0000000000..28abe46caa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMatcher/content.txt @@ -0,0 +1,14 @@ +!3 Distinct term tables are alternatives, and can be used in either order +|''mock plain text on port''|8081| +|''not matches request''|in| +|''response''|not out| + +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| + +|''to''|http://localhost:8081/ws|''post text''|not in|'''is'''|not out| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMatcher/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMatcher/properties.xml new file mode 100644 index 0000000000..e24720c9dd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMatcher/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1245378911584 + -8052365718023754982 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMockingOnPort/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMockingOnPort/content.txt new file mode 100644 index 0000000000..094dfbf407 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMockingOnPort/content.txt @@ -0,0 +1,3 @@ +|'''reject'''|''to''|http://localhost:8081/WS|''post text''|in| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMockingOnPort/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMockingOnPort/properties.xml new file mode 100644 index 0000000000..192a0c28c0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/NotMockingOnPort/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245378928006 + 9087836613025106558 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/OrTermOnPort/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/OrTermOnPort/content.txt new file mode 100644 index 0000000000..77b0bb3d48 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/OrTermOnPort/content.txt @@ -0,0 +1,26 @@ +!3 Distinct term tables are alternatives, and can be used in either order +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| + +|''mock plain text on port''|8081| +|''matches request''|in2| +|''response''|out2| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| + +|''to''|http://localhost:8081/ws|''post text''|in2|'''is'''|out2| + +|''mock plain text on port''|8082| +|''matches request''|in| +|''response''|out| + +|''mock plain text on port''|8082| +|''matches request''|in2| +|''response''|out2| + +|''to''|http://localhost:8082/ws|''post text''|in2|'''is'''|out2| + +|''to''|http://localhost:8082/ws|''post text''|in|'''is'''|out| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/OrTermOnPort/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/OrTermOnPort/properties.xml new file mode 100644 index 0000000000..ddb5305296 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/OrTermOnPort/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1245379011711 + 4333779394673753960 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/RepeatingTermOnPort/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/RepeatingTermOnPort/content.txt new file mode 100644 index 0000000000..4b572601eb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/RepeatingTermOnPort/content.txt @@ -0,0 +1,13 @@ +!3 ''Then'' within a term table defines a required order (a sequence) + * Here the order is followed: + +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| +|''repeat''| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/RepeatingTermOnPort/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/RepeatingTermOnPort/properties.xml new file mode 100644 index 0000000000..a9b4aff207 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/RepeatingTermOnPort/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1245381239239 + 7096503514032867196 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ResponsesFromFolder/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ResponsesFromFolder/content.txt new file mode 100644 index 0000000000..a23e26c5d3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ResponsesFromFolder/content.txt @@ -0,0 +1,13 @@ +|''create soap file''|test1.txt|''with''|out1| +|''create soap file''|test2.txt|''with''|out2| +|''create soap file''|test3.txt |''with''|out3| + +|''mock plain text on port''|8081| +|''matches request''|in| +|''responses from folder''|!-FitNesseRoot/files/soap-!| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out1| +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out2| +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out3| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ResponsesFromFolder/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ResponsesFromFolder/properties.xml new file mode 100644 index 0000000000..d577ea3afe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ResponsesFromFolder/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1245381286974 + 1958615779456936594 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPort/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPort/content.txt new file mode 100644 index 0000000000..ef6f2a3042 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPort/content.txt @@ -0,0 +1,14 @@ +!3 ''Then'' within a term table defines a required order (a sequence) + * The order is followed: + +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| +|''then''| +|''matches request''|in2| +|''response''|out2| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| +|''to''|http://localhost:8081/ws|''post text''|in2|'''is'''|out2| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPort/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPort/properties.xml new file mode 100644 index 0000000000..08d8e0e7c7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPort/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1245381107128 + 9076863263005792812 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortNoMatcher/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortNoMatcher/content.txt new file mode 100644 index 0000000000..3bc3fe7598 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortNoMatcher/content.txt @@ -0,0 +1,11 @@ +!3 ''Then'' within a term table defines a required order (a sequence) + * Here the order is followed: + +|''mock plain text on port''|8081| +|''response''|out| +|''response''|out2| + +|''to''|http://localhost:8081/ws|''post text''|anything|'''is'''|out| +|''to''|http://localhost:8081/ws|''post text''|anything else|'''is'''|out2| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortNoMatcher/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortNoMatcher/properties.xml new file mode 100644 index 0000000000..ee4646cf2b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortNoMatcher/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1245381191067 + 3933936286041318331 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortReverse/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortReverse/content.txt new file mode 100644 index 0000000000..8b9ce6bca1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortReverse/content.txt @@ -0,0 +1,16 @@ +!3 ''Then'' within a term table defines a required order (a sequence) + + * The requests come in reverse order and therefore the first one fails: + +|''mock plain text on port''|8082| +|''matches request''|in| +|''response''|out| +|''then''| +|''matches request''|in2| +|''response''|out2| + +|'''reject'''|''to''|http://localhost:8082/ws|''post text''|in2| + +|''to''|http://localhost:8082/ws|''post text''|in|'''is'''|out| + +|''close with errors''|>=|1| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortReverse/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortReverse/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortReverse/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortSameMatcher/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortSameMatcher/content.txt new file mode 100644 index 0000000000..4665b19a18 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortSameMatcher/content.txt @@ -0,0 +1,12 @@ +!3 ''Then'' within a term table defines a required order (a sequence) + * Here the order is followed: + +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| +|''response''|out2| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out2| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortSameMatcher/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortSameMatcher/properties.xml new file mode 100644 index 0000000000..6fb4219635 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SequenceTermOnPortSameMatcher/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1245381212676 + 3043206591718206580 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ServiceMismatch/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ServiceMismatch/content.txt new file mode 100644 index 0000000000..c1c3a10d9d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ServiceMismatch/content.txt @@ -0,0 +1,8 @@ +|''mock plain text on port''|8081| +|''matches URL''|/ws| +|''matches request''|in| +|''response''|out| + +|'''reject'''|''to''|http://localhost:8081/service|''post text''|in| + +|''close with errors''|>=|2| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ServiceMismatch/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ServiceMismatch/properties.xml new file mode 100644 index 0000000000..f83b20f695 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/ServiceMismatch/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1245381396366 + -5959689115494402279 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServer/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServer/content.txt new file mode 100644 index 0000000000..13c74ac694 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServer/content.txt @@ -0,0 +1,12 @@ +|''mock plain text on port''|8081| +|''matches URL''|/ws| +|''matches request''|i.n| +|''response''|out| + +|''start logging''| + +|''to''|http://localhost:8081/ws|''post text''|inn|'''is'''|out| + +|''reply content type''|'''is'''|text/xml;charset=utf-8| + +|''close after''|200| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServer/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServer/properties.xml new file mode 100644 index 0000000000..297830afee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServer/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1252297341754 + -5969383044230390693 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerEquals/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerEquals/content.txt new file mode 100644 index 0000000000..6ff6b2b4a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerEquals/content.txt @@ -0,0 +1,8 @@ +|''mock plain text on port''|8081| +|''matches URL''|/ws| +|''equals request''|in| +|''response''|out| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerEquals/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerEquals/properties.xml new file mode 100644 index 0000000000..858f9bec5c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerEquals/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1252297078788 + 6895709407450746631 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerWithSeveralRequests/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerWithSeveralRequests/content.txt new file mode 100644 index 0000000000..e0493a7ede --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerWithSeveralRequests/content.txt @@ -0,0 +1,13 @@ +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| + +|''mock plain text on port''|8081| +|''matches request''|in2| +|''response''|out2| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| + +|''to''|http://localhost:8081/ws|''post text''|in2|'''is'''|out2| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerWithSeveralRequests/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerWithSeveralRequests/properties.xml new file mode 100644 index 0000000000..5a93137989 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockServerWithSeveralRequests/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245379084196 + 6716763753327887309 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockWithNoMatcher/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockWithNoMatcher/content.txt new file mode 100644 index 0000000000..994b836b5d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockWithNoMatcher/content.txt @@ -0,0 +1,6 @@ +|''mock plain text on port''|8081| +|''response''|out| + +|''to''|http://localhost:8081/ws|''post text''|anything|'''is'''|out| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockWithNoMatcher/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockWithNoMatcher/properties.xml new file mode 100644 index 0000000000..e695cbff25 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SingleMockWithNoMatcher/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1245379062180 + 1033219429638813465 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SomeUnusedRequests/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SomeUnusedRequests/content.txt new file mode 100644 index 0000000000..cb57b65c52 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SomeUnusedRequests/content.txt @@ -0,0 +1,12 @@ +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| + +|''mock plain text on port''|8082| +|''matches request''|in2| +|''response''|out2| + +|check|''to''|http://localhost:8081/ws|''post text''|in|out| + +|''close with errors''|'''is'''|1| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SomeUnusedRequests/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SomeUnusedRequests/properties.xml new file mode 100644 index 0000000000..5ff92ed16a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/SomeUnusedRequests/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245381027158 + 418392130887784926 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/TwoMockServers/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/TwoMockServers/content.txt new file mode 100644 index 0000000000..433ca88bbe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/TwoMockServers/content.txt @@ -0,0 +1,13 @@ +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| + +|''mock plain text on port''|8082| +|''matches request''|in2| +|''response''|out2| + +|''to''|http://localhost:8081/ws|''post text''|in|'''is'''|out| + +|''to''|http://localhost:8082/ws|''post text''|in2|'''is'''|out2| + +|''close''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/TwoMockServers/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/TwoMockServers/properties.xml new file mode 100644 index 0000000000..da51293b16 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/TwoMockServers/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245380994673 + 4465180317255698227 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/UnusedRequest/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/UnusedRequest/content.txt new file mode 100644 index 0000000000..6575ebb992 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/UnusedRequest/content.txt @@ -0,0 +1,9 @@ +|''mock plain text on port''|8081| +|''matches request''|in| +|''response''|out| + +|''mock plain text on port''|8081| +|''matches request''|in2| +|''response''|out2| + +|''close with errors''|'''is'''|2| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/UnusedRequest/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/UnusedRequest/properties.xml new file mode 100644 index 0000000000..6f69290428 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/UnusedRequest/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1244495694969 + -896659378744149292 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/content.txt new file mode 100644 index 0000000000..a07160c401 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/content.txt @@ -0,0 +1,28 @@ +^SingleMockServer +^SingleMockWithNoMatcher +^SingleMockServerEquals +^SingleMockServerWithSeveralRequests +^IncorrectRequest +>NotMockingOnPort +^MissingRequest +^UnusedRequest +^EmptyResponse + +^TwoMockServers +^SomeUnusedRequests + +^OrTermOnPort +^SequenceTermOnPort +^SequenceTermOnPortReverse +>SequenceTermOnPortNoMatcher +>SequenceTermOnPortSameMatcher +^RepeatingTermOnPort + +^InsertOrTermOnPort + +^NotMatcher +^ResponsesFromFolder + +^ServiceMismatch + +^ExplicitResponseCodeInResponse \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/properties.xml new file mode 100644 index 0000000000..d325591147 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/PlainTextServices/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1252297066662 + 5955213532047704892 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/SetUp/content.txt new file mode 100644 index 0000000000..be53986b0f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/SetUp/content.txt @@ -0,0 +1,3 @@ +!|fitlibrary.mockWebServices.specify.SpecifyWebServiceServers| + +|'''also run'''|''with web services client''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/SetUp/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/SetUp/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap11Mocking/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap11Mocking/content.txt new file mode 100644 index 0000000000..53114149e5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap11Mocking/content.txt @@ -0,0 +1,4 @@ +!contents -R + +!define soap {soap11} +!define replyContentType {text/xml;charset=utf-8} \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap11Mocking/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap11Mocking/properties.xml new file mode 100644 index 0000000000..38f5ef0ab4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap11Mocking/properties.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + MockingSoapShared + + + + 1255138438890 + 3395114841941256596 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap12Mocking/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap12Mocking/content.txt new file mode 100644 index 0000000000..b1d12d9616 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap12Mocking/content.txt @@ -0,0 +1,4 @@ +!contents -R2 -g -p -f -h + +!define soap {soap12} +!define replyContentType {application/soap+xml;charset=utf-8} diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap12Mocking/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap12Mocking/properties.xml new file mode 100644 index 0000000000..512859bc51 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/Soap12Mocking/properties.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + MockingSoapShared + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/content.txt new file mode 100644 index 0000000000..224f651e51 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/content.txt @@ -0,0 +1,8 @@ +|!3 ^PlainTextServices|''Specifications for mocking plain text web services''| +|!3 >Soap11Mocking|''Specifications for mocking SOAP 1.1 web services''| +|!3 >Soap12Mocking|''Specifications for mocking SOAP 1.2 web services''| +|!3 >FullSoapMocking|''Specification for mocking soap and providing full soap headers (eg, to include security information)''| + +>MockingSoapShared -- ignore this, it's used for soap11, soap12 and raw soap specs above, each with different variables to suit + +^SetUp diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/properties.xml new file mode 100644 index 0000000000..56af35643c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/SpecifiCations/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/content.txt new file mode 100644 index 0000000000..f897427e51 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/content.txt @@ -0,0 +1,2 @@ +|!3 >MockTutorial|''Documentation for mocking web services''| +|!3 ^SpecifiCations|''Storytests that specify/text mock web services''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/properties.xml new file mode 100644 index 0000000000..4236a100e4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/MockWebServices/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1255304057156 + -8218345289499545715 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/PageFooter/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/PageFooter/content.txt new file mode 100644 index 0000000000..aac992a059 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/PageFooter/content.txt @@ -0,0 +1,8 @@ +!**< glossary reference definitions +!define copyright {''Copyright (c) 2004 - 2010'' [[''Rick Mugridge''][.FitLibrary.GlosSary.RickMugridge]], ''http://www.rimuresearch.com''} +!define gpl2 (''Released under the terms of the GNU General Public License version 2 or later.'') +**! +----${copyright} +${gpl2} + +([[!-FitLibrary.Specifications-!][.FitLibrary.SpecifiCations]]) ([[!-FitLibrary.UserGuide-!][.FitLibrary.UserGuide]]) ([[!-FitLibrary.Glossary-!][.FitLibrary.GlosSary]]) \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/PageFooter/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/PageFooter/properties.xml new file mode 100644 index 0000000000..7b7e28a40d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/PageFooter/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1255132782953 + -2705947675132676063 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/RunningExample/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/RunningExample/content.txt new file mode 100644 index 0000000000..420842bf81 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/RunningExample/content.txt @@ -0,0 +1,70 @@ +Here's the pdf file that this storytest looks at: http://files/pdf/eg.pdf. + + * It's worth reading this as it is a document that discusses the issues in accessing text from PDFs. + +|''with PDF''| + +|''open''|pdf/eg.pdf| + +|''number of pages''|'''is'''|2| + +|''select all pages''| + +|'''show'''|''text''| + + * We can check that the whole document contains some specific text: + +|''text''|''contains''|PDF| + +|''text''|''contains''|PDF Format| + +|''text''|''contains''|PDF Format PDFs do not retain paragraph| + + * We can use pattern matching if we want to ignore parts of the document: + +|''text''|''matches''|PDF Format PDFs do not .* paragraph| + + * The footer appears twice (and it is added in the middle of the main text): + +|''text''|''matches''|Extracting Paragraphs from PDFs.*Extracting Paragraphs from PDFs| + + * The flow of text from one column to the next is captured here (luckily, but not between pages): + +|''text''|''matches''|If the space between that line and the previous one is larger than a space threshhold| + + * We can use the paragraph structure to select a relative paragraph: + +|''paragraph below heading''|pdfbox|'''contains'''|extracts the text elements| + +|''paragraph after containing''|Limitations|'''contains'''|a simple approach| + + * Show the text with breaks between the paragraphs, to make it easier to see the results: + +|show|paragraphed text| + + * We can match some of the paragraphs: + +|paragraphs from|0|to|6| +|Extracting Paragraphs from PDF Files| +|PDF Format| +|PDFs do not retain paragraph, heading, etc information. Instead, a PDF encodes a rendered form of a document, rather like the individual characters that are rendered on a screen. A PDF file can be thought of as containing a sequence of pieces of information. Each piece of text is located at a particular (x,y,z) position, along with font information.| +|Depending on the application writing the PDF file, a word may be added as a single word, or it may be added as several substrings. Some applications tend to add each of the characters of a word separately.| +|Space characters are not (usually) added to the file, as they don't add anything to the rendering.| +|pdfbox| +|PDFDocument uses pdfbox to do much of the work. pdfbox extracts the text elements from a PDF file, taking account of columns of text and pages. pdfbox works out where to add spaces, and is configured by PDFDocument to add a space at the end of each line.| + +|show|text| + +|''select page''|2| + +|show|paragraphed text| + + * This shows the affect of customising the heuristics: + +|''customise''| +|''basic paragraph drop''|4| +|''height space factor''|0.5| + +|show|paragraphed text| + +|''close PDF file''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/RunningExample/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/RunningExample/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/RunningExample/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/content.txt new file mode 100644 index 0000000000..3404a8c677 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/content.txt @@ -0,0 +1,90 @@ +The PdfDocument fixture allows for the text within a PDF file to be checked. + +Paragraph information is no longer explicit in a PDF. + + * PdfDocument uses some simple heuristics to try and segment the text into paragraphs. + * However, it is weak at doing this in general. + +Here's a document that discusses the issues in accessing text from PDFs and tuning the paragraph-segmenting heuristics in PdfDocument: + + * http://files/pdf/eg.pdf. +# +!2 Example +# +Here's a >RunningExample +# +!2 Commands +# +!3 1. Start, Open, Close +# + * Start checking PDF: + +|''with PDF''| + + * Open a PDF file: + +|''open''|Submission.pdf| + + * Finish processing the pdf by closing the file: + +|''close PDF file''| +# +!3 2. Pages +# + * Confirm the number of pages: + +|''number of pages''|''is''|2| + + * Select a specific page: + +|''select page''|1| + + * Select all pages + +|''select all pages''| +# +!3 3. Checking for text anywhere +# + * Show the text of the current page(s): + +|'''show'''|''text''| + + * Check that a string appears somewhere in the text in the current page(s): + +|''text''|''contains''|Thanks for your submission| + + * Check that the regular expression appears somewhere in the text in the current page(s): + +|''text''|''matches''|Thanks for yo.* submission| +# +!3 4. Paragraphs +# + * Select the text below a given heading and up to the next heading (can also use '''contains''' and '''matches''': + +|''paragraph below heading''|Follow Up:|''is''|We will contact you in the next few days to provide feedback on your submission.| + + * Select the text below a given heading and up to the next heading (can also use '''contains''' and '''matches''': + +|''paragraph after containing''|Conclusions|''contains''|There's no more to say on this topic.| + + * Check a range of paragraphs: + +|paragraphs from|0|to|3| +|Extracting Paragraphs from PDF Files| +|PDF Format| +|PDFs do not retain paragraph, heading, etc information. Instead, a PDF encodes a rendered form of a document, rather like the individual characters that are rendered on a screen. A PDF file can be thought of as containing a sequence of pieces of information. Each piece of text is located at a particular (x,y,z) position, along with font information.| +|Depending on the application writing the PDF file, a word may be added as a single word, or it may be added as several substrings. Some applications tend to add each of the characters of a word separately.| +# +!3 5. Dump Image +# + * Dump an image of the PDF and include it in the storytest report: + +|''show pdf as image''| + +This only works with some PDFs. For example, the PDF provided in the ^RunningExample doesn't display the characters. +# +!2 Implementation +# +This uses the apache open-source ''pdfbox'' system. + +See http://incubator.apache.org/pdfbox/ for further details. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/properties.xml new file mode 100644 index 0000000000..daea8852a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/PdfDocument/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254800328325 + -6941426490563933682 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/RecordingDocumentation/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/RecordingDocumentation/content.txt new file mode 100644 index 0000000000..224b0ee530 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/RecordingDocumentation/content.txt @@ -0,0 +1,60 @@ +The Recorder will pass through and record web service calls on multiple ports. For each port, for each web service call: + + * The call is passed on to the real web service + * The result from that call to the real web service is returned + * The request and response are saved to files +# +!2 Running +# +The recorder is started with the following command (where the classpath needs to be filled in with jars from the ''lib'' folder: + +!-java -cp ... fitlibrary.ws.recorder.WebServicesRecorder record.config recordingResults SOAP12-! + +where: + + * ''record.config'' is the name of a property file which specifies what is to be recorded (its contents are defined below). + * ''recordingResults'' is the folder where the results are to be recorded and ''record.config'' is a property file that defines ports to record on, etc. + * The last, optional argument is "SOAP11" or "SOAP12" ("SOAP11" is the default). + +When you've recorded sufficient web service calls, simply stop/kill the above Java program. +# +!2 Property file +# +This defines what ports are to be recorded from. + +Here's an example property file: + +----localPort1: 8081 +ws1:http://realWS:8080 +---- +This defines one port to record on, and the real web service URL (just host and port). + +In general, one or more ports can be defined with ''localPortN'' and ''wsN'', where ''N'' is 1, 2, 3, ... in sequence. + +For example, a second port could be added to the file above with the following extra lines: +----localPort2: 8082 +ws2:http://realWS2:8080 +----!2 Recorded files +For a given run of the recorder, it records the request/responses pairs in a folder with a time-specific name like "2009-06-23_11-33" within the recording folder defined on the command line. With the time-based folder it creates the following files: + * storytest8081.text + * The name includes the port number that the web service call was received on + * It contains the wiki required to directly use the mock web service system. This text will need to be pasted into a storytest in !-FitNesse-! to make use of it. + * !-Port8081Response1-! + * The first request/response + * The name includes the port number concerned and the request/response number on that port + * A folder that contains two files, containing the request and the response, in ''request.zml'' and ''response.xml'' + * !-Port8081Response2-! + * The second request/response + * etc +# +!2 Using the results +# +Direct recordings of web service calls are a good start, but it's likely to be necessary to alter them for longer term use. The following changes are likely to be needed, to reduce maintenance cost and to allow for changes in the order of web service calls that make sense: + + * If soap1.1 or soap1.2 are being used with standard xml wrappers, these can be removed from the files and the tables changed to reflect the specific soap version. + * If some parts of the xml in the request are irrelevant to the call, it would be better to use an xpath for matching instead of a complete match. + * If there are dates encoded in the request and/or response, it may be necessary to use templating to plug in suitable dates in the request and/or response. + * if several requests and/or responses are much the same, except for minor data, it may be better to use templating for them instead. + * if a sequence of requests that are much the same should be responded to with a standard sequence of reponses, these could be encoded with ''responses from folder'' in the table. + * If the last request/responses in a sequence are all the same, they can be replaced with a ''repeat'' in the table. + * If there are several different types of web service call on a single port, they will be recorded as a sequence. However, the sequence may apply to the two services independently. In that case the tables setting up the mock web services will need to be split into two separate sequences. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/RecordingDocumentation/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/RecordingDocumentation/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/RecordingDocumentation/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/SpecifiCation/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/SpecifiCation/content.txt new file mode 100644 index 0000000000..76ffd9c791 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/SpecifiCation/content.txt @@ -0,0 +1,51 @@ +|''with recording web services''| + +|''relative file''|recorder.properties| +|''write''|localPort1: 8094\nws1:http://localhost:8098\n| + +|''start recorder with properties at''|!-FitNesseRoot-!/files/recorder.properties|''adding results to''|testFolder|''in folder''|!-FitNesseRoot-!/files/recorder|''with soap version''|SOAP12| + +|'''also run'''|''with web server for testing''| + +|''start file server on port''|8098|''at directory''|!-FitNesseRoot-!| + +|'''also run'''|''with web services client''| + +|''to''|http://localhost:8094/ws|''post soap12''|100| + +|''stop recorder''| + +|''stop testing server''| + +|''relative file''|recorder/testFolder| +|'''show'''|''list''| + +|''relative file''|recorder/testFolder/storytest8094.txt| +|'''show predefined'''|''read''| +|''read''|'''contains'''|mock full soap as| +|''read''|'''contains'''|SOAP12| +|''read''|'''contains'''|8094| +|''delete''| + +|''relative file''|!-recorder/testFolder/Port8094Response1-!| +|'''show'''|''list''| + +|''relative file''|!-recorder/testFolder/Port8094Response1/request.xml-!| +|'''show escaped'''|''read''| +|''delete''| + +|''relative file''|!-recorder/testFolder/Port8094Response1/response.xml-!| +|'''show escaped'''|''read''| +|''delete''| + +|''relative file''|recorder.properties| +|''delete''| + +|''relative file''|!-recorder/testFolder/Port8094Response1-!| +|''delete''| + +|''relative file''|recorder/testFolder| +|''delete''| + +|''relative file''|recorder| +|''delete''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/SpecifiCation/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/SpecifiCation/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/SpecifiCation/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/content.txt new file mode 100644 index 0000000000..2d8b877a5f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/content.txt @@ -0,0 +1,2 @@ +|''Documentation''|^RecordingDocumentation| +|''Specification''|^SpecifiCation| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/properties.xml new file mode 100644 index 0000000000..346cdea3f7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/RecordWebServices/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1255134682250 + 2577326385553700365 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/JavaExample/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/JavaExample/content.txt new file mode 100644 index 0000000000..4eefb160c9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/JavaExample/content.txt @@ -0,0 +1,18 @@ +|''with shell''| + +|''synchronously''|java -help| + +|''wait to finish''| + +|''sys out line''|'''is'''|Usage: java [-options] class [args...]| +|''sys out line''|'''is'''|(to execute a class)| + +|''first matching line with''|hot|''in sys out''|'''matches'''|synonym| + +|''first matching line with''|verbose|''in sys out''|'''matches'''|jni| + +|''first matching line with''|splash|''in sys out''| + +|''sys out line''|'''matches'''|splash scr..n| + +|'''show'''|outputs remaining| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/JavaExample/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/JavaExample/properties.xml new file mode 100644 index 0000000000..1a601431e3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/JavaExample/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1253494664066 + 7923190637007842871 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/content.txt new file mode 100644 index 0000000000..5f4a1482c3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/content.txt @@ -0,0 +1,58 @@ +!2 A fixture for running local commands through a shell +# +This a variation of a fixture available with ''!-FitNesse-!''. However, as ''!-FitLibrary-!'' allows for multiple fixtures running at once, this handles a single shell command. + +>JavaExample + +# +----!3 Starting and Finishing +# + * To start a shell command and wait for it to finish: + +|''with shell''| + +|''synchronously''|java -help| + + * To start a shell command but not wait for it to finish, so that the output can be processed as it's running: + +|''asynchronously''|java -help| + + * To wait for the process to finish: + +|''wait to finish''| + +|''wait to finish''|2000| +# +----!3 Checking next output (sys out and sys err) +# + * Check the contents of the next line of output (the line is then discarded): + +|''sys out line''|'''is'''|Usage: java [-options] class [args...]| + +|''sys out line''|'''contains'''|(to execute a class)| + +|''sys err line''|'''contains'''|!-RuntimeException-!| + + * Check the contents of the next line of output, but only wait for a given period in milliseconds (only relevant with asynchronous execution): + +|''sys out line waiting for''|10|'''contains'''|(to execute a class)| + +|''sys err line waiting for'''|10|'''matches'''|Exception.*| + + * Scan through the lines of output until finding a match (the lines are discarded): + +|''first matching line with''|hot|''in sys out''|'''matches'''|synonym| + +|''first matching line with''|verbose|''in sys err''|'''matches'''|jni| + + * Scan through the lines of output until finding a match with a timeout (the lines are discarded): + +|''first matching line with''|hot|''waiting for''|200|''in sys out''|'''matches'''|synonym| + +|''first matching line with''|verbose|''waiting for''|200|''in sys err''|'''matches'''|jni| + +----!3 Remaining output +|'''show'''|''outputs remaining''| + +----!3 Providing input +|''write input''|Hello World| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/properties.xml new file mode 100644 index 0000000000..a8bcec09f5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/ShellFixture/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1255134613140 + 3879626067424076489 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/AutoChangeCheck/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/AutoChangeCheck/content.txt new file mode 100644 index 0000000000..dab83e3f09 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/AutoChangeCheck/content.txt @@ -0,0 +1,34 @@ +Several actions that make immediate changes also verify that the change has happened. + +The actions concerned are: + +|''with''|locator|''set text''|text| + +|''with''|locator|''add text''|text| + +|''with''|locator|''select''|true| + +|''with''|locator|''select option''|option| + +|''with''|locator|''select option at''|3| + +|''with''|locator|''add selection''|option| + +|''with''|locator|''remove selection''|option| +# +!2 Changing such checking +# +The checking can be turned off with the action: + +|''set checking''|false| + +And turned on again with the action: + +|''set checking''|true| + +There is a timeout period for checking, because they may be a delay due to !-JavaScript-!. The actions repeatedly check until either the value changes as expected or the timeout period is reached. If it times out, an error is given. + +The timeout period for checking can be altered, as follows (in milliseconds): + +|''checking timeout''|100| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/AutoChangeCheck/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/AutoChangeCheck/properties.xml new file mode 100644 index 0000000000..0ca71095a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/AutoChangeCheck/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1254874723263 + -1690588585266721601 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/CommandUserGuide/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/CommandUserGuide/content.txt new file mode 100644 index 0000000000..3e66349b58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/CommandUserGuide/content.txt @@ -0,0 +1,521 @@ +!*****> Page traversal: Get url, click, back, forward, title, url, poll url + + * Get the given url ([[spec][ Form Submit + + * Submit the form identified by an xpath ([[spec][ Checking and changing text + + * Check (exactly) the text of a text area, input text, or any element ([[spec][orange| + + * Check the text and prune inner tags' content ([[spec][ Matching text anywhere in the page + + * Check whether some text (or a pattern) occurs anywhere in the source of the page (includes the html) ([[spec][ Checkbox and radio button + +([[checkbox spec][ Select options + +([[spec][ Multi-select options + +([[spec][ General elements: existence, value, attributes and count + + * Does a given element exist on the page? ([[spec][ Applying commands to elements under a selected element + +([[spec][ Finding an element by (partially) matching on its attributes + +([[spec][ Tables + +([[spec][ Frames + +([[spec][ iFrames + +([[spec][ Alerts + +([[spec][ Windows + +([[spec][ Screen dump + + * This shows a screen dump or the html source, as well as displaying the html to sys out: + +|'''show'''|''screen dump''| + +To include a screen dump on shutdown if there were any errors: + +|''shut down with screen dump on failure''| +---- +**********! +# +!*****> Cookies + + * Add the given cookie: + +|''add cookie''|customer|''with value''|bach| + + * Delete a cookie: + +|''delete cookie''|customer| + + * Delete all cookies: + +|''delete all cookies''| + + * Check the value of each of the cookies: + +|''cookies''| +|''name''|''value''| +|customer|bach| +|id|123456| +---- +**********! +# +!*****> Lookup table + +A lookup table is a way of looking up one value, given another. This is useful to map between the values used in high-level storytests and the values that are needed to selection an option in a select, for example. Pattern matching is used to match the input value. + +|''lookup''| +|given|result?| +|one|1| +|two|2| +|thr.*|3| + +This takes the value of the dynamic variable ''given'' and tries to match it (with pattern matching) to the values in that column. If one matches, it binds the corresponding value in the second column to the dynamic variable ''result''. + +For example, if ''given'' has the value "two", ''result'' will be bound to the value "2". + +In the following, we use the ''result'' in selecting an option: + +|''with''|//select[@name="colour"]|''select option''|@{result}| +---- +**********! +# +!*****> Mouse speed + + * Change the mouse speed to slow or fast: + +|''mouse speed''|'''is'''|slow| + +|''make mouse speed''|fast| +---- +**********! +# +!*****> Execute ''!-JavaScript-!'' + +|''execute !-JavaScript-!''|var xxx = 1;| +---- +**********! +# +!*****> General error diagnostics + +When a website responds with an error message that's not expected, it's handy if diagnostic information is automatically provided about this in the storytest report. + +To request such diagnostic information whenever it occurs, use the following action: + +|''show error diagnostics at''|//div[@name='error']|''when page contains''|.*error| + +Given this, the page is checked for the given regular expression in the following circumstances: + + * The title is checked, as with: + +|''title''|'''is'''|Help| + + * An explicit check is requested, with: + +|''check for error''| + +If the page matches the regular expression, the text of the given xpath element is shown in the report. If there is no xpath given or no matching element, the whole page is shown (as plain text, not as rendered html). + +([[specs][ Shut down + + * Don't shutdown automatically: handy if you want to see what may have gone wrong: + +|''shutdown browser automatically''|false| + + * Shut down spider + +|''shut down''| + + * shut down after taking a screen dump if there were errors: + +|''shut down with screen dump on failure''| +!anchor changes +---- +**********! + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/CommandUserGuide/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/CommandUserGuide/properties.xml new file mode 100644 index 0000000000..57c7a0b77d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/CommandUserGuide/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1254958576158 + -8631735008273644690 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/FirefoxProfiles/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/FirefoxProfiles/content.txt new file mode 100644 index 0000000000..b9b9e90e2a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/FirefoxProfiles/content.txt @@ -0,0 +1,58 @@ +!2 Profiles in Firefox +# +A profile in Firefox is where your personal configuration is stored (i.e. bookmarks, proxy settings etc). + +When Firefox is installed, a profile called ''default'' is created. + +It is possible to create new profiles using the ''-profileManager'' command line option for Firefox. + + * The majority of settings that you modify through the ''tools->options'' are stored inside this profile, as well as many options that can't be set via Firefox's menus. + +You can see a list of all these properties by typing +{{{ about:config +}}}into the URL bar. + +Firefox will show in bold any changes you have made from the default profile setting. + + * This will include any changes to your proxy/network settings. + * You can change and even add new properties here although you need to be careful. + +For further information on Firefox profiles see http://support.mozilla.com/en-US/kb/Profiles +# +!2 Setting Profile Properties with Spider +# +Before ''!-SpiderFixture-!'' opens the browser, it will create a brand new profile just as if you had installed Firefox for the first time. + + * You can use Spider's ''firefox profile'' call to directly manipulate those same ''about:config'' properties. + +Here's an example of some of the properties I use: + +|''firefox profile''|network.proxy.http|''as string''|myproxy| +|''firefox profile''|network.proxy.type|''as integer''|1| +|''firefox profile''|network.proxy.http_port|''as integer''|5862| +|''firefox profile''|network.proxy.no_proxies_on|''as string''|localhost, 127.0.0.1| +|''firefox profile''|app.update.enabled|''as boolean''|false| +|''firefox profile''|extensions.update.enabled|''as boolean''|false| +|''firefox profile''|layout.spellcheckDefault|''as integer''|0| +|''firefox profile''|browser.formfill.enable|''as boolean''|false| + +Again you can figure out what works for you by making changes in Firefox and looking at the values in ''about:config''. + +The benefit of this approach is that anyone can run your tests without needing to create a Firefox profile beforehand. +# +!2 Selecting an existing Profile with Spider +# +Sometimes it's necessary to use an existing profile because some of Firefox's options cannot be set with about:config properties. Eg: + + * disabling the Flash add-on or + * installing extensions. + +''!-SpiderFixture-!'' will allow you to use a specific profile if you want to, using: + +|''use firefox profile''|!-MyProfileNameHere-!| + +When you do this, ''!-Spiderfixture-!'' creates a copy of this profile. + + * You can reconfigure it further using ''firefox profile'' options and it will have a separate session / cookies etc. + +Darren diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/FirefoxProfiles/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/FirefoxProfiles/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/FirefoxProfiles/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/NeedsVariousJars/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/NeedsVariousJars/content.txt new file mode 100644 index 0000000000..50df1e8765 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/NeedsVariousJars/content.txt @@ -0,0 +1,18 @@ +''!-SpiderFixture-!'' needs various jar files to be available (the current tested versions are shown below): + + * webdriver-all.jar (version ...) + * htmlunit-2.4.jar + * htmlunit-core-js-2.4.jar + * commons-httpclient-3.1.jar + * sac-1.3.jar + * commons-codec-1.3.jar + * commons-io-1.4.jar + * commons-logging-1.1.1.jar + * xercesImpl-2.8.1.jar + * cssparser-0.9.5.jar + * nekohtml-1.9.11.jar + * xalan-2.7.1.jar + * selenium-java-client-driver.jar + * json-20080701.jar + +These are provided in the ''lib'' directory provided with this release. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/NeedsVariousJars/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/NeedsVariousJars/properties.xml new file mode 100644 index 0000000000..9dc5af5892 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/NeedsVariousJars/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1255052169718 + -6116165481345553603 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/OtherLocators/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/OtherLocators/content.txt new file mode 100644 index 0000000000..5600d85896 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/OtherLocators/content.txt @@ -0,0 +1,40 @@ +The locators that may be used are as follows: + * By '''id'''. Eg: + +|click|gButton| +|click|id=gButton| + + * By '''name'''. Eg: + +|click|name=submitter| + + * By '''xpath'''. Eg: + +|click|//input[@name="surname"]| +|click|xpath=//input[@name="surname"]| + + * By '''link''' name: + +|click|link=Go Home| + + * By '''class''' name: + +|click|class=bold| +|click|class=float_left| + +* By '''css selector''' - see http://www.w3.org/TR/css3-selectors/#content-selectors . Eg: + +|click|css=input#submit| + + +If there is no explicit "=" in the locator: + + * '''xpath''' is used if the locator starts with "//" + + * otherwise, an '''id''' is assumed + +(This follows the conventions of Selenium.) + +There is also an form of ''click'' that takes a part of a link (see + + true + true + true + true + true + true + true + true + 1254875289909 + -8855727418494480502 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/PollingForAnElement/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/PollingForAnElement/content.txt new file mode 100644 index 0000000000..0ebf718d0b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/PollingForAnElement/content.txt @@ -0,0 +1,39 @@ +!2 Ajax and other Delays +# +Due to ajax, plus general delays in loading pages, etc, changes on the browser may take some time to happen. For example, when the user clicks on an element, a web services call may be used to gather information from the server to display. Allowance needs to be made for these delays. + +The usual approach is to put in explicit delays to allow time for things to happen. But there's a trade-off here. If the delay is too short, the test may fail sometimes. If the delay is too long, the test will run very slowly. + +''!-SpiderFixture-!'' solves this problem by automatically checking regularly until an element appears: + * If the element is there already, it succeeds immediately and the action continues (such as checking the text of that element). + * If the element is not there initially, ''!-SpiderFixture-!'' checks regularly for it. As soon as it does appear, the action continues. + * If the element doesn't appear after a ''timeout'' period, the action fails. +# +!2 Actions affected +# +The actions that allow for a delay before they are satisfied include: + * Using an element that has been added or altered in the page (eg, new input fields, new options in a select, etc) + * Checking for the existence of an element that may have been added + * Checking for the non-existence of an attribute that may have been removed + * Checking for text or a regular expression in a page for text that may have been added + * Selecting a frame or iframe +# +!2 Timeout period +# +The timeout period can be adjusted at any point in a storytest, tuned to what's needed. It doesn't matter if the timeout period is longer when tests pass, as ''!-SpiderFixture-!'' will only wait as long as necessary (maybe not at all). However, if an element fails to appear, it takes longer before it fails. Ideally, the storytests will generally be passing, so the time overhead will be largely irrelevant. + +To change the timeout period (in milliseconds): + +|''checking timeout''|50| + +This is set to 1000 by default. + +If there are one or two places where the delay is much longer, you can set the timeout period longer just before each such place, and set it down again afterwards. +# +!2 Technical detail +# +''!-SpiderFixture-!'' works out the polling rate (checking the browser for an element) from the ''checking timeout'' as follows: + + * Polling rate is timeout / 50 + * But the minimum poll rate is 2 milliseconds + * And the maximum poll rate is 10 milliseconds diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/PollingForAnElement/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/PollingForAnElement/properties.xml new file mode 100644 index 0000000000..fc4a208e8f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/PollingForAnElement/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1254876587493 + 4752038451212488842 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/content.txt new file mode 100644 index 0000000000..8ad4a16c53 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/content.txt @@ -0,0 +1,39 @@ +!*< def +!define optionValues {|first| +|second| +|third| +} +*! +# +!3 Introduction +''!-SpiderFixture-!'' is for testing a system through a web user interface. It is a ''!-FitLibrary-!'' fixture layered on top of ''!-WebDriver-!'', which emulates a user viewing and acting through a browser. See http://code.google.com/p/webdriver/ for details of ''!-WebDriver-!''. + +''!-WebDriver-!'' itself can drive testing through one of several drivers, include ''htmlUnit'', ''Firefox'', ''IE'', and ''Google Chrome''. + +By using ''!-SpiderFixture-!'', a storytest can get a url, click on a link, make selections and enter data in a form and submit it. It can also check for specific values of elements on the page, such as the value of an input text or a radio button. Any element on a page is identified with a ''locator''. + +There are several different ways of locating (identifying) html elements on the page. The examples in ^CommandUserGuide largely use xpath expressions, but it's also possible to locate by id, by name, and by link text. See ^OtherLocators for details of these other locators. + +There are several actions that should immediately make a change, such as setting the text. By default, these actions also check that the change has happened correctly. See near the end of this page for details of turning off this automatic checking, as well as changing the timeout period for checking. + +Due to ajax, plus general delays in loading pages, etc, changes on the browser may take some time to happen. The way ''!-SpiderFixture-!'' handles this is covered in ^PollingForAnElement. + +''!-SpiderFixture-!'' ^NeedsVariousJars + +----!3 Select driver: +!3 Selecting the driver to use: +|''start spider with''|firefox| + +where the driver is "firefox" or "htmlunit". For details of managing Firefox profiles, see ^FirefoxProfiles. + +----!3 Proxy + * Defines a proxy to be used. Needs to be called before any other actions. (This is to be changed to support the different drivers!) + +|''proxy''|proxy2|''with port''|5865| +---- +|!3 ^CommandUserGuide|''A user guide to ''!-SpiderFixture-!'' actions''| + +----!3 Restart Driver ([[spec][.FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.SpecifyZzRestartWith]]) +To restart spider with a different driver (carrying cookies across): + +|''restart with''|firefox| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/properties.xml new file mode 100644 index 0000000000..09b3972cb0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/DocuMentation/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1255157416296 + -6740619713148160411 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SetUp/content.txt new file mode 100644 index 0000000000..d9b2a2b7d1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SetUp/content.txt @@ -0,0 +1 @@ +!|fitlibrary.spider.specify.SpecifyMatchingStringFixture| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SetUp/properties.xml new file mode 100644 index 0000000000..368f5a2e09 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SetUp/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1255126748203 + -4163765243584705816 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraActual/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraActual/content.txt new file mode 100644 index 0000000000..a85eb85f75 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraActual/content.txt @@ -0,0 +1,10 @@ +|''match''|one| + +|''match''|one\ntwo| +|one| + +|''match''|one\ntwo\nthree| +|o.e| +|two| + +|''expected test results''|3|''right''|3|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraActual/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraActual/properties.xml new file mode 100644 index 0000000000..5ae038ab5e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraActual/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1219624991031 + -1622255978461858697 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraCells/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraCells/content.txt new file mode 100644 index 0000000000..a17f55e7f4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraCells/content.txt @@ -0,0 +1,7 @@ +|''match''|one| +|one|two| + +|''match''|one\ntwo| +|one|two| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|2|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraCells/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraCells/properties.xml new file mode 100644 index 0000000000..873cb6b43f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyExtraCells/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1219625126781 + 6120273140825513757 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMatch/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMatch/content.txt new file mode 100644 index 0000000000..8239a7a4b2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMatch/content.txt @@ -0,0 +1,22 @@ +|''match''|one| +|one| + +|''match''|one| +|o.e| + +|''match''|one\ntwo| +|one| +|two| + +|''match''|one \ntwo| +|one| +|two| + +|''match''|one\n two| +|one| +|two| + +|''match''|one\ntwo| +|o.*| +|.wo| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMatch/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMatch/properties.xml new file mode 100644 index 0000000000..19f6e426f9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMatch/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1219624921703 + -3519520048398805429 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMismatch/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMismatch/content.txt new file mode 100644 index 0000000000..4487f0b25e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMismatch/content.txt @@ -0,0 +1,15 @@ +|''match''|one| +|oNe| + +|''match''|one| +|o.ee| + +|''match''|one\ntwo| +|One| +|two| + +|''match''|one\ntwo| +|o.*| +|.w| + +|''expected test results''|2|''right''|4|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMismatch/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMismatch/properties.xml new file mode 100644 index 0000000000..d1b93f8c15 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMismatch/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1219624111656 + 5374405351562545085 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMissingActual/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMissingActual/content.txt new file mode 100644 index 0000000000..81031446a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMissingActual/content.txt @@ -0,0 +1,8 @@ +|''match''|| +|one| + +|''match''|one| +|o.e| +|two| + +|''expected test results''|1|''right''|2|''wrong''|0|''ignored''|0|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMissingActual/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMissingActual/properties.xml new file mode 100644 index 0000000000..ed4bb82424 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyMissingActual/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1219624611531 + -1188472160044173392 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyNone/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyNone/content.txt new file mode 100644 index 0000000000..f92e907558 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyNone/content.txt @@ -0,0 +1 @@ +|''match''|| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyNone/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyNone/properties.xml new file mode 100644 index 0000000000..8f45cf354c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/SpecifyNone/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1219623425375 + 1338686923312253912 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/content.txt new file mode 100644 index 0000000000..fd48e01879 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/content.txt @@ -0,0 +1,9 @@ +This provides pattern matching for a sequence of lines + +^SpecifyNone +^SpecifyMatch +^SpecifyMismatch +^SpecifyMissingActual +^SpecifyExtraActual +^SpecifyExtraCells +^SetUp diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/properties.xml new file mode 100644 index 0000000000..70fe74c9e7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifyMatchingStringFixture/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1255127831734 + 2125387473593858656 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/HowSpecsWork/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/HowSpecsWork/content.txt new file mode 100644 index 0000000000..6d080eed79 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/HowSpecsWork/content.txt @@ -0,0 +1,62 @@ +!*< def +!define html ({{{ + + + +green}}}) +*! +The ''!-SpiderFixture-!'' storytests/specs: + + 1 Are written to be as self-contained as possible. + 1 Are organised so that the same storytests can be used for testing spider with htmlunit, Firefox and IE. + 1 Use special tabs for tables. +# +----!3 1. Self-contained +# +The contents of the html being accessed by the spider actions in the storytest are included in that storytest. + + * The contents of the html is defined using a ''!-!define-!'' so that it can be formatted nicely. Edit this page to see how the following table is defined. + +Consider the [[!-input text storytest-!][.FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.SpecifyTextOf.WithInputText]] which includes the following table: + +|''with html''|${html}| + +This html is saved to a file ("test.html") within the ''files'' directory of !-FitNesse-! and then within a directory for the browser/driver concerned. + + * Eg, for firefox, it's saved in "!-FitNesseRoot/files/firefox/-!". + * It's saved there so that spider can access that page through a specialised test server at http://localhost:2998/files/firefox/test.html + * Note: this link will only work while the test server is running, and that's only while a spider spec is running. + * The server port is different for the storytests for each driver, so that the storytests for firefox and IE, for example, can be run in parallel. + * The test server is started for each storytest and is shut down when it finishes. + * The ''with html'' action also automatically does a ''get url'' on that page, so that subsequent actions can work from there. +# +----!3 2. Shared storytests +# +A single suite contains all the spider storytests/specs, at SpiderSpecsShared. These storytests are not intended to be run from there. Instead, there are separate suites that share these storytests, but define specific differences: + + * The name of the driver/browser that spider is to use + * The port that the test server is to run on for that driver + +For example, see SpiderWithHtmlUnit. This has it's own [[!-SuiteSetUp-!][SpiderWithHtmlUnit.SuiteSetUp]] which defined the above "parameters". + +To see how the storytests are shared, go to SpiderWithHtmlUnit and click on the '''Properties''' button in the top-left of the window. + + * You'll see at the bottom of the resulting page that there is a ''Symbolic Link'' to .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared + +To run the SpiderWithHtmlUnit suite, simply go to that page and click the '''Suite''' button. + + * This first runs the [[!-SuiteSetUp-!][SpiderWithHtmlUnit.SuiteSetUp]] + * Then it runs each of the pages within the shared suite + +Because of the different setups in the suite setups for htmlunit, firefox, and IE, the same storytests are run with a different driver and port for the test server. + +If you want to run a single storytest, click into the suite. + + * Eg, Start at SpiderWithHtmlUnit and click on ''!-SpecifiCations-!''. + * Notice that the URL for the page includes SpiderWithHtmlUnit. + * When running a test within that, the appropriate ''!-SuiteSetUp-!'' will be run first. + * So simply traverse through from SpiderWithHtmlUnit, SpiderWithFirefox or SpiderWithIe to be able to run the same storytest under different browsers/drivers. +# +----!3 3. Handling tables +The html that's given in such a storytest can't contain the following tags because they are interpreted by ''!-FitLibrary-!'', giving odd errors:{{{...
}}}So instead we use:{{{...}}} and these are translated before writing to the file. + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/HowSpecsWork/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/HowSpecsWork/properties.xml new file mode 100644 index 0000000000..d5d11cce4b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/HowSpecsWork/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1255047564515 + -8721299884985581902 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpecSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpecSetUp/content.txt new file mode 100644 index 0000000000..b83aed3c86 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpecSetUp/content.txt @@ -0,0 +1,6 @@ +|''spider''| + +|''save html in''|test.html| + +|''zero report counts''| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpecSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpecSetUp/properties.xml new file mode 100644 index 0000000000..b0b218782f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpecSetUp/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1245814864674 + -1760540565853293896 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingDefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingDefinedActions/content.txt new file mode 100644 index 0000000000..839b37a761 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingDefinedActions/content.txt @@ -0,0 +1,32 @@ +Example show that !-ForEach-! fixture can be used to call parameterized defined actions + +!include -c .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpecSetUp + +!**< def +!define body (|''append with and''|VALUE| + +|set|GLOBAL|to|@{GLOBAL} and @{VALUE}| +) + +**! +|!-fitlibrary.DefineAction-!| +|${body}| + +''Call defined action '''with out''' using !-ForEach-! fixture'' + +|set|GLOBAL|to|red| + +|append with and|yellow| +|append with and|pink| +|append with and|green| + +|get|@{GLOBAL}|is|red and yellow and pink and green| + +''Call defined action again, this time '''WITH''' for each'': + +|set|GLOBAL|to|red| + +|''for each''|color|''in''|yellow,pink,green| +|append with and|@{color}| + +|get|@{GLOBAL}|is|red and yellow and pink and green| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingDefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingDefinedActions/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingDefinedActions/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingFixtureMethods/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingFixtureMethods/content.txt new file mode 100644 index 0000000000..4a251378bf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingFixtureMethods/content.txt @@ -0,0 +1,23 @@ +''for each'' runs the action in the second row of the table several times, once for each of the values in the list in the second argument of the first row. For each value in turn, the ''dynamic property'' ''a'' takes the value of the next element of the list. In addition, the property ''fromZero'' gives the index number of the element from the list, starting at 0. The property ''fromOne'' is the same as ''fromZero'' except that it counts the index from 1. + +As ''for each'' is run, the results for each run of the second row are added to the report table. + +!include -c .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpecSetUp + +|set|series|to|| + +|''for each''|fibonacci_series|''in''|1,1,2,3,5| +|set|series|to|@{series}@{fibonacci_series}| + +|get|@{series}|is|11235| + +''Example accessing indexes:'' + +|set|indexes|to|| + +|''for each''|expected|''in''|01,12,23,34,45,56,67,78,89,910| +|set|indexes|to|@{indexes}@{expected}=@{fromZero}@{fromOne},| + +|get|@{indexes}|is|01=01,12=12,23=23,34=34,45=45,56=56,67=67,78=78,89=89,910=910,| + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingFixtureMethods/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingFixtureMethods/properties.xml new file mode 100644 index 0000000000..e3ee48d071 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/CallingFixtureMethods/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1245895479924 + 3021698864979093492 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/content.txt new file mode 100644 index 0000000000..62d4a8b17e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/content.txt @@ -0,0 +1,3 @@ +^CallingFixtureMethods +^CallingDefinedActions + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/properties.xml new file mode 100644 index 0000000000..5dcc2913c4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/ForEach/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1224645298453 + -7258868061249578633 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/AlertsCanAlsoBeClosedWithAcceptAlert/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/AlertsCanAlsoBeClosedWithAcceptAlert/content.txt new file mode 100644 index 0000000000..47b6ffc67c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/AlertsCanAlsoBeClosedWithAcceptAlert/content.txt @@ -0,0 +1,33 @@ +!*< def +!define html [{{{ +Change Me + + + + + +}}}] +*! + +''This specification is basically the same as CloseAlertsWithDismiss, just shows that you can also close the single button alerts with the '''accept alert''' fixture method.'' + +|''keywords''|firefox,ie| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/CanEnterTextIntoPromptAlert/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/CanEnterTextIntoPromptAlert/content.txt new file mode 100644 index 0000000000..04ff2886bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/CanEnterTextIntoPromptAlert/content.txt @@ -0,0 +1,33 @@ +!*< def +!define html [{{{ +Change Me + + + + + +}}}] +*! + + +|''keywords''|firefox,ie| + +'''Note: This specification actually works in IE too, however I'm not sure how to automatically switch off the pop script blocking which seems to block script alerts which stop it working.''' + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/CloseAlertsWithDismiss/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/CloseAlertsWithDismiss/content.txt new file mode 100644 index 0000000000..3271b64778 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/CloseAlertsWithDismiss/content.txt @@ -0,0 +1,31 @@ +!*< def +!define html [{{{ +Change Me + + + + + +}}}] +*! + +|''keywords''|firefox,ie| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/ConfirmAlerts/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/ConfirmAlerts/content.txt new file mode 100644 index 0000000000..7b1483ddaf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/ConfirmAlerts/content.txt @@ -0,0 +1,51 @@ +!*< def +!define html [{{{ +Confirmation + + + +
+ + +}}}] +*! + + +|''keywords''|firefox,ie| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/DismissPromptAlertToAbandonTextEntry/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/DismissPromptAlertToAbandonTextEntry/content.txt new file mode 100644 index 0000000000..cbc923ef39 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/DismissPromptAlertToAbandonTextEntry/content.txt @@ -0,0 +1,34 @@ +!*< def +!define html [{{{ +Change Me + + + + + +}}}] +*! + +'''Prompt Alerts can also be dismissed, Spider Fixture will can do that:''' + +|''keywords''|firefox,ie| + +'''Note: This specification actually works in IE too, however I'm not sure how to automatically switch off the pop script blocking which seems to block script alerts which stop it working.''' + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/content.txt new file mode 100644 index 0000000000..3fc85f9c19 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/content.txt @@ -0,0 +1,7 @@ +''Note: alerts are currently not supported with htmlunit.'' + +^CloseAlertsWithDismiss +^AlertsCanAlsoBeClosedWithAcceptAlert +^ConfirmAlerts +^CanEnterTextIntoPromptAlert +^DismissPromptAlertToAbandonTextEntry diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyAlert/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyBackAndForward/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyBackAndForward/content.txt new file mode 100644 index 0000000000..55fb1dc23f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyBackAndForward/content.txt @@ -0,0 +1,34 @@ +!*< def +!define target ({{{ + To here +}}}) +!define html ({{{Start + + Link + }}}) +*! +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpecSetUp + +|''make file''|other.html|''from''|${target}| + +|''with html''|${html}| + +|''title''|'''is'''| Start | + +|''click''|//a[@id="one"]| + +|''title''|'''is'''|To here| + +|''back''| + +|''title''|'''is'''| Start | + +|''forward''| + +|''title''|'''is'''|To here| + +|''back''| + +|''title''|'''is'''| Start | diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyBackAndForward/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyBackAndForward/properties.xml new file mode 100644 index 0000000000..6dea90d2e5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyBackAndForward/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245895597487 + -5877238805112604756 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/CheckBox/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/CheckBox/content.txt new file mode 100644 index 0000000000..8b1e480b9d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/CheckBox/content.txt @@ -0,0 +1,22 @@ +!*< def +!define html ({{{Option +Option}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896210835 + -4847839918349133303 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/OnEvents/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/OnEvents/content.txt new file mode 100644 index 0000000000..0b66c95a32 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/OnEvents/content.txt @@ -0,0 +1,22 @@ +!*< def +!define html ({{{Clicky +Changing}}}) +*! + +|''keywords''|chrome,firefox| + +!2 Not supported in IE +!2 !-Not supported in HtmlUnit since version 2.8 -- see HtmlUnit bug #3018437-! + +!include -c + + + + + + + + + + + + 1245896221726 + 3992467131312189821 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/content.txt new file mode 100644 index 0000000000..6ce28b4a3b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/content.txt @@ -0,0 +1,3 @@ +^CheckBox +^OnEvents + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/properties.xml new file mode 100644 index 0000000000..c953ed2718 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCheckbox/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + null + + + 1224798019187 + -1140766528014712559 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClick/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClick/content.txt new file mode 100644 index 0000000000..0ef21f0652 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClick/content.txt @@ -0,0 +1,19 @@ +!*< def +!define target (To here +) +!define html ({{{Start +Link +Link2 }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896529400 + 1632140450529426857 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/SpecifyNamedLink/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/SpecifyNamedLink/content.txt new file mode 100644 index 0000000000..55d6ebd66c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/SpecifyNamedLink/content.txt @@ -0,0 +1,19 @@ +!*< def +!define target (To here +) +!define html ({{{Start +Link +Link2 }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245896540384 + 215407985922069042 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/SpecifyPartiallyNamedLink/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/SpecifyPartiallyNamedLink/content.txt new file mode 100644 index 0000000000..974ed6efae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/SpecifyPartiallyNamedLink/content.txt @@ -0,0 +1,21 @@ +!*< def +!define target (To here +) +!define html ({{{Start +Link +Link2 }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245895453283 + -8845614992501726820 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/content.txt new file mode 100644 index 0000000000..0e859bf89f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/content.txt @@ -0,0 +1,3 @@ +^SpecifyNamedLink +^SpecifyPartiallyNamedLink + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/properties.xml new file mode 100644 index 0000000000..1661a6ed1c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyClickOnNamedLink/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1233543869261 + 8169343107639229427 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCookies/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCookies/content.txt new file mode 100644 index 0000000000..a231580c08 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCookies/content.txt @@ -0,0 +1,32 @@ +!*< def +!define html ( +A title +) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896658604 + 7183913624898231568 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCssSelectorLocator/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCssSelectorLocator/content.txt new file mode 100644 index 0000000000..370d9a536f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCssSelectorLocator/content.txt @@ -0,0 +1,43 @@ +!*< def +!define html ({{{link selected by href"> +link selected by href with regex"> +
some text selected by id
+
span child in a div
+
span child in a div child in a div
+I have a title attribute +I have no title attribute +
I have space separated attributes
+
+Checked +Not Checked}}}) +*! + +|''keywords''|chrome,firefox| + +!3 note: Only partially work in IE7 and html unit + +!include -c span|is|span child in a div| +|''text of''|css=div > div > span|is|span child in a div child in a div| + +|''text of''|css=a[title]|is|I have a title attribute| + +|''text of''|css=div[style~="small"]|is|I have space separated attributes| +|''text of''|css=div[style~="bold"]|is|I have space separated attributes| +|''text of''|css=div[style~="link"]|is|I have space separated attributes| + +|''text of''|css=input:checked|is|I am checked| + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCssSelectorLocator/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCssSelectorLocator/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyCssSelectorLocator/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementAttributes/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementAttributes/content.txt new file mode 100644 index 0000000000..62fdb707e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementAttributes/content.txt @@ -0,0 +1,25 @@ +!*< def +!define html ({{{ + +

bla

}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1254431812850 + 2939231606934350057 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementCount/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementCount/content.txt new file mode 100644 index 0000000000..a2c7c6d867 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementCount/content.txt @@ -0,0 +1,14 @@ +!*< def +!define html ({{{ +

bla

}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896183210 + 4931743993703076822 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementDoesNotExist/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementDoesNotExist/content.txt new file mode 100644 index 0000000000..a797d15b2b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementDoesNotExist/content.txt @@ -0,0 +1,13 @@ +!*< def +!define html ({{{ + +

bla

}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245896146866 + 996143877698405938 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementExists/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementExists/content.txt new file mode 100644 index 0000000000..830cf84a55 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementExists/content.txt @@ -0,0 +1,21 @@ +!*< def +!define html ({{{ + +

bla

}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896122288 + 4682735864161588178 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementType/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementType/content.txt new file mode 100644 index 0000000000..adcd0ec5a3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementType/content.txt @@ -0,0 +1,17 @@ +!*< def +!define html ({{{ +

bla

}}}) +*! + +|''keywords''|| + +!2 Currently no longer available in any browser we support: firefox, htmlunit and ie. +!2 For an explanation see: http://code.google.com/p/selenium/wiki/XpathInWebDriver + +!include -c + + + + + + + + + + + + + 1251758461062 + 5308905876701646442 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementValue/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementValue/content.txt new file mode 100644 index 0000000000..7881117858 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyElementValue/content.txt @@ -0,0 +1,15 @@ +!*< def +!define html ({{{ +

bla

}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1251758491547 + 9117421135802044026 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFindElement/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFindElement/content.txt new file mode 100644 index 0000000000..d0f70bf5f7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFindElement/content.txt @@ -0,0 +1,61 @@ +!*< def +!define html ({{{ +

h0

+ + +

h1

+ + +

h2

+ + +

h3

+ +
+
+
}}}) +*! + +|''keywords''|chrome,htmlunit,ie| + +!include -c + + + + + + + + + + + + + 1255156479546 + 2901294824920770602 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmit/FormSubmit/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmit/FormSubmit/content.txt new file mode 100644 index 0000000000..86b182c64e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmit/FormSubmit/content.txt @@ -0,0 +1,22 @@ +!*< def +!define target (To here +) +!define html (Start + + + + +) +*! + +|''keywords''|htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896571916 + 1664965996358375256 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmit/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmit/content.txt new file mode 100644 index 0000000000..c2f640357f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmit/content.txt @@ -0,0 +1,3 @@ +^FormSubmit + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmit/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmit/properties.xml new file mode 100644 index 0000000000..2f1f749920 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmit/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + null + + + 1224802193921 + -6187974029155819395 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmitFails/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmitFails/content.txt new file mode 100644 index 0000000000..f82ac4483b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFormSubmitFails/content.txt @@ -0,0 +1,21 @@ +!*< def +!define target (To here +) +!define html (
+ + +
+) +*! + +|''keywords''|| + +!include + + + + + + + + + + + + 1245800637677 + 3380366298676633391 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectDefaultFrame/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectDefaultFrame/content.txt new file mode 100644 index 0000000000..78b666b2a1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectDefaultFrame/content.txt @@ -0,0 +1,15 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245893157894 + 5588728034197582989 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameByDottedName/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameByDottedName/content.txt new file mode 100644 index 0000000000..3f110c9d12 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameByDottedName/content.txt @@ -0,0 +1,9 @@ +|''keywords''|chrome,htmlunit,firefox| + +!2 Not supported in IE + +!include -c + + + + + + + + + + + + 1245893149800 + -8984738192580135990 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameByName/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameByName/content.txt new file mode 100644 index 0000000000..99b267450c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameByName/content.txt @@ -0,0 +1,12 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245893142050 + -3856119337988764617 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameByNumber/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameByNumber/content.txt new file mode 100644 index 0000000000..0fd27f721f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameByNumber/content.txt @@ -0,0 +1,28 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245893134206 + -2427450022444071287 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameFails/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameFails/content.txt new file mode 100644 index 0000000000..a777a0e87c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SelectFrameFails/content.txt @@ -0,0 +1,9 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245893173034 + -8060645269667908694 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SpecSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SpecSetUp/content.txt new file mode 100644 index 0000000000..a1b21f058e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SpecSetUp/content.txt @@ -0,0 +1,21 @@ +!include Redreddening}}}) +!define green ({{{Greengreening}}}) +!define through ({{{ + +}}}) +!define html ({{{Start + + + + + }}}) +*! + +|''make file''|red.html|''from''|${red}| +|''make file''|green.html|''from''|${green}| +|''make file''|through.html|''from''|${through}| + +|''with html''|${html}| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SpecSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SpecSetUp/properties.xml new file mode 100644 index 0000000000..cd5efa7c4c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/SpecSetUp/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1253491846349 + -3576520393150300758 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/content.txt new file mode 100644 index 0000000000..146a035386 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/content.txt @@ -0,0 +1,13 @@ + * With a frameset, the first frame is selected automatically. + * The current title and url are of that first frame, rather than of the loaded html containing the frameset. + +Firefox and htmlunit differ in several ways with frames: + * The //title of a selected frame and |title| may differ + * The default frame behaviour may differ + +>SpecSetUp +^SelectFrameByNumber +^SelectFrameByName +^SelectFrameByDottedName +^SelectDefaultFrame +^SelectFrameFails diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/properties.xml new file mode 100644 index 0000000000..93b9f23d22 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyFrames/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245892160575 + -1282343717254330427 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGeneralErrorChecking/SpecifyError/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGeneralErrorChecking/SpecifyError/content.txt new file mode 100644 index 0000000000..a953b6f341 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGeneralErrorChecking/SpecifyError/content.txt @@ -0,0 +1,28 @@ +It's annoying to have to check after every page traversal whether an error has occurred. An action is provided that sets up ''!-SpiderFixture-!'' to automatically checks for an error message whenever a title is checked or a request is made to go to a URL. + +The ''show error diagnostics at when page contains'' action below means that ''!-SpiderFixture-!'' automatically checks for the error pattern (here, ".*error") in the text of the page. If it finds that pattern, it shows the text of the selected element (here, ''//msg''). If there is no xpath given or no matching element, the whole page is shown (as plain text, not as rendered html). +!**< def +!define html ({{{ + A title + +Some error +404 Message +}}} +) +**! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245897043544 + 6298190305293203194 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGeneralErrorChecking/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGeneralErrorChecking/content.txt new file mode 100644 index 0000000000..91a98e2595 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGeneralErrorChecking/content.txt @@ -0,0 +1 @@ +^SpecifyError \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGeneralErrorChecking/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGeneralErrorChecking/properties.xml new file mode 100644 index 0000000000..a3b2f41974 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGeneralErrorChecking/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1229376803738 + -1692219743037309888 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/GetUrl/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/GetUrl/content.txt new file mode 100644 index 0000000000..4edbe36176 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/GetUrl/content.txt @@ -0,0 +1,20 @@ +!*< def +!define html ({{{ + A title +}}}) +*! + +|''keywords''|htmlunit,firefox,ie,chrome| + +!include -c + + + + + + + + + + + + + 1253664279681 + 7239888149075133904 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/GetUrlWithUnboundVariable/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/GetUrlWithUnboundVariable/content.txt new file mode 100644 index 0000000000..7bbdc3c356 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/GetUrlWithUnboundVariable/content.txt @@ -0,0 +1,14 @@ +!*< def +!define html ({{{ + A title +}}}) +*! +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245897682032 + -8783921160291755002 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/content.txt new file mode 100644 index 0000000000..a6f1ce3bd6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/content.txt @@ -0,0 +1,2 @@ +^GetUrl +^GetUrlWithUnboundVariable diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/properties.xml new file mode 100644 index 0000000000..c4f6a928cf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyGetUrl/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1244755486102 + -5595668119472068964 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/WithAddChildNode/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/WithAddChildNode/content.txt new file mode 100644 index 0000000000..33deaf1a17 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/WithAddChildNode/content.txt @@ -0,0 +1,25 @@ +!*< def +!define html [{{{ + + +
cell
}}}] +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245896507806 + -7743535215669639739 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/WithInnerHtml/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/WithInnerHtml/content.txt new file mode 100644 index 0000000000..156e215c1a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/WithInnerHtml/content.txt @@ -0,0 +1,22 @@ +!*< def +!define to {setTimeout('addInput()', 20)} +!define fn {function addInput()} +!define body { document.getElementById("t").innerHTML = "green";} +!define html [{{{ + +
cell
}}}] +*! +|''keywords''|chrome,firefox| + +!2 IE and htmlunit can't handle this particular change through javascript +!include -c + + + + + + + + + + + + + 1245896491478 + 2478360623801499208 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/content.txt new file mode 100644 index 0000000000..eacd3c7f8a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/content.txt @@ -0,0 +1,3 @@ +^WithInnerHtml +^WithAddChildNode + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/properties.xml new file mode 100644 index 0000000000..6c1fce6675 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyHandlingChangesToTable/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1227584065828 + 3008944141138168993 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectById/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectById/content.txt new file mode 100644 index 0000000000..af20beca85 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectById/content.txt @@ -0,0 +1,11 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1254782315738 + 5531953270573858768 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectByName/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectByName/content.txt new file mode 100644 index 0000000000..bf6aeb91d5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectByName/content.txt @@ -0,0 +1,15 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1254784245240 + -1255208194983252444 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectByPosition/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectByPosition/content.txt new file mode 100644 index 0000000000..4e7db55718 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectByPosition/content.txt @@ -0,0 +1,11 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1254779930950 + 883521031916753797 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectByXpath/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectByXpath/content.txt new file mode 100644 index 0000000000..ae399a0439 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectByXpath/content.txt @@ -0,0 +1,7 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1254779837701 + -3298104737277360407 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectDefault/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectDefault/content.txt new file mode 100644 index 0000000000..c390defa7f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectDefault/content.txt @@ -0,0 +1,25 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1254784400344 + -7557832717073252651 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectDoesNotChangeTitle/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectDoesNotChangeTitle/content.txt new file mode 100644 index 0000000000..0a7ab1e12e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectDoesNotChangeTitle/content.txt @@ -0,0 +1,9 @@ +|''keywords''|htmlunit,ie,firefox| + +!include -c + + + + + + + + + + + + + 1254784360299 + -7191232581464610300 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectionFails/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectionFails/content.txt new file mode 100644 index 0000000000..154d3b0a6f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SelectionFails/content.txt @@ -0,0 +1,7 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245893221394 + -6401736813973615473 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SpecSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SpecSetUp/content.txt new file mode 100644 index 0000000000..c559082f3a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SpecSetUp/content.txt @@ -0,0 +1,19 @@ +!include Red
reddening
}}}) +!define green ({{{Green
greening
}}}) +) +!define html ({{{White +
white one
+
+ + +
+ whitening + }}}) +*! + +|''make file''|red.html|''from''|${red}| +|''make file''|green.html|''from''|${green}| + +|''with html''|${html}| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SpecSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SpecSetUp/properties.xml new file mode 100644 index 0000000000..777e7f414c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/SpecSetUp/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1254781561570 + 3459506782028854344 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/content.txt new file mode 100644 index 0000000000..19c3757fd2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/content.txt @@ -0,0 +1,8 @@ +>SpecSetUp +^SelectByPosition +^SelectByName +^SelectDefault +^SelectionFails +^SelectByXpath +^SelectById +^SelectDoesNotChangeTitle diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/properties.xml new file mode 100644 index 0000000000..0881b5fe12 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyIframes/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + null + + + 1254784327925 + -6528048465824829578 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyInnerHtmlOf/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyInnerHtmlOf/content.txt new file mode 100644 index 0000000000..0856b1c989 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyInnerHtmlOf/content.txt @@ -0,0 +1,31 @@ +!*< def +!define html ({{{ + yellow orange +

This text will be preserved with bold tags and emphasis tags etc

+

This text will be preserved with bold tags and emphasis tags etc

}}}) +*! + + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c orange| + +* a more complex example, extract text with tags from with table tags: + +|''inner html of''|//td[@class="bodyCopy"]|'''is'''|

This text will be preserved with bold tags and emphasis tags etc

| + +* there are compatability issues where some browsers convert to upper case, so we always convert to lower regardless of browser: + +|''inner html of''|//td[@class="bodyUpper"]|'''is'''|

This text will be preserved with bold tags and emphasis tags etc

| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyInnerHtmlOf/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyInnerHtmlOf/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyInnerHtmlOf/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ChangeDomOnClick/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ChangeDomOnClick/content.txt new file mode 100644 index 0000000000..9f31abcd3b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ChangeDomOnClick/content.txt @@ -0,0 +1,15 @@ +!*< def +!define html {Option +
A
+} +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896852417 + -3528691331485662336 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ExecuteJavaScript/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ExecuteJavaScript/content.txt new file mode 100644 index 0000000000..0a8ec5d83d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ExecuteJavaScript/content.txt @@ -0,0 +1,34 @@ +!*< def +!define html ({{{ +
abc
}}}) +*! + +|''keywords''|chrome,firefox,ie,htmlunit| + +!include -c + + + + + + + + + + + + + 1254784458779 + 4807082506513066304 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ExecuteJavaScriptWithElement/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ExecuteJavaScriptWithElement/content.txt new file mode 100644 index 0000000000..6c4a233297 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ExecuteJavaScriptWithElement/content.txt @@ -0,0 +1,23 @@ +!*< def +!define html ({{{ + + Click Me +}}}) +*! + +|''keywords''|chrome,firefox,ie,htmlunit| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ExecuteJavaScriptWithParameter/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ExecuteJavaScriptWithParameter/content.txt new file mode 100644 index 0000000000..2b9f13dd98 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/ExecuteJavaScriptWithParameter/content.txt @@ -0,0 +1,20 @@ +!*< def +!define html ({{{ +
Hello World!
}}}) +*! + +|''keywords''|chrome,firefox,ie,htmlunit| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTestNested/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTestNested/content.txt new file mode 100644 index 0000000000..17c4225cf5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTestNested/content.txt @@ -0,0 +1,20 @@ +!*< def +!define html { +
+
onetwo
+} +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245896882058 + 768586627444953703 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedText/content.txt new file mode 100644 index 0000000000..3fc69caabd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedText/content.txt @@ -0,0 +1,21 @@ +!*< def +!define html {
+
+} +*! + +|''keywords''|chrome,htmlunit,firefox| + +!2 Not supported by IE + +!include -c + + + + + + + + + + + + 1254353999551 + 1321389073261456829 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTextMoo/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTextMoo/content.txt new file mode 100644 index 0000000000..d639a20419 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTextMoo/content.txt @@ -0,0 +1,24 @@ +!*< def +!define html { +
+
oneloading +two +
+} +*! + +|''keywords''|chrome,firefox,htmlunit,ie| + +!include -c + + + + + + + + + + + + + 1255052395062 + -5822166042260951852 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTextOnDomReadyInMoo/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTextOnDomReadyInMoo/content.txt new file mode 100644 index 0000000000..447701ab62 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTextOnDomReadyInMoo/content.txt @@ -0,0 +1,28 @@ +!*< def +!define openBrace ({) +!define html { + + + + +
oneloading +two +
+} +*! + +|''keywords''|chrome,firefox,htmlunit,ie| + +!include -c + + + + + + + + + + + + + 1255052230796 + -7746307335557879144 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTextPeriodicalInMoo/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTextPeriodicalInMoo/content.txt new file mode 100644 index 0000000000..5184275add --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToAddedTextPeriodicalInMoo/content.txt @@ -0,0 +1,30 @@ +!*< def +!define html [ + + + + +
oneloading +two +
+] +*! + +|''keywords''|chrome,firefox,htmlunit,ie| + +!include -c + + + + + + + + + + + + + 1255052301625 + 8204099590311778758 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToClick/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToClick/content.txt new file mode 100644 index 0000000000..17565e5d5c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToClick/content.txt @@ -0,0 +1,15 @@ +!*< def +!define html ({{{ + A title + Option}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896842808 + 6714860398693269487 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToSelectionChange/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToSelectionChange/content.txt new file mode 100644 index 0000000000..b9e5f37c63 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/RespondToSelectionChange/content.txt @@ -0,0 +1,20 @@ +!*< def +!define html { +
+} +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896871886 + -3808499367404601805 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/content.txt new file mode 100644 index 0000000000..53d7b247f3 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/content.txt @@ -0,0 +1,13 @@ +^RespondToClick +^ChangeDomOnClick +^RespondToAddedText +^RespondToSelectionChange +^RespondToAddedTestNested +^RespondToAddedTextMoo +^RespondToAddedTextOnDomReadyInMoo +^RespondToAddedTextPeriodicalInMoo + +^ExecuteJavaScript +^ExecuteJavaScriptWithParameter +^ExecuteJavaScriptWithElement + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/properties.xml new file mode 100644 index 0000000000..1523bffad6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyJavaScript/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254455336745 + -1194328049940931784 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLocators/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLocators/content.txt new file mode 100644 index 0000000000..4b1aaccdd1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLocators/content.txt @@ -0,0 +1,46 @@ +!*< def +!define html ({{{menu + +Link}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1254796963815 + -206584906694965744 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLogging/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLogging/content.txt new file mode 100644 index 0000000000..40ed960746 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLogging/content.txt @@ -0,0 +1,29 @@ +Logging support is provided. To start/enable logging, use the ''start logging'' action. If this is not called, any subsequent ''log'' actions are ignored. + +To start logging, specify a file name with the ''start log'' action; this file name can include a directory, which will be created if necessary. + +To log text to the file, use the ''log message'' action, which takes a string as argument. To log the result of an action, use the ''log'' action. + +|spider| + + * To see the results of logging, uncomment the following (invisible) line. + +#|start logging|C:/logs/log| + +|set|stuff|to|STUFF| + + * The following just makes sure that the test passes: + +|''get''|@{stuff}|'''is'''|STUFF| + + * The text is logged directly (with any ''dynamic variables'' substituted: + +|log message|@{stuff}| + + * The text that results from an action is logged: + +|log|get|and more stuff @{stuff}| + +When the ''start logging'' action is called in a storytest that is being run, the current date/time is added to the given filename to create the name of the log file. This log file name is used for all storytests that are run within a single suite. + +For example, this storytest was previously run to give the log file ''log_2009-04-16_12-06.0.txt'' in the directory ''C:/logs/''. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLogging/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLogging/properties.xml new file mode 100644 index 0000000000..f994776ee9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLogging/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1251758689643 + 7627744936772029073 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SetUp/content.txt new file mode 100644 index 0000000000..9399788548 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SetUp/content.txt @@ -0,0 +1,2 @@ +#!|fitlibrary.spider.SpiderFixture| +|spider| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SetUp/properties.xml new file mode 100644 index 0000000000..19d67d064f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SetUp/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1224101664843 + 5923347755111536344 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyDirectMatch/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyDirectMatch/content.txt new file mode 100644 index 0000000000..fc18aebbd4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyDirectMatch/content.txt @@ -0,0 +1,6 @@ +|''lookup''| +|one|hit?| +|two|2| +|one|1| + +|''get''|@{hit}|is|1| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyDirectMatch/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyDirectMatch/properties.xml new file mode 100644 index 0000000000..1a0bcd2aeb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyDirectMatch/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1223324292062 + 1370544893759710840 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMatchFirst/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMatchFirst/content.txt new file mode 100644 index 0000000000..2c6e2e4bae --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMatchFirst/content.txt @@ -0,0 +1,7 @@ +|''lookup''| +|one|hit?| +|two|2| +|one|1| +|one|11| + +|''get''|@{hit}|is|1| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMatchFirst/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMatchFirst/properties.xml new file mode 100644 index 0000000000..df2a9588a6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMatchFirst/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1223324319031 + -3829181762139375376 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatch/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatch/content.txt new file mode 100644 index 0000000000..1ed3d797dd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatch/content.txt @@ -0,0 +1,13 @@ +|set|animal|to|dog| + +|set|breed|to|beagle| + +|''lookup''| +|@{animal}|@{breed}|name?| +|cat|persian|lucky| +|dog|foxhound|rover| +|dog|beagle|samson| +|cat|siamese|lucy| + + +|''get''|@{name}|is|samson| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatch/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatch/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatch/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatchMultipleSetVariables/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatchMultipleSetVariables/content.txt new file mode 100644 index 0000000000..8a097c38d6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatchMultipleSetVariables/content.txt @@ -0,0 +1,29 @@ +|set variables| +|animal|dog| +|breed|beagle| +|sex|female| + +|''lookup''| +|@{animal}|@{breed}|name?|@{sex}|size?| +|cat|persian|lucky|male|small| +|dog|foxhound|rover|male|medium| +|dog|beagle|samson|male|large| +|dog|beagle|samantha|female|small| +|cat|siamese|lucy|female|large| + +''' This one is correct chosen because 'male' is a valid matches on the string female ''' +|''get''|@{name}|is|samson| +|''get''|@{size}|is|large| + + +''' Here's the test again using lookup table values that starts with regex ^ should now only match the female string''' +|''lookup''| +|@{animal}|@{breed}|name?|@{sex}|size?| +|cat|persian|lucky|^male|small| +|dog|foxhound|rover|^male|medium| +|dog|beagle|samson|^male|large| +|dog|beagle|samantha|female|small| +|cat|siamese|lucy|female|large| + +|''get''|@{name}|is|samantha| +|''get''|@{size}|is|small| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatchMultipleSetVariables/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatchMultipleSetVariables/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleMatchMultipleSetVariables/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleSetVariables/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleSetVariables/content.txt new file mode 100644 index 0000000000..b1ddc83860 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleSetVariables/content.txt @@ -0,0 +1,8 @@ +|''lookup''| +|one|hit?|dog?| +|two|2|lucky| +|one|1|rover| + +|''get''|@{hit}|is|1| + +|''get''|@{dog}|is|rover| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleSetVariables/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleSetVariables/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyMultipleSetVariables/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyNoMatch/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyNoMatch/content.txt new file mode 100644 index 0000000000..5b0b272f70 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyNoMatch/content.txt @@ -0,0 +1,7 @@ +|''lookup''| +|three|hit?| +|two|2| +|one|1| +|one|11| + +|''expected test results''|0|''right''|0|''wrong''|0|''ignored''|1|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyNoMatch/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyNoMatch/properties.xml new file mode 100644 index 0000000000..2b9a578a85 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyNoMatch/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1221707705421 + -3041536762777918859 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyPatternMatch/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyPatternMatch/content.txt new file mode 100644 index 0000000000..911ab621a7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyPatternMatch/content.txt @@ -0,0 +1,7 @@ +|''lookup''| +|one|hit?| +|two|2| +|o.e|1| +|.*|11| + +|''get''|@{hit}|is|1| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyPatternMatch/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyPatternMatch/properties.xml new file mode 100644 index 0000000000..e19d7fbc73 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/SpecifyPatternMatch/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1223324348671 + 7313188361648750069 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/content.txt new file mode 100644 index 0000000000..9a0e3f6ea9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/content.txt @@ -0,0 +1,8 @@ +^SpecifyDirectMatch +^SpecifyMatchFirst +^SpecifyPatternMatch +^SpecifyNoMatch +^SpecifyMultipleSetVariables +^SpecifyMultipleMatch +^SpecifyMultipleMatchMultipleSetVariables +^SetUp diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/properties.xml new file mode 100644 index 0000000000..57c5069879 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyLookup/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1219977856500 + 1512556415314877010 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyMultiLineTextMatches/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyMultiLineTextMatches/content.txt new file mode 100644 index 0000000000..657a12064d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyMultiLineTextMatches/content.txt @@ -0,0 +1,48 @@ +!*< def +!define html ({{{
+ +
green
+ yellow\n + orange + yellow\rorange + yellow
orange
+ yellow
orange
}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c is replaced with a line separator: + +|''text of''|//span[@id="withMultiTextBR"]|''matches lines''| +|yellow| +|orange| + + *
is replaced with a line separator: + +|''text of''|//span[@id="withMultiTextBR2"]|''matches lines''| +|yellow| +|orange| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyMultiLineTextMatches/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyMultiLineTextMatches/properties.xml new file mode 100644 index 0000000000..7f283960ac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyMultiLineTextMatches/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + null + + + + 1245895862083 + -6074290437264163678 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyMultiSelect/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyMultiSelect/content.txt new file mode 100644 index 0000000000..7057ffb84c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyMultiSelect/content.txt @@ -0,0 +1,26 @@ +!*< def +!define html ({{{}}}) +*! + +|''keywords''|htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896327055 + 986613287565727367 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyOptionallySelect/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyOptionallySelect/content.txt new file mode 100644 index 0000000000..b3b5088b58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyOptionallySelect/content.txt @@ -0,0 +1,27 @@ +!*< def +!define html ({{{}}}) +*! +The option is only selected if it is non-blank and if the xpath element is found. Otherwise it quietly succeeds without doing anything. + +This allows for web actions that only apply in some circumstances. + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896315726 + -3049969313107639734 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyOptionallyWithSetText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyOptionallyWithSetText/content.txt new file mode 100644 index 0000000000..81e47c431e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyOptionallyWithSetText/content.txt @@ -0,0 +1,27 @@ +!*< def +!define html ( + +) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245895897099 + 7825429295157579380 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageContainsExcludingHtmlWhitespaceTokens/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageContainsExcludingHtmlWhitespaceTokens/content.txt new file mode 100644 index 0000000000..d57d4bf0da --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageContainsExcludingHtmlWhitespaceTokens/content.txt @@ -0,0 +1,29 @@ +!*< def +!define html ({{{Various + text spread over several lines + with no breaking spaces + and
two styles of
line breaks + also extra     spaces + even over line feeds are ignored. +lines}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1253163375958 + -5003385899037431156 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageContainsRegularExpression/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageContainsRegularExpression/content.txt new file mode 100644 index 0000000000..84001c0027 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageContainsRegularExpression/content.txt @@ -0,0 +1,25 @@ +!*< def +!define html ({{{Various +text spread over several +lines}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1253153636503 + 5842621567550203442 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageContainsText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageContainsText/content.txt new file mode 100644 index 0000000000..b75df84f90 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageContainsText/content.txt @@ -0,0 +1,19 @@ +!*< def +!define html ({{{Various + text spread over several + lines}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1253153142765 + 7791372261422587880 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageSubstringFromTo/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageSubstringFromTo/content.txt new file mode 100644 index 0000000000..dad0f0dfea --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPageSubstringFromTo/content.txt @@ -0,0 +1,17 @@ +!*< def +!define html ({{{Various + text spread over several + lines}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245896064631 + -7526628226619284803 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithInputText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithInputText/content.txt new file mode 100644 index 0000000000..cf87028310 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithInputText/content.txt @@ -0,0 +1,24 @@ +!*< def +!define html ({{{ + + + + + }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1252020098547 + -3578422186090817463 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithOtherElement/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithOtherElement/content.txt new file mode 100644 index 0000000000..8f3ebfcd25 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithOtherElement/content.txt @@ -0,0 +1,38 @@ +!**< def +!define html ({{{
+ +
green
+ yellow\n +orange + yellow\rorange + yellow
orange
}}}) +**! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c in text gets removed + +|''plain text of''|//span[@id="withMultiTextBR"]|''matches''|yellow.*orange| + +|''plain text of''|//span[@id="withMultiText"]|''matches''|yellow.orange| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithOtherElement/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithOtherElement/properties.xml new file mode 100644 index 0000000000..a7640958d2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithOtherElement/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245895798989 + 7482661367333581794 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithTextArea/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithTextArea/content.txt new file mode 100644 index 0000000000..0f99ac2d39 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyPlainTextOf/WithTextArea/content.txt @@ -0,0 +1,47 @@ +!*< def +!define html ({{{ + + + + + + + }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c in text gets removed: + +|''plain text of''|//textarea[@id="withMultiTextBR"]|''matches''|yellow orange| + +|''plain text of''|//textarea[@id="withMultiText"]|''matches''|yellow.*orange| + + * The value of a + + + + + + + }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c in text gets replaced by a space: + +|''plain text of''|//textarea[@id="withMultiTextBR"]|''matches''|yellow orange| + +|''plain text of''|//textarea[@id="withMultiText"]|''matches''|yellow.orange| + + * The value of a + + + +} +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896438977 + 4285091316847779503 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInPassword/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInPassword/content.txt new file mode 100644 index 0000000000..2ad916f4cc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInPassword/content.txt @@ -0,0 +1,25 @@ +!*< def +!define html ({{{ + + + +green}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c tags is irrelevant: + +|''text of''|//input[@id="onlySpacesInText"]|''is''|| + +|''text of''|//input[@id="withText"]|''is''|| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInPassword/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInPassword/properties.xml new file mode 100644 index 0000000000..ea446ee9d9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInPassword/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245895629800 + 3674264216225034900 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInputText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInputText/content.txt new file mode 100644 index 0000000000..7de314fe09 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInputText/content.txt @@ -0,0 +1,26 @@ +!*< def +!define html ({{{ + + + +green}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c tags is irrelevant: + +|''text of''|//input[@id="onlySpacesInText"]|''is''|| + +|''text of''|//input[@id="withText"]|''is''|| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInputText/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInputText/properties.xml new file mode 100644 index 0000000000..a8fb4b58dc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithInputText/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245895610894 + -1106203732476061264 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithOtherElement/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithOtherElement/content.txt new file mode 100644 index 0000000000..4bae206a66 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithOtherElement/content.txt @@ -0,0 +1,38 @@ +!*< def +!define html ({{{

+

+

green

+
blue
+
yellow + orange
+ yellow orange + yellow orange + yellow <> + yellow orange}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c : +|''text of''|//tt[@id="withTag2"]|''matches''|yellow.*| + +|''text of''|//tt[@id="withSpace"]|''matches''|yellow orange| + +|''text of''|//tt[@id="withEscaped"]|''is''|yellow <>| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithOtherElement/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithOtherElement/properties.xml new file mode 100644 index 0000000000..88076a2123 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithOtherElement/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245895656972 + -8396620091004113667 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithTextArea/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithTextArea/content.txt new file mode 100644 index 0000000000..9541e29fe1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithTextArea/content.txt @@ -0,0 +1,29 @@ +!*< def +!define html ({{{ + + + + + }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c is ignored: + +|''text of''|//textarea[@id="withValue"]|''is''|| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithTextArea/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithTextArea/properties.xml new file mode 100644 index 0000000000..f3b1398aec --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/WithTextArea/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245895647066 + -9176365028659884350 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/content.txt new file mode 100644 index 0000000000..6de1445642 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/content.txt @@ -0,0 +1,4 @@ +>WithInputText +>WithInPassword +>WithTextArea +>WithOtherElement diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/properties.xml new file mode 100644 index 0000000000..b03d800da6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOf/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1226353560421 + -1537974576758786363 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfElementOnly/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfElementOnly/content.txt new file mode 100644 index 0000000000..8d97f1de87 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfElementOnly/content.txt @@ -0,0 +1,46 @@ +!*< def +!define html ({{{ +
yellow orange
+
+
Hello World
+
onetwothree
+
yelloworange
+
deleteme
+
onlytop
middle
bottom
top2
this
+
onedeletetwomethree
+
9:15 PM Mon 2nd
Los Angeles
}}}) +*! + + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInPassword/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInPassword/content.txt new file mode 100644 index 0000000000..8a7231aca7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInPassword/content.txt @@ -0,0 +1,23 @@ +!*< def +!define html ({{{ + + + +green}}}) +*! + +|''keywords''|chrome,htmlunit,firefox| + +!include -c tags is irrelevant: +|''text of''|//input[@id="onlySpacesInText"]|''is''|| + +|''text of''|//input[@id="withText"]|''is''|| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInPassword/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInPassword/properties.xml new file mode 100644 index 0000000000..01336921e2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInPassword/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245964364407 + -5808423687113591527 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInputText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInputText/content.txt new file mode 100644 index 0000000000..4a604ba451 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInputText/content.txt @@ -0,0 +1,23 @@ +!*< def +!define html ({{{ + + + +green}}}) +*! + +|''keywords''|chrome,htmlunit,firefox| + +!include -c tags is irrelevant: +|''text of''|//input[@id="onlySpacesInText"]|''is''|| + +|''text of''|//input[@id="withText"]|''is''|| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInputText/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInputText/properties.xml new file mode 100644 index 0000000000..e7a49b06b8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithInputText/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245964400048 + -1313005395898805817 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithOtherElement/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithOtherElement/content.txt new file mode 100644 index 0000000000..2473008fce --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithOtherElement/content.txt @@ -0,0 +1,41 @@ +!*< def +!define html ({{{

+

+

green

+
blue
+
yellow + orange
+ yellow orange + yellow orange + yellow <> + yellow orange}}}) +*! + +|''keywords''|chrome,htmlunit,firefox| + +!include -c : + +|''text of''|//tt[@id="withTag2"]|''matches''|yellow.*| + +|''text of''|//tt[@id="withSpace"]|''matches''|yellow orange| + +|''text of''|//tt[@id="withEscaped"]|''is''|yellow <>| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithOtherElement/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithOtherElement/properties.xml new file mode 100644 index 0000000000..1649cc6900 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithOtherElement/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245964436626 + -6188404777967799800 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithTextArea/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithTextArea/content.txt new file mode 100644 index 0000000000..552a467e38 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithTextArea/content.txt @@ -0,0 +1,27 @@ +!*< def +!define html ({{{ + + + + + }}}) +*! + +|''keywords''|chrome,htmlunit,firefox| + +!include -c is ignored: +|''text of''|//textarea[@id="withValue"]|''is''|| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithTextArea/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithTextArea/properties.xml new file mode 100644 index 0000000000..cf7d37d051 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/WithTextArea/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245964451329 + -6490517575039041266 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/content.txt new file mode 100644 index 0000000000..c6b8d8e50f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/content.txt @@ -0,0 +1,4 @@ +^WithInputText +^WithInPassword +^WithTextArea +^WithOtherElement diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/properties.xml new file mode 100644 index 0000000000..95dbcd068e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfIs/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1215057718146 + -6820171171795685148 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithInputText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithInputText/content.txt new file mode 100644 index 0000000000..682f76cf2d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithInputText/content.txt @@ -0,0 +1,19 @@ +!*< def +!define html ({{{ + + }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245895669722 + -7384496671297735143 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithOtherElement/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithOtherElement/content.txt new file mode 100644 index 0000000000..5c915a24e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithOtherElement/content.txt @@ -0,0 +1,26 @@ +!*< def +!define html ({{{

+

+

green

+
blue
+
yellow + orange
}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245895693879 + 8143408513556442312 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithTextArea/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithTextArea/content.txt new file mode 100644 index 0000000000..d4c608b30e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithTextArea/content.txt @@ -0,0 +1,30 @@ +!*< def +!define html ({{{ + + + + + }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c is ignored: +|''text of''|//textarea[@id="withValue"]|''matches''|| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithTextArea/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithTextArea/properties.xml new file mode 100644 index 0000000000..81b21809c2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/WithTextArea/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245895679472 + -5400373926328604885 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/content.txt new file mode 100644 index 0000000000..3261cfd007 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/content.txt @@ -0,0 +1,3 @@ +^WithInputText +^WithTextArea +^WithOtherElement diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/properties.xml new file mode 100644 index 0000000000..2b8552bd24 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTextOfMatches/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1215037399929 + 5451353192363494118 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTheAttributeOfChildrenOfTypeOfElement/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTheAttributeOfChildrenOfTypeOfElement/content.txt new file mode 100644 index 0000000000..65b2ca679d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTheAttributeOfChildrenOfTypeOfElement/content.txt @@ -0,0 +1,16 @@ +!*< def +!define html ({{{
  • a
  • b
  • c
+}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896194444 + 1579498215294612477 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/SimpleTitle/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/SimpleTitle/content.txt new file mode 100644 index 0000000000..93b87ecc54 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/SimpleTitle/content.txt @@ -0,0 +1,14 @@ +!*< def +!define html ({{{ + A title +}}}) +*! +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245895563440 + -5792945287875237385 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/TitleOverSeveralLines/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/TitleOverSeveralLines/content.txt new file mode 100644 index 0000000000..0d498aab7c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/TitleOverSeveralLines/content.txt @@ -0,0 +1,17 @@ +!*< def +!define html ({{{ + + A split + title + +}}}) +*! +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245895571972 + 4779954759947984133 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/WithNonBreakingSpaces/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/WithNonBreakingSpaces/content.txt new file mode 100644 index 0000000000..fb788e02da --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/WithNonBreakingSpaces/content.txt @@ -0,0 +1,14 @@ +!*< def +!define html ({{{ + One&nbsp;Two +}}}) +*! +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1251783496186 + -9135988895174647942 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/content.txt new file mode 100644 index 0000000000..316c89bd4b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/content.txt @@ -0,0 +1,3 @@ +^SimpleTitle +^TitleOverSeveralLines +^WithNonBreakingSpaces \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/properties.xml new file mode 100644 index 0000000000..fdf0f44821 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTitleIs/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1251782493272 + -3730403767517088287 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTraversalFails/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTraversalFails/content.txt new file mode 100644 index 0000000000..eccd208749 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyTraversalFails/content.txt @@ -0,0 +1,18 @@ +!*< def +!define target (To here +) +!define html (Link +) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896556040 + 4896761223308178787 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyUrlIs/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyUrlIs/content.txt new file mode 100644 index 0000000000..7ce5c7a152 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyUrlIs/content.txt @@ -0,0 +1,13 @@ +!*< def +!define html ({{{ + A title +}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245895583440 + -6402879982901700090 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyVisibility/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyVisibility/content.txt new file mode 100644 index 0000000000..f5261283b5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyVisibility/content.txt @@ -0,0 +1,29 @@ +!*< def +!define html ({{{ +
visble div + visible span +
+

invisble pinvisbile span +

}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/ElementAttributeChangesAfterDelay/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/ElementAttributeChangesAfterDelay/content.txt new file mode 100644 index 0000000000..115f93c484 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/ElementAttributeChangesAfterDelay/content.txt @@ -0,0 +1,21 @@ +!*< def +!define html [{{{ + + +
.
}}}] +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/OptionChangesAfterDelay/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/OptionChangesAfterDelay/content.txt new file mode 100644 index 0000000000..90cb37114e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/OptionChangesAfterDelay/content.txt @@ -0,0 +1,23 @@ +!*< def +!define html [{{{ + + +}}}] +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/TextChangesAfterDelay/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/TextChangesAfterDelay/content.txt new file mode 100644 index 0000000000..7977e95dbe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/TextChangesAfterDelay/content.txt @@ -0,0 +1,25 @@ +!*< def +!define html [{{{A title + + +Option +}}}] +*! + +|''keywords''|chrome,htmlunit,firefox| + +!2 Not supported by IE + + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/TitleChangesAfterDelay/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/TitleChangesAfterDelay/content.txt new file mode 100644 index 0000000000..6538734c32 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/TitleChangesAfterDelay/content.txt @@ -0,0 +1,22 @@ +!*< def +!define html [{{{A title + + +Option}}} +] +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/content.txt new file mode 100644 index 0000000000..6aac44f2e7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/content.txt @@ -0,0 +1,4 @@ +^TitleChangesAfterDelay +^TextChangesAfterDelay +^ElementAttributeChangesAfterDelay +^OptionChangesAfterDelay diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChange/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChangeInVisibility/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChangeInVisibility/content.txt new file mode 100644 index 0000000000..151a512494 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForChangeInVisibility/content.txt @@ -0,0 +1,95 @@ +!*< def +!define html [{{{ + + + + + + + + + + +}}}] +*! + +|''keywords''|htmlunit| + +!2 Not supported in IE, Firefox, Chrome + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyAttributeExists/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyAttributeExists/content.txt new file mode 100644 index 0000000000..c4facae41d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyAttributeExists/content.txt @@ -0,0 +1,23 @@ +!*< def +!define html [{{{ + + +
.
}}}] +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245895989271 + 5621743493965298374 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyElementExists/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyElementExists/content.txt new file mode 100644 index 0000000000..8fcdc6bd54 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyElementExists/content.txt @@ -0,0 +1,30 @@ +!*< def +!define html [{{{ + + +
.
}}}] +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245895976162 + -4167459426734943968 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyOptionSelected/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyOptionSelected/content.txt new file mode 100644 index 0000000000..c2a05034a6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyOptionSelected/content.txt @@ -0,0 +1,26 @@ +!*< def +!define to {setTimeout('addInput()', 50)} +!define fn {function addInput()} +!define body { document.getElementById("22").innerHTML += "";} +!define html [{{{ + + +}}}] +*! + +|''keywords''|chrome,firefox| + +!2 Not supported in IE + +!include -c + + + + + + + + + + + + + 1245896001037 + -1864001989933382420 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyPatternMatch/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyPatternMatch/content.txt new file mode 100644 index 0000000000..f44e00a08b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyPatternMatch/content.txt @@ -0,0 +1,22 @@ +!*< def +!define html [{{{ + + +
.
}}}] +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245895960880 + -8159152393529971972 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyRadioSelected/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyRadioSelected/content.txt new file mode 100644 index 0000000000..8bda93c543 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyRadioSelected/content.txt @@ -0,0 +1,27 @@ +!*< def +!define html [{{{ + +
+Green
+Red
+
}}}] +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245896019287 + -4540889023279494975 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyTextOf/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyTextOf/content.txt new file mode 100644 index 0000000000..e329aa951a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/SpecifyTextOf/content.txt @@ -0,0 +1,43 @@ +!*< def +!define html [{{{ + + +
.
}}}] +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1254785559503 + -4376923750882699070 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/content.txt new file mode 100644 index 0000000000..04df28a0d9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/content.txt @@ -0,0 +1,8 @@ +Spider waits for the appropriate element to appear. It polls up to the value of the check period. It gathers the text, or whatever, as soon as it can. + +>SpecifyTextOf +>SpecifyPatternMatch +>SpecifyElementExists +>SpecifyAttributeExists +>SpecifyOptionSelected +>SpecifyRadioSelected \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/properties.xml new file mode 100644 index 0000000000..6c3e96eaa9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWaitingForElementToBeCreated/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1254352884495 + 202231654063928744 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingActualCells/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingActualCells/content.txt new file mode 100644 index 0000000000..826f6c2e7b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingActualCells/content.txt @@ -0,0 +1,9 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896417774 + -6039843725253220828 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingActualRows/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingActualRows/content.txt new file mode 100644 index 0000000000..3af61933d7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingActualRows/content.txt @@ -0,0 +1,8 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896402008 + -2645151795304028526 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingExpectedCells/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingExpectedCells/content.txt new file mode 100644 index 0000000000..e686c40871 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingExpectedCells/content.txt @@ -0,0 +1,9 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896410399 + 6476485422243486709 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingExpectedRows/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingExpectedRows/content.txt new file mode 100644 index 0000000000..a014263ac4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/MissingExpectedRows/content.txt @@ -0,0 +1,10 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896394352 + -4404180742096732983 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/SpecSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/SpecSetUp/content.txt new file mode 100644 index 0000000000..66666a5e39 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/SpecSetUp/content.txt @@ -0,0 +1,9 @@ +!include + redgreen + yellowblue +}}}) +*! + +|''with html''|${html}| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/SpecSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/SpecSetUp/properties.xml new file mode 100644 index 0000000000..62b2b5913d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/SpecSetUp/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1253492107882 + 6148565683893966894 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/TableMatches/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/TableMatches/content.txt new file mode 100644 index 0000000000..ecd2852d58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/TableMatches/content.txt @@ -0,0 +1,7 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896365133 + 8616608810056498126 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/TableValueMismatches/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/TableValueMismatches/content.txt new file mode 100644 index 0000000000..5ee686fe80 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/TableValueMismatches/content.txt @@ -0,0 +1,11 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896377899 + -2051321580068893999 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/VariousMismatches/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/VariousMismatches/content.txt new file mode 100644 index 0000000000..c5003a8471 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/VariousMismatches/content.txt @@ -0,0 +1,9 @@ +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896425649 + 3775739787334397534 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/content.txt new file mode 100644 index 0000000000..5798ade011 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/content.txt @@ -0,0 +1,8 @@ +>SpecSetUp +^TableMatches +^TableValueMismatches +^MissingExpectedRows +^MissingActualRows +^MissingExpectedCells +^MissingActualCells +^VariousMismatches diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/properties.xml new file mode 100644 index 0000000000..e8b4b923f5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWholeTable/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + null + + + 1215552860677 + 8587244877772679325 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ClosePopup/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ClosePopup/content.txt new file mode 100644 index 0000000000..8bf1458cb7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ClosePopup/content.txt @@ -0,0 +1,42 @@ +!*< def +!define target {To Hereothering +closing +} +!define html [{{{From + +homing}}}] +*! + +|''keywords''|chrome,firefox,htmlunit| + +!include -c + + + + + + + + + + + + + 1245967055862 + -8939653821342140377 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/CloseWindow/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/CloseWindow/content.txt new file mode 100644 index 0000000000..87af1b4cd6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/CloseWindow/content.txt @@ -0,0 +1,36 @@ +!*< def +!define target (To here +) +!define target2 (Third +) +!define html ({{{From +Link +Link2 }}}) +*! + +|''keywords''|chrome,firefox,htmlunit| + +!include -c + + + + + + + + + + + + + 1245965825557 + 144019383983143198 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SelectOtherWindow/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SelectOtherWindow/content.txt new file mode 100644 index 0000000000..ca6895efe8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SelectOtherWindow/content.txt @@ -0,0 +1,44 @@ +!*< def +!define target {To Hereothering +closing +} +!define html ({{{From + +homing}}}) +*! + +|''keywords''|chrome,htmlunit, firefox| + +!include -c + + + + + + + + + + + + + 1245964500845 + 3744612709397077836 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SelectPopUpByXpath/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SelectPopUpByXpath/content.txt new file mode 100644 index 0000000000..18e75adb28 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SelectPopUpByXpath/content.txt @@ -0,0 +1,49 @@ +!*< def +!define target {To Hereothering +closing +} +!define html [{{{From + +homing}}}] +*! + +|''keywords''|chrome,htmlunit, firefox| + +!include -c + + + + + + + + + + + + + 1245964516314 + 5751891771016260887 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SpecifyWindowThroughTarget/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SpecifyWindowThroughTarget/content.txt new file mode 100644 index 0000000000..c2b096d712 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SpecifyWindowThroughTarget/content.txt @@ -0,0 +1,28 @@ +!*< def +!define target (To here +) +!define target2 (Third +) +!define html ({{{From +Link +Link2 }}}) +*! + +|''keywords''|chrome,htmlunit, firefox| + +!2 Not supported by IE + +!include -c + + + + + + + + null + + + + 1245964530158 + -6433711877267786145 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SwitchingBetweenWindowsAndClosingThem/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SwitchingBetweenWindowsAndClosingThem/content.txt new file mode 100644 index 0000000000..216e80ab8f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/SwitchingBetweenWindowsAndClosingThem/content.txt @@ -0,0 +1,72 @@ +!*< def +!define one (One Title +) +!define two (Two Title +) +!define html ({{{From +One +Two }}}) +*! + +|''keywords''|chrome,firefox,htmlunit| + +!include -c + + + + + + + + + + + + + 1245967014143 + -8496251376570068965 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ThreeWindows/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ThreeWindows/content.txt new file mode 100644 index 0000000000..f7ec31307c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ThreeWindows/content.txt @@ -0,0 +1,41 @@ +!*< def +!define one (One Title +) +!define two (Two Title +) +!define html ({{{From +One +Two }}}) +*! + +|''keywords''|chrome,htmlunit, firefox| + +!include -c + + + + + + + + + + + + 1245964557080 + -5068380980537756332 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ThreeWindowsWithCloseWithFirefox/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ThreeWindowsWithCloseWithFirefox/content.txt new file mode 100644 index 0000000000..91747a1dd2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ThreeWindowsWithCloseWithFirefox/content.txt @@ -0,0 +1,51 @@ +!*< def +!define wone (WOne Title +) +!define wtwo (WTwo Title +) +!define html ({{{WFrom +One +Two }}}) +*! + +|''keywords''|firefox| + +!include + + + + + + + + + + + + + 1254787286921 + 2409005892885695277 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ThreeWindowsWithCloseWithHtmlUnit/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ThreeWindowsWithCloseWithHtmlUnit/content.txt new file mode 100644 index 0000000000..349757b4aa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/ThreeWindowsWithCloseWithHtmlUnit/content.txt @@ -0,0 +1,58 @@ +!*< def +!define wone (WOne Title +) +!define wtwo (WTwo Title +) +!define html ({{{WFrom +One +Two }}}) +*! +# +!1 This storytest sometimes passes and sometimes fails with htmlunit +# +|''keywords''|htmlunit| + +!include + + + + + + + + + + + + + 1255243319843 + 8857534311215203822 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/content.txt new file mode 100644 index 0000000000..fe140cd571 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/content.txt @@ -0,0 +1,11 @@ +^SpecifyWindowThroughTarget +^ThreeWindows +>ThreeWindowsWithCloseWithFirefox +^ThreeWindowsWithCloseWithHtmlUnit +^CloseWindow +>SwitchingBetweenWindowsAndClosingThem +>SelectOtherWindow +^SelectPopUpByXpath +^ClosePopup + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/properties.xml new file mode 100644 index 0000000000..9c93a1acbd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWindows/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1254784620554 + 7650158018412624399 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/WithInputText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/WithInputText/content.txt new file mode 100644 index 0000000000..abf30214bf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/WithInputText/content.txt @@ -0,0 +1,31 @@ +!*< def +!define html ( + +) +*! + +|''keywords''|htmlunit,firefox| + +!2 Not supported with IE + +!include -c + + + + + + + + + + + + 1245895909927 + -2012334994409855374 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/WithTextArea/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/WithTextArea/content.txt new file mode 100644 index 0000000000..44bcc21fa7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/WithTextArea/content.txt @@ -0,0 +1,30 @@ +!*< def +!define html { + + + +} +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245964571143 + 7592986459458828325 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/content.txt new file mode 100644 index 0000000000..128c10d014 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/content.txt @@ -0,0 +1,2 @@ +^WithInputText +^WithTextArea diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/properties.xml new file mode 100644 index 0000000000..3010cce2b5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithAddText/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1215051115561 + -2558057632284244154 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/WithInputText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/WithInputText/content.txt new file mode 100644 index 0000000000..bb5bfd120b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/WithInputText/content.txt @@ -0,0 +1,29 @@ +!*< def +!define html ( + +) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245895876677 + -7581689424864881764 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/WithOtherElement/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/WithOtherElement/content.txt new file mode 100644 index 0000000000..25bc06f42f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/WithOtherElement/content.txt @@ -0,0 +1,20 @@ +!*< def +!define html ( +) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1254092606989 + 6073735064067345763 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/WithTextArea/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/WithTextArea/content.txt new file mode 100644 index 0000000000..7df0558c59 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/WithTextArea/content.txt @@ -0,0 +1,40 @@ +!*< def +!define html { + + + +} +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245895887099 + -5625352663224554457 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/content.txt new file mode 100644 index 0000000000..3261cfd007 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/content.txt @@ -0,0 +1,3 @@ +^WithInputText +^WithTextArea +^WithOtherElement diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/properties.xml new file mode 100644 index 0000000000..d24482571d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithSetText/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1254092225799 + -4896895222569521833 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyRowSelection/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyRowSelection/content.txt new file mode 100644 index 0000000000..d7a63c5ef7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyRowSelection/content.txt @@ -0,0 +1,30 @@ +!*< def +!define html ({{{ + +ONE + + + + +blue +}}}) + +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + true + + true + + + + + + true + 1245896698088 + 5419376400435693437 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyRowSelectionWithNestedTable/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyRowSelectionWithNestedTable/content.txt new file mode 100644 index 0000000000..574ae75ebf --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyRowSelectionWithNestedTable/content.txt @@ -0,0 +1,31 @@ +!*< def +!define html ({{{ + + + + ONE + + + + + + + + + blue + +}}}) + +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1251929856309 + 5369116656624594808 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyWithContext/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyWithContext/content.txt new file mode 100644 index 0000000000..aa2e30b7cb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyWithContext/content.txt @@ -0,0 +1,36 @@ +!*< def +!define html ({{{ + + + + + + + +}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + true + + true + + + + + + true + 1245896671385 + -7052625233254188147 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyWithNestedContext/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyWithNestedContext/content.txt new file mode 100644 index 0000000000..fdc6227ddd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/SpecifyWithNestedContext/content.txt @@ -0,0 +1,29 @@ +!*< def +!define html ({{{ + + + + + + + +}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + true + + true + + + + + + true + 1245896680307 + -3200205646019621938 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/content.txt new file mode 100644 index 0000000000..5f72071fa4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/content.txt @@ -0,0 +1,4 @@ +|^SpecifyWithContext| +|^SpecifyWithNestedContext| +|^SpecifyRowSelection| +|^SpecifyRowSelectionWithNestedTable| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/properties.xml new file mode 100644 index 0000000000..7ac6e1eaf7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyWithinContext/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1251844497100 + 402619878808533413 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ById/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ById/content.txt new file mode 100644 index 0000000000..22c85c37eb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ById/content.txt @@ -0,0 +1,25 @@ +!*< def +!define html ({{{
+

red

green

+

Red

Green

+
}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896765604 + -4041038154890108741 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByName/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByName/content.txt new file mode 100644 index 0000000000..2273e111de --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByName/content.txt @@ -0,0 +1,24 @@ +!*< def +!define html ({{{
+

red

green

+

Red

Green

+
}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896772886 + -3953948227284997493 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByNameWithIe/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByNameWithIe/content.txt new file mode 100644 index 0000000000..b8bc878733 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByNameWithIe/content.txt @@ -0,0 +1,20 @@ +!*< def +!define html ({{{
+

red

green

+

Red

Green

+
}}}) +*! + +|''keywords''|chrome,ie| + +!include -c + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByPosition/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByPosition/content.txt new file mode 100644 index 0000000000..0388fc4bfc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByPosition/content.txt @@ -0,0 +1,50 @@ +!*< def +!define html ({{{
+

red

green

+

Red

Green

+ + +
}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1251863477180 + 7091594596312035614 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByPositionAndId/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByPositionAndId/content.txt new file mode 100644 index 0000000000..00fbba11cc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/ByPositionAndId/content.txt @@ -0,0 +1,16 @@ +!*< def +!define html ({{{
+

red

green

+

Red

Green

+
}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + 1245896781573 + 6718771143933389791 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/InvalidXpath/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/InvalidXpath/content.txt new file mode 100644 index 0000000000..b6b9cae7fb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/InvalidXpath/content.txt @@ -0,0 +1,16 @@ +!*< def +!define html ({{{ + +

bla

}}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include + + + + + + + + + + + + + 1234227414549 + -1775889166280380542 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/content.txt new file mode 100644 index 0000000000..b6e6e67d47 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/content.txt @@ -0,0 +1,7 @@ +^ByPosition +^ById +^ByName +^ByNameWithIe +^ByPositionAndId + +^InvalidXpath \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/properties.xml new file mode 100644 index 0000000000..6b67ed7196 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyXpath/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1245802855363 + -4169450568470940083 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/RestartWithCookies/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/RestartWithCookies/content.txt new file mode 100644 index 0000000000..ddfb6b3b64 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/RestartWithCookies/content.txt @@ -0,0 +1,29 @@ +!*< def +!define target (To here +) +!define html ({{{Start +Link +Link2 }}}) +*! + +|''keywords''|htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245897088153 + -8310433879602886982 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/SimpleRestart/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/SimpleRestart/content.txt new file mode 100644 index 0000000000..f93080af6f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/SimpleRestart/content.txt @@ -0,0 +1,23 @@ +!*< def +!define target (To here +) +!define html ({{{Start +Link +Link2 }}}) +*! + +|''keywords''|chrome,htmlunit,firefox,ie| + +!include -c + + + + + + + + + + + + + 1245897068950 + 8165647874561028444 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/content.txt new file mode 100644 index 0000000000..0cab925457 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/content.txt @@ -0,0 +1,6 @@ +This action permits a switch in the middle of a spider storytest from one driver to another. Cookies are carried across. + +For example, this could be used to quickly go through the first part of a scenario using htmlunit and then switch to firefox to permit manual testing. + +>SimpleRestart +>RestartWithCookies diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/properties.xml new file mode 100644 index 0000000000..94a34d64e7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/SpecifyZzRestartWith/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1234395093008 + -1161699601836263033 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/content.txt new file mode 100644 index 0000000000..1a466e2deb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/content.txt @@ -0,0 +1,129 @@ +!3 Page Access: +# +|^SpecifyGetUrl|''Go to a URL''| +|^SpecifyTitleIs|''Check the title of the current page''| +|^SpecifyUrlIs|''Check the URL of the current page''| +|^SpecifyBackAndForward|''Move forwards and backwards''| +|^SpecifyRefresh|''Move forwards and backwards''| +# +!3 Text in Input, !-TextArea-! & Other Elements +# +|>SpecifyTextOf|''Check the text of a text field, text area, etc''| +|^SpecifyTextOfMatches|''Pattern match the text of a text field, text area, etc''| +|>SpecifyPlainTextOf|''Check for text generally. Tags and white space are removed''| +|>SpecifyInnerHtmlOf|''Check the verbatim text of any element or field. Any html tags within this text are preserved''| +|>SpecifyTextOfElementOnly|''Check the verbatim text of an element, ignoring any text that would be rendered by any inner html''| +|^SpecifyPlainTextOfMatches|''Pattern match for text generally.''| +|^SpecifyMultiLineTextMatches|''Where matching is applied to each of the lines''| +|^SpecifyWithSetText|| +|^SpecifyOptionallyWithSetText|''Quietly does nothing if the xpath element is missing''| +|^SpecifyWithAddText|| +# +!3 General Text Anywhere in the Page +# +|^SpecifyPageContainsText| +|^SpecifyPageContainsRegularExpression| +|^SpecifyPageContainsExcludingHtmlWhitespaceTokens| +|^SpecifyPageSubstringFromTo| +# +!3 General Elements: Existence, Value, Attributes, and Count +# +|^SpecifyElementExists| +|^SpecifyElementDoesNotExist| +|^SpecifyElementValue| +|^SpecifyElementType| +|^SpecifyElementAttributes| +|^SpecifyElementCount| +|>SpecifyTheAttributeOfChildrenOfTypeOfElement| +|^SpecifyVisibility| +# +!3 Checkbox, Radio, Select +# +|^SpecifyCheckbox| +|^SpecifyRadio| +|^SpecifySelect|''Select a specific option of a select''| +|>SpecifyOptionallySelect|''Optionally select a specific option of a select''| +|^SpecifyMultiSelect|''Select several options of a multi select''| +# +!3 Tables +# +|^SpecifyWholeTable| +|^SpecifyTableParts| +|^SpecifyHandlingChangesToTable| +# +!3 Link Traversal +# +|>SpecifyClick| +|^SpecifyClickOnNamedLink| +|^SpecifyTraversalFails| +# +!3 Form Submit +# +|^SpecifyFormSubmit| +# +!3 Frames: +# +|^SpecifyFrames| +|^SpecifyIframes| +# +!3 Windows (Select and Close): +# +|^SpecifyWindows| +# +!3 Cookies +# +|^SpecifyCookies| +# +!3 Within a Context +# +|^SpecifyWithinContext| +# +!3 Screen Dump +# + * Only works with htmlunit +|^SpecifyScreenDump| +# +!3 XPath +# +|^SpecifyXpath| +# +!3 Lookup +# +|^SpecifyLookup| +# +!3 Other Locators +# +|^SpecifyLocators| +|^SpecifyCssSelectorLocator| + +# +!3 General Error Checking +# +|^SpecifyGeneralErrorChecking| +# +!3 For Each (''experimental'') +# +|^ForEach| +# +!3 Switching Driver +# +|>SpecifyZzRestartWith| +# +!3 Handling Delays +# +|>SpecifyWaitingForElementToBeCreated|''An element is created by Javascript after a delay''| +|^SpecifyWaitingForChange|''An element, etc is changed by Javascript after a delay''| +|^SpecifyWaitingForChangeInVisibility|''The visibility of an element is changed by Javascript after a delay''| +|^SpecifyPollUrl|''Polling a url until a condition is met''| +# +!3 !-JavaScript-! +# +|^SpecifyJavaScript|''Responding to !-JavaScript-! DOM changes. Executing java script directly, with a parameter and with using found elements as parameters''| +# +!3 Pop-up Alerts +# +|^SpecifyAlert|''Interact with javascript pop-up alerts''| +# +!3 Finding an element which lacks a suitable locator for xpath +# +|^SpecifyFindElement| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderSpecsShared/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/SuiteSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/SuiteSetUp/content.txt new file mode 100644 index 0000000000..b70e862f8c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/SuiteSetUp/content.txt @@ -0,0 +1,8 @@ +!|fitlibrary.spider.specify.SpecifySpiderSuite| + +|'''set'''|webDriver.driver|''to''|chrome| +|'''set'''|serverPort|''to''|8999| + +|''start spider on port''|@{serverPort}|''with''| @{webDriver.driver} | + +|''select or''| @{webDriver.driver} | diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/SuiteSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/SuiteSetUp/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/SuiteSetUp/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/content.txt new file mode 100644 index 0000000000..d3ac23687d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/content.txt @@ -0,0 +1,3 @@ +!contents +To set up Chrome support, first download the appropriate ''chromedriver'' for your platform from the downloads page at http://chromium.googlecode.com/. +Make sure the server can be located on your PATH or specify its location via the '''webdriver.chrome.driver''' java system property. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/properties.xml new file mode 100644 index 0000000000..e3f9adcb97 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithChrome/properties.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/SuiteSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/SuiteSetUp/content.txt new file mode 100644 index 0000000000..8e98930c84 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/SuiteSetUp/content.txt @@ -0,0 +1,8 @@ +!|fitlibrary.spider.specify.SpecifySpiderSuite| + +|'''set'''|webDriver.driver|''to''|firefox| +|'''set'''|serverPort|''to''|8997| + +|''start spider on port''|@{serverPort}|''with''| @{webDriver.driver} | + +|''select or''| @{webDriver.driver} | diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/SuiteSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/SuiteSetUp/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/SuiteSetUp/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/content.txt new file mode 100644 index 0000000000..429d71a07e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/content.txt @@ -0,0 +1 @@ +!contents diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/properties.xml new file mode 100644 index 0000000000..e3f9adcb97 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithFirefox/properties.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/SuiteSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/SuiteSetUp/content.txt new file mode 100644 index 0000000000..df81a30240 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/SuiteSetUp/content.txt @@ -0,0 +1,8 @@ +!|fitlibrary.spider.specify.SpecifySpiderSuite| + +|'''set'''|webDriver.driver|''to''|htmlunit| +|'''set'''|serverPort|''to''|8998| + +|''start spider on port''|@{serverPort}|''with''| @{webDriver.driver} | + +|''select or''| @{webDriver.driver} | diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/SuiteSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/SuiteSetUp/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/SuiteSetUp/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/content.txt new file mode 100644 index 0000000000..8d25b29693 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/content.txt @@ -0,0 +1,2 @@ +!contents + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/properties.xml new file mode 100644 index 0000000000..e3f9adcb97 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithHtmlUnit/properties.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/SuiteSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/SuiteSetUp/content.txt new file mode 100644 index 0000000000..64310f38a5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/SuiteSetUp/content.txt @@ -0,0 +1,8 @@ +!|fitlibrary.spider.specify.SpecifySpiderSuite| + +|'''set'''|webDriver.driver|''to''|ie| +|'''set'''|serverPort|''to''|8996| + +|''start spider on port''|@{serverPort}|''with''| @{webDriver.driver} | + +|''select or''| @{webDriver.driver} | diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/SuiteSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/SuiteSetUp/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/SuiteSetUp/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/content.txt new file mode 100644 index 0000000000..8d25b29693 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/content.txt @@ -0,0 +1,2 @@ +!contents + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/properties.xml new file mode 100644 index 0000000000..e3f9adcb97 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SpiderWithIe/properties.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SuiteSetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SuiteSetUp/content.txt new file mode 100644 index 0000000000..8638e4a04e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SuiteSetUp/content.txt @@ -0,0 +1,11 @@ +!|fitlibrary.spider.specify.SpecifySpiderSuite| + + * The following driver can be firefox, htmlunit, ie. + * The following port number has to be a port that is currently unused. So it can't be the same as the ''!-FitNesse-!'' port. + +|'''set'''|webDriver.driver|''to''|htmlunit| +|'''set'''|serverPort|''to''|8998| + +|''start spider on port''|@{serverPort}|''with''| @{webDriver.driver} | + +|''select or''| @{webDriver.driver} | diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SuiteSetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SuiteSetUp/properties.xml new file mode 100644 index 0000000000..56452b9afe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/SuiteSetUp/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1254873780875 + 1524931672271089297 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/TearDown/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/TearDown/content.txt new file mode 100644 index 0000000000..3d3362faac --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/TearDown/content.txt @@ -0,0 +1 @@ +|''shut down with screen dump on failure''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/TearDown/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/TearDown/properties.xml new file mode 100644 index 0000000000..f97f6011ee --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/TearDown/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1245889945389 + 1587393218062447185 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/content.txt new file mode 100644 index 0000000000..9244860ab1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/content.txt @@ -0,0 +1,15 @@ +|!3 Spider with different browsers|''On port''| +|^SpiderWithChrome|8999| +|^SpiderWithHtmlUnit|8998| +|^SpiderWithFirefox|8997| +|^SpiderWithIe|8996| + +|^SpiderSpecsShared|''These are the specs that are shared by the browser-specific specifications above''| +# +!2 Note + * See ^HowSpecsWork + +>SpecSetUp +>SuiteSetUp +>TearDown + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/properties.xml new file mode 100644 index 0000000000..62f2ca5dbd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpecifySpiderFixture/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1255128205187 + -9171545836384849989 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingAdditions/SeveralAdditions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingAdditions/SeveralAdditions/content.txt new file mode 100644 index 0000000000..b52d59c20c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingAdditions/SeveralAdditions/content.txt @@ -0,0 +1,46 @@ +[[The web page is here][files/delaysWithAjax.html]] + +Here's the result. There are some suggested exercises below. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''checking timeout''|2000| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + + * Text: + +|''click''|addText| + +|''text of''|text0|'''is'''|green0| + +|''click''|addText| + +|''text of''|text1|'''is'''|green1| + + * Radio: + +|''click''|addRadio| + +|''element''|radio0|''exists''| + +|''with''|radio0|''select''|true| + +|''checkbox''|radio0|''is''|true| + + * Div: + +|''click''|addDiv| + +|''text of''|aDiv0|'''is'''|Blue skies 0| + +!2 Possible exercises: +# + * Extend the storytest above to '''Add Button After Delay''' + * Extend the storytest above to add multiple radios, etc + * Change the storytest to alter the delay period, with an action that first clicks on one of the ''delay'' radio buttons to change it + * Introduce ''defined actions'' to avoid repetition + +Let's look at handling the delayed removal of elements, [[on this page][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingAdditions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingAdditions/content.txt new file mode 100644 index 0000000000..d4e8d4455e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingAdditions/content.txt @@ -0,0 +1,35 @@ +[[The web page is here][files/delaysWithAjax.html]] + +Let's run this to see what happens. The explanation is embedded below: + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''checking timeout''|100| + +|''click''|addText| + +|''text of''|text0|'''is'''|green0| + +The above table fails, because spider only waits for 100 milliseconds for an HTML element to appear. + +In the following, we try again, but first change spider's ''checking timeout'' to be 2 seconds. So after that, spider will wait up to 6 seconds for it to appear. + +|''checking timeout''|2000| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''click''|addText| + +|''text of''|text0|'''is'''|green0| + +Yes, so that worked fine. Similar to ''!-FitLibrary's-!'' ''becomes'' timeout: + + * Spider waits until the element appears or until the timeout period has elapsed. + * So the test will run as quickly as possible when they pass. + * However, if an element fails to appear, the whole timeout period will be used. + +So let's extend the storytest to check the addition of several elements, [[on this page][^SeveralAdditions]] diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingAdditions/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingAdditions/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingAdditions/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/DefinedActions/content.txt new file mode 100644 index 0000000000..6f003b355d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/DefinedActions/content.txt @@ -0,0 +1,14 @@ +|''spider on port''|port| + +|''set''|fitNessePort|''to''|@{port}| + +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +|''shutdown browser automatically''|false| +---- +|''ajax on port''|port| + +|''spider on port''|@{port}| +---- diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/DefinedActions/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/DefinedActions/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/HandlingOtherChanges/HandleTextAsWell/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/HandlingOtherChanges/HandleTextAsWell/content.txt new file mode 100644 index 0000000000..cb08f2c743 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/HandlingOtherChanges/HandleTextAsWell/content.txt @@ -0,0 +1,33 @@ +[[The web page is here][files/delaysWithAjax.html]] + +Here's the storytest, with three cells left for you to complete (those marked with "??") + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''becomes timeout''|2000| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''with''|newOption|''select option''|red| + +|''click''|changeOption| + +|''option of''|optionUnderChange|'''becomes'''|Red| + +|''with''|??|''set text''|Skies are grey| + +|''click''|??| + +|''text of''|??|'''becomes'''|Skies are grey| + +Hint: + + * If you're using ''fireBug'', find out the ''id'' of the HTML elements by right clicking on the element and selecting "''Inspect element''". + * See [[this page][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/HandlingOtherChanges/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/HandlingOtherChanges/content.txt new file mode 100644 index 0000000000..2efe7a466d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/HandlingOtherChanges/content.txt @@ -0,0 +1,21 @@ +[[The web page is here][files/delaysWithAjax.html]] + +Here we change the option: + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''becomes timeout''|2000| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''with''|newOption|''select option''|red| + +|''click''|changeOption| + +|''option of''|optionUnderChange|'''becomes'''|Red| + +Have a go yourself at finishing the storytest [[on this page][^HandleTextAsWell]] to include the text change. + +Note that [[this page][^HandleTextAsWell]] also continues the tutorial. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/HandlingOtherChanges/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/HandlingOtherChanges/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/HandlingOtherChanges/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/BecomesFails/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/BecomesFails/content.txt new file mode 100644 index 0000000000..b2a31b1852 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/BecomesFails/content.txt @@ -0,0 +1,19 @@ +We can run this to see how it fails. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''becomes timeout''|6000| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''title''|'''is'''|Delays With Ajax| + +|''with''|newTitle|''set text''|Fancy Title| + +|''click''|changeTitle| + +|''title''|'''becomes'''|The Wrong Title| + +[[Back to the previous page][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/BecomesTimesOut/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/BecomesTimesOut/content.txt new file mode 100644 index 0000000000..16406b575f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/BecomesTimesOut/content.txt @@ -0,0 +1,19 @@ +We can run this to see it fail due to the timeout begin less than 5 seconds. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''becomes timeout''|4000| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''title''|'''is'''|Delays With Ajax| + +|''with''|newTitle|''set text''|Fancy Title| + +|''click''|changeTitle| + +|''title''|'''becomes'''|Fancy Title| + +[[Back to previous page][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/content.txt new file mode 100644 index 0000000000..a5dc83c500 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/content.txt @@ -0,0 +1,45 @@ +[[The web page is here][files/delaysWithAjax.html]] + +Let's try running this as a test. If we can watch both the fireFox browser test page and the report being rolled out here, we'll see: + + * That the tables of the report here are displayed once they have finished running. + * The last table takes about 1 second before it is displayed, due to the default delay of the test page. + * The last table is only displayed once the ''title'' has been changed in the test page + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''becomes timeout''|2000| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''title''|'''is'''|Delays With Ajax| + +|''with''|newTitle|''set text''|Fancy Title| + +|''click''|changeTitle| + +|''title''|'''becomes'''|Fancy Title| + +We have made two changes to the storytest: + +1. The last table contains '''becomes''' instead of '''is'''. + + * This means that ''!-FitLibrary-!'' checks the ''title'' action (or any other) repeatedly for up to 2 seconds or until it changes to be the expected value. + +2. We have inserted a new, third table above. + + * This specifies the timeout period for '''becomes''' of 2 seconds. + * It needs to be longer than the 1 second delay we expect from our test page. + +In this case, we could make the '''becomes''' timeout much longer if we wish; the ''title'' check will still only take 5 seconds. + +However: + + * If the value is wrong, it will use the whole timeout period before an error is signalled. You can see that [[on this page][^BecomesFails]] + * If the timeout period is not long enough, it will also give an error. You can see that [[on this page][^BecomesTimesOut]] + +As we said before, the timeout period doesn't delay storytests unless they fail during a '''becomes''' check. + +Let's also test the changes to the text and the option [[on this page][HandlingOtherChanges]] diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/UsingBecomes/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/content.txt new file mode 100644 index 0000000000..d0f3b5c7b0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/content.txt @@ -0,0 +1,23 @@ +[[The web page is here.][files/delaysWithAjax.html]] + +You may find it convenient to open this page in another window, so you can easily look at it at the same time as the storytests below. + +Let's start by seeing it fail. Then we can see how to fix it. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''title''|'''is'''|Delays With Ajax| + +|''with''|newTitle|''set text''|Fancy Title| + +|''click''|changeTitle| + +|''title''|'''is'''|Fancy Title| + +When we run the test, the last table fails, because the title is still the original one. + +So we need to allow for the time delay before the change occurs, as we see [[on the next page][^UsingBecomes]] diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingChanges/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingRemovals/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingRemovals/content.txt new file mode 100644 index 0000000000..8ce21d893c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingRemovals/content.txt @@ -0,0 +1,40 @@ +[[The web page is here][files/delaysWithAjax.html]] + +We're going to create a new button and then click it to delete it. + +Let's try it and see... + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''checking timeout''|2000| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''click''|addButton| + +|''element''|button0|''exists''| + +|''click''| button0 | + +|''element''|button0|''does not exist''| + +The last action checks that the element doesn't exist. + + * If the element currently exists, spider is prepared to wait. + * If the element is removed within the timeout period, the action passes + * If the element remains for the whole timeout period, it fails + +We can verify the timeout with the following because that button will remain. Hence the following fails: + +|''element''| addButton |''does not exist''| + +!2 Exercise +# +Extend the above storytest to add and remove several buttons + +Let's now look at handling elements whose visibility changes [[on this page][HandlingVisibility]]. + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingRemovals/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingRemovals/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingRemovals/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingVisibility/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingVisibility/content.txt new file mode 100644 index 0000000000..8262ee6527 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/HandlingVisibility/content.txt @@ -0,0 +1,37 @@ +[[The web page is here][files/delaysWithAjax.html]] + +We're going to test that an element changes its visibility after a delay. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''becomes timeout''|2000| + +|''get url''|http://localhost:@{fitNessePort}/files/delaysWithAjax.html| + +|''element''|visibilityUnderChange|''visible''| + +|''click''|makeInvisible| + +|''element''|visibilityUnderChange|''visible''| + +|''element''|visibilityUnderChange|''invisible''|'''becomes'''|true| + +|''click''| makeVisible| + +|''element''|visibilityUnderChange|''invisible''| + +|''element''|visibilityUnderChange|''visible''|'''becomes'''|true| + +The last action checks that the element is visible. + + * If the element is invisible, spider is prepared to wait. + * If the element becomes visible within the timeout period, the action passes + * If the element remains invisible for the whole timeout period, it fails +# +!1 Next +# +That's the end of the tutorial. See [[Wrap Up][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/content.txt new file mode 100644 index 0000000000..0e08447cad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/content.txt @@ -0,0 +1,33 @@ +!1 Part 7: Handling Delays with Ajax + +When a web application makes use of ajax, there can be delays. + +For example, when the user clicks on a button, the browser may quietly call through to the server, get some new content and add it to the page. Depending on the load on the system, there may be a small delay before the new content appears. + +So we have to make allowance for those delays in our automated tests. +# +!2 An Example +# +I suggest that you play with [[this web page][files/delaysWithAjax.html]]. And then come back here (using the '''Back''' button on the browser). We'll then look at how to handle the time delays with that web page in our tests. +# +!2 (Mis-)Using Sleeps +# +The common approach is to include explicit ''wait'' or ''sleep'' actions after an action that may take some time. But this approach has its problems: + + * If we make the ''sleep'' time too short, we will sometimes get spurious errors that are just due to delays + * If we make the ''sleep'' time too long, the tests will take a lot longer to run. + +It's difficult to balance between these two problems, and especially when tests need to be run in different environments in which the delay is likely to differ substantially. Trying to "tune" the ''sleeps'' can be very painful. +# +!2 Timeouts instead +# +The approach that we take with ''!-SpiderFixture-!'' is to instead specify a timeout period after which a test will fail. + + * That means that the test passes as quickly as it can. + * Only if a test fails will it wait for the time-out period before failing. + * So we get the best of both worlds, and don't have the balance two conflicting aims, as in the ''sleep'' approach above. + * The timeout period can be set globally, and just altered locally if we need longer timeout in one spot than usual + +In fact, there are two separate timeouts, as we'll see. + +Let's start with handling ajax-style [[changes to existing HTML elements][^HandlingChanges]] diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/properties.xml new file mode 100644 index 0000000000..34a5d8fd1e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/AjaxTiming/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/UsingDefinedActions/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/UsingDefinedActions/DefinedActions/content.txt new file mode 100644 index 0000000000..9fded3b528 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/UsingDefinedActions/DefinedActions/content.txt @@ -0,0 +1,63 @@ +This page contains two ''defined actions'', separated by a horizontal line. The ''defined actions'' are named according to the first table: + + * ''suite test on port'' + * ''check suite passes'' + +Each of these take a single parameter (in the second cell of the first table of each). + +Let's look further at the first ''defined action'', ''suite test on port''. + + * The first (''header'') table names the ''defined action'' and names a single parameter ("''port''"). The following 5 tables make up the ''body'' of the ''defined action'' (down to the horizontal line). + * When a ''defined action'' is called, as on the previous page, the body is run after substituting the argument of the call for all uses of the parameter in the body. + * For example, if the first ''defined action'' is called with an argument 8090, the @{port} is treated as being 8090. + * This means that the same sequence of actions (in the body of the ''defined action'') can be used with different values. + +|''suite test on port''|port| + +|''set expand defined actions''|true| + +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +|''set''|fitNessePort|''to''|@{port}| + +|''shutdown browser automatically''|false| +---- +In the second ''defined action'', which follows, the name "''check suite passes''" is made of two parts, from the first and third cells ("''check suite''" and "''passes''"). The second cell contains the parameter ("''suite''"). + +The parameter ''suite'' is used in three places in the body of the ''defined action'', as seen below. + +On the previous page, when the test is run the ''defined action'' call is expanded. You may like to go back and look again. + +!3 In general: +# + * ''Defined actions'' can take any number of parameters, including none + * A use of a parameter in the body of a ''defined action'' is of the form "@{''parameterName''}" + * A parameter can be used several times in the body + * A ''defined action'' can in turn call other ''defined actions'', passing parameters + * Calls to ''defined actions'' are automatically expanded if something goes wrong when a storytest is run. + * You can request that all calls are expanded, using the ''set expand defined actions'' action, as shown in the first ''defined action'' above + + * ''Defined actions'' follow the usual ''!-FitLibrary-!'' convention of actions starting with a keyword and then alternating between data and keyword cells. + * ''Defined actions'' are a part of ''!-FitLibrary-!'' and can be used with any tables. They are not limited to use with ''!-SpiderFixture-!'' + + * ''Defined actions'' are a good way to avoid repetitive tables. This makes it easier to maintain the storytests under changes in the system. + * They are also a good way to provide concise business level terminology, hiding the details of how the tests are carried out. + +For the next tutorial [[see ''Evolving Defined Actions''][ + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/UsingDefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/UsingDefinedActions/content.txt new file mode 100644 index 0000000000..0732d8f9b8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/UsingDefinedActions/content.txt @@ -0,0 +1,33 @@ +We'll take the 3 sections of the previous storytest and use ''defined actions'' to give a higher-level view of what's going on. + +If we ignore the first table for the moment, the other tables summarise what's going on: + + * We're running a ''suite'' test (this starts up ''!-SpiderFixture-!'', etc on the given port) + * We check one suite + * We check a second suite + +Start by pressing the '''Test''' button to see what happens. Notice that the same sequence of actions occur on the associated browser, and that the report shows the last three actions below expanded. + +We need to begin by telling ''!-FitLibrary-!'' to load the ''defined actions'' (unfortunately, this has to be a complete page name). + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.DefinedActions.UsingDefinedActions.DefinedActions| + +|''suite test on port''|${FITNESSE_PORT}| + +|''check suite''|!-TemplateFixture-!|''passes''| + +|''check suite''|!-XmlProcessing-!|''passes''| + +So let's look at how this works. Notice the names of the two actions used in the last 3 tables above. + + * The first action, ''suite test on port'', takes a single argument, the port number. + + * The second of the actions, ''check suite passes'', take a single argument, the name of the suite concerned. + +Now, for an explanation of ''defined actions'', click on the [[link][.FitLibraryWeb.SpiderFixture.SpiderTutorial.DefinedActions.UsingDefinedActions.DefinedActions]] contained in the single argument of the ''define actions at'' in the first table above. + + * This takes us to where these actions are defined (that's why they're called ''defined actions''). + +!2 Next +# +For the next part of the tutorial see [[''Part 3: Evolving Defined Actions''][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/content.txt new file mode 100644 index 0000000000..77834011f8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/content.txt @@ -0,0 +1,60 @@ +!1 Part Two +# +[[The first part of the tutorial][StartingWithSpider]] covered writing a storytest for running the ''!-TemplateFixture-!'' suite. + +Let's look at also running the ''!-XmlProcessing-!'' suite. I've split it up into three sections, separated by horizontal lines, so you can see the pattern. + +You may like to run it. +---- +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +|''shutdown browser automatically''|false| +---- +|''get url''|http://localhost:${FITNESSE_PORT}/FitLibraryWeb.TemplateFixture| + +|''title''|'''is'''|!-FitLibraryWeb.TemplateFixture-!| + +|''text of''|//span[@class="page_title"]|'''is'''|!-TemplateFixture-!| + +|''click on named link''|Suite| + +|''element''|//div[@id='test-summary' and @class='pass']|'''exists'''| + +|''text of''|//div[@id='test-summary']|'''contains'''|right, 0 wrong, 0 ignored, 0 exceptions| +---- +Now we handle ''!-XmlProcessing-!'' (by copying and pasting and altering some of the text in the tables from above): + +|''get url''|http://localhost:${FITNESSE_PORT}/FitLibraryWeb.XmlProcessing| + +|''title''|'''is'''|!-FitLibraryWeb.XmlProcessing-!| + +|''text of''|//span[@class="page_title"]|'''is'''|!-XmlProcessing-!| + +|''click on named link''|Suite| + +|''element''|//div[@id='test-summary' and @class='pass']|'''exists'''| + +|''text of''|//div[@id='test-summary']|'''contains'''|right, 0 wrong, 0 ignored, 0 exceptions| +---- +!2 Reflection +# +That works fine. But it's starting to get messy. And it's not clear what some of it's about as there is a lot of detail to read through. + +We could add further comments, and that might help. + +We soon want to also check that the ''!-MockWebServices-!'' suite works. Again, we could copy and paste. + +The above approach means: + + * It makes it still harder to see what's going on + * If we need to change the way the verification works, because of a change to the html that's used, we have to search through and change it repeatedly + * It's easy to get lost in the detail, so that we don't notice we've missed an important case + * If we want to check with a product owner about whether a storytest is correct, they're likely to be distracted and/or dismayed by the technical detail of xpaths, etc +# +!2 Being Elegant and Precise +# +Notice that the tables above that check ''!-XmlProcessing-!'' are the same as the corresponding tables for !-TemplateFixture-! except for a few little details (the names). + +So let's look at being elegant and precise with ''defined actions'', as covered on the [[next page][^UsingDefinedActions]]. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/DefinedActions/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/CheckSuiteOrTest/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/CheckSuiteOrTest/content.txt new file mode 100644 index 0000000000..072e605671 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/CheckSuiteOrTest/content.txt @@ -0,0 +1,53 @@ +We've added the new ''defined action'' for tests. + +To avoid repetition, we've introduced an additional ''defined action'' that covers all the cases and is called by the others. + +Notice that we want to keep the "domain language" used in storytests simple, so we don't use that last ''defined action'' directly in storytests because it exposes some low-elevel detail (the name of the link to click). + + +|''check suite''|suite|''passes''| + +|''check suite''|@{suite}|''at''| |''passes''| + +---- +|''check suite''|suite|''at''|prefix|''passes''| + +|''check suite''|@{suite}|''at''|@{prefix}|''with link''|Suite|''passes''| +---- +|''check test''|test|''passes''| + +|''check test''|@{test}|''at''| |''passes''| +---- +|''check test''|test|''at''|prefix|''passes''| + +|''check suite''|@{test}|''at''|@{prefix}|''with link''|Test|''passes''| +---- +|''check suite''|suite|''at''|prefix|''with link''|suiteOrTest|''passes''| + +|''start stop watch''| + +|'''show'''|''stop watch''| + +|''get url''|http://localhost:@{fitNessePort}/FitLibraryWeb.@{prefix}@{suite}| + +|'''show'''|''stop watch''| + +|''title''|'''is'''|!-FitLibraryWeb.@{prefix}@{suite}-!| + +|'''show'''|''stop watch''| + +|''text of''|//span[@class="page_title"]|'''is'''| @{suite}| + +|'''show'''|''stop watch''| + +|''click on named link''|@{suiteOrTest}| + +|'''show'''|''stop watch''| + +|''element''|//div[@id='test-summary' and @class='pass']|'''exists'''| + +|'''show'''|''stop watch''| + +|''text of''|//div[@id='test-summary']|'''matches'''|right, 0 wrong, .* ignored, 0 exceptions| + +|'''show'''|''stop watch''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/CheckSuiteOrTest/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/CheckSuiteOrTest/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/CheckSuiteOrTest/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/StartSpider/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/StartSpider/content.txt new file mode 100644 index 0000000000..591a68253f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/StartSpider/content.txt @@ -0,0 +1,12 @@ +|''suite test on port''|port| + +|''set expand defined actions''|true| + +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +|''set''|fitNessePort|''to''|@{port}| + +|''shutdown browser automatically''|false| +---- diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/StartSpider/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/StartSpider/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/StartSpider/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/content.txt new file mode 100644 index 0000000000..c5d128ecdc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/content.txt @@ -0,0 +1,14 @@ +^StartSpider +^CheckSuiteOrTest + +We see here that this page doesn't contain any ''defined actions''. Instead, they are provided in children pages of this one. + +When ''!-FitLibrary-!'' loads ''defined actions'' from a page, it also loads from any children of that page. So the ''defined actions'' in ^StartSpider are also loaded. + +This is a good way to organise larger number of defined actions. Organise them in a hierarchy, grouped by function. It makes it easier to find and reuse them. + +Often, ''defined actions'' are shared across all of the storytests of a suite. + + * So it makes sense to load them from within a ''!-SuiteSetUp-!'' page for the whole suite so that they're only loaded once. + * ''!-FitNesse-!'' automatically loads the ''!-SuiteSetup-!'' page before all others in a suite (see the ''!-FitNesse-!'' documentation for more details) + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/DefinedActions/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/content.txt new file mode 100644 index 0000000000..116117c061 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddAnother/content.txt @@ -0,0 +1,29 @@ +Here's the change, which introduces a new ''defined action'', as shown in the last table below. + +We've left out the ''!-SpiderFixture-!'' check simply because it takes so long. + +If you click to go to the page linked to in the first table, you'll see that the ''defined actions'' have also been reorganised. + +If you run this test, you'll also see that "''stop watches''" have been added to give feedback on the time that things take. + + * You may find it useful to use ''stop watches'' in your own tests in the future. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.EvolvingDefinedActions.AddAnother.DefinedActions| + +|''suite test on port''|${FITNESSE_PORT}| + +|''check suite''|!-TemplateFixture-!|''passes''| + +|''check suite''|!-XmlProcessing-!|''passes''| + +|''check test''|!-DetailedExample-!|''at''|!-CreateDate.-!|''passes''| + +!2 Evolution + +That's it for this part. We've seen how ''defined actions'' can evolve as your needs change. + +In general, it's not possible to design them all ahead of time. The best way is to evolve them and ''refactor'' them as you go. Yes, this make them like code. + +!2 Next +# +The next part is here: [[Part 4: Handling Forms][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/DefinedActions/content.txt new file mode 100644 index 0000000000..7f9f2a7866 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/DefinedActions/content.txt @@ -0,0 +1,41 @@ +This page contains a third ''defined action'', added from the previous page. + +|''suite test on port''|port| + +|''set expand defined actions''|true| + +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +|''set''|fitNessePort|''to''|@{port}| + +|''shutdown browser automatically''|false| +---- +|''check suite''|suite|''passes''| + +|''get url''|http://localhost:@{fitNessePort}/FitLibraryWeb.@{suite}| + +|''title''|'''is'''|!-FitLibraryWeb.@{suite}-!| + +|''text of''|//span[@class="page_title"]|'''is'''| @{suite}| + +|''click on named link''|Suite| + +|''element''|//div[@id='test-summary' and @class='pass']|'''exists'''| + +|''text of''|//div[@id='test-summary']|'''contains'''|right, 0 wrong, 0 ignored, 0 exceptions| +---- +|''check suite''|suite|''at''|prefix|''passes''| + +|''get url''|http://localhost:@{fitNessePort}/FitLibraryWeb.@{prefix}@{suite}| + +|''title''|'''is'''|!-FitLibraryWeb.@{prefix}@{suite}-!| + +|''text of''|//span[@class="page_title"]|'''is'''| @{suite}| + +|''click on named link''|Suite| + +|''element''|//div[@id='test-summary' and @class='pass']|'''exists'''| + +|''text of''|//div[@id='test-summary']|'''matches'''|right, 0 wrong, .* ignored, 0 exceptions| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/DefinedActions/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/DefinedActions/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/content.txt new file mode 100644 index 0000000000..0a136fb8f2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/content.txt @@ -0,0 +1,17 @@ +So we'll introduce a new ''defined action'', called ''check suite at passes'' that takes two arguments, and is used with "!-SpecifySpiderFixture-!" in the last action (table) below.. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.EvolvingDefinedActions.AddDefinedAction.DefinedActions| + +|''suite test on port''|${FITNESSE_PORT}| + +|''check suite''|!-TemplateFixture-!|''passes''| + +|''check suite''|!-XmlProcessing-!|''passes''| + +|''check suite''|!-SpecifyRadio-!|''at''|!-SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.-!|''passes''| + +That all works. But if we look at the second and third ''defined action'', they look rather similar. + +So we have repetition in the ''defined actions'' themselves. How do we manage that? + +By removing the repetition, as shown [[on this page][RemoveRepetition]]. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/AddDefinedAction/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/DefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/DefinedActions/content.txt new file mode 100644 index 0000000000..efcbc4babe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/DefinedActions/content.txt @@ -0,0 +1,33 @@ +So now we change the second ''defined action'' so it in turn calls the third one. It passes an empty "''prefix''" argument. + +In general, it's not quite as easy as this to remove repetition in ''defined actions''. Sometimes it's necessary to take parts out of two and make a third ''defined action''. + +|''suite test on port''|port| + +|''set expand defined actions''|true| + +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +|''set''|fitNessePort|''to''|@{port}| + +|''shutdown browser automatically''|false| +---- +|''check suite''|suite|''passes''| + +|''check suite''|@{suite}|''at''| |''passes''| +---- +|''check suite''|suite|''at''|prefix|''passes''| + +|''get url''|http://localhost:@{fitNessePort}/FitLibraryWeb.@{prefix}@{suite}| + +|''title''|'''is'''|!-FitLibraryWeb.@{prefix}@{suite}-!| + +|''text of''|//span[@class="page_title"]|'''is'''| @{suite}| + +|''click on named link''|Suite| + +|''element''|//div[@id='test-summary' and @class='pass']|'''exists'''| + +|''text of''|//div[@id='test-summary']|'''matches'''|right, 0 wrong, .* ignored, 0 exceptions| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/DefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/DefinedActions/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/DefinedActions/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/content.txt new file mode 100644 index 0000000000..ff54c0846a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/content.txt @@ -0,0 +1,17 @@ +The storytest here is exactly the same as the previous page except that the ''defined actions'' are different. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.EvolvingDefinedActions.RemoveRepetition.DefinedActions| + +|''suite test on port''|${FITNESSE_PORT}| + +|''check suite''|!-TemplateFixture-!|''passes''| + +|''check suite''|!-XmlProcessing-!|''passes''| + +|''check suite''|!-SpecifyRadio-!|''at''|!-SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.-!|''passes''| + +If you run this, you'll see the difference in the first 2 of the last 3 expanded action calls. You can also click on the link to the ''defined actions'' above to take a look. + +Let's handle now handle .FitLibraryWeb.CreateDate.DetailedExample. If you click on that link (before coming '''Back'''), you'll see that it's not a "Suite" but a "Test". + +Let's see how to do that [[in the next page][AddAnother]]. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/RemoveRepetition/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/content.txt new file mode 100644 index 0000000000..bb4b6358a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/content.txt @@ -0,0 +1,26 @@ +!1 Part Three +# +Let's now see how ''defined actions'' need to evolve. + +Consider the storytest from the previous tutorial: + +|''define actions at''|..FitLibraryWeb.SpiderFixture.SpiderTutorial.DefinedActions.UsingDefinedActions.DefinedActions| + +|''suite test on port''|${FITNESSE_PORT}| + +|''check suite''|!-TemplateFixture-!|''passes''| + +|''check suite''|!-XmlProcessing-!|''passes''| + +We'd also like to use it to run some of the ''!-SpiderFixture-!'' storytests, those concerned with radio buttons. We could try using: + +|''check suite''|!-SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.SpecifyRadio-!|''passes''| + +If you run that, however, you'll see that it fails. That's because the page name is incorrect. + +So we need a variation on ''check suite passes'': + + * We need to pass in the "prefix" page as well + * We need to ignore the ''ignored'' count + +Let's do that [[on this page][^AddDefinedAction]]. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/EvolvingDefinedActions/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingForms/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingForms/content.txt new file mode 100644 index 0000000000..9d9d25e6a5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingForms/content.txt @@ -0,0 +1,88 @@ +!1 Part Four +# +Let's look at how to manage with HTML forms. + +We'll write storytests to handle the tables on a web page. [[The web page is here.][files/handlingForms.html]] + +You may find it convenient to open this page in another window, so you can easily look at it at the same time as the storytests below. + +We'll make use of only one ''defined action'' here, to start spider, and show the details in the storytests. + + * In a real storytest, we'd want to hide much of the following detail in ''defined actions''. + * We no longer request that ''defined action'' calls are expanded. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''spider on port''|${FITNESSE_PORT}| + +|''get url''|http://localhost:@{fitNessePort}/files/handlingForms.html| + + * We'll change the various HTML form elements and check them to show how that can also be done. + + * Text: + +|''with''|name|''set text''|Rick Mugridge| + +|''text of''|name|''is''|Rick Mugridge| + + * Text Area: + +|''with''|address|''set text''|Waimauku, New Zealand| + +|''text of''|address|''is''|Waimauku, New Zealand| + + * Password: + +|''with''|passwd|''set text''|pastword| + +|''text of''| passwd|'''is'''|pastword| + + * Checkbox: + +|''with''|spam|''select''|true| + +|''checkbox''|spam|''is''|true| + + * Radio button: + +|''with''|100|''select''|true| + +|''checkbox''|100|''is''|true| + + * Select + +|''with''|type|''select option''|Private| + +|''option of''|type|''is''| Private | + + * Muliple Select + +|''with''|interests|''add selection''|Business| +|''with''|interests|''add selection''|Holidays| + +|''option list of''| interests |'''is'''|Business, Holidays | + +|''with''| interests |''remove selection''|Business| + +|''option list of''| interests |'''is'''| Holidays | + + * We'll delay, so you have time to look at the changed web page: + +|''sleep for''|5000| + + * Submit + +|''click''|submit| + +Note that above leads to a page with an error message, even though the test passes. + +!2 Note +# +In testing a real system, we'd: + + * probably have to use ''xpath'' expressions to locate the elements on the form, as all elements won't necessarily have IDs + * need to verify that we'd got to the correct page (by ''url'' or ''title'') and that it has the correct contents. + +!2 Next +# +The next part is here: [[Part 5: Handling Tables][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingTables/WithinRow/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingTables/WithinRow/content.txt new file mode 100644 index 0000000000..15d9f65dd8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingTables/WithinRow/content.txt @@ -0,0 +1,55 @@ +[[The web page is here.][files/handlingTables.html]] + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''spider on port''|${FITNESSE_PORT}| + +|''get url''|http://localhost:@{fitNessePort}/files/handlingTables.html| + +!2 3. We can check (or act on) particular rows at a specific place: +# +|''with''|//table//tr[2]|''do''| +|''text of''|//td[1]|''is''|Scala| +|''text of''|//td[2]|''matches''|Java, H.*| +|''text of''|//td[3]|''is''|2003| + +The first row of the above table matches on a particular element on the page. + + * Subsequent rows of the table are relative to that element. + * Most spider actions can be used here (those that relate to specific elements), such as to click a link or change a radio button + * This type of table can be used to access into any element with sub-structure, such as a table, list, div, etc. + +!2 4. And we can check (or act on) the contents of a row that matches some criteria: +# +Often we want to check just one row of a table, and we don'y know or care where it might be in the table. + +|''find element from''|//table|''with tag''|tr|''where''| +|''text contains''|Scala| +|''show''| +|''select''| +|''text of''|//td[1]|''is''|Scala| +|''text of''|//td[2]|''matches''|Java, H.*| +|''text of''|//td[3]|''is''|2003| +|''click''|//td[1]//a| + +The first row of the above table matches on a particular row of the table, so we can check or act on cells within that row: + + * The first row select the element that contains the substructure + * The second row selects the ''tr'' child that has the given text + * The third row displays the contents of that row in the report (this is handy for when things go wrong) + * The 4th row specifies that the selection is complete. Subsequent rows check/act within the context of the chosen row + * Eg, the 5th row checks that the first cell of the row contains some text + * All rows after the ''select'' may use most of the spider actions those that relate to specific elements) + +!2 Handling any Structures +# +As with the previous example, this type of table can be used to match any sub-element of any structure, such as a table, list, div, etc. + +See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpecifyFindElement for further examples. These show the other types of selectors that can be used, such as: + + * An attribute of an element has some value + * The text '''matches''' or '''contains''' some text + +!2 Next +# +For the next part: [[Part6: Handling Windows][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingTables/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingTables/content.txt new file mode 100644 index 0000000000..e44ae39d23 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingTables/content.txt @@ -0,0 +1,41 @@ +Let's look at how to manage with HTML tables (or any other elements that have sub-structure). + +We'll write storytests to handle the tables on a web page. [[The web page is here.][files/handlingTables.html]] + +You may find it convenient to open this page in another window, so you can easily look at it at the same time as the storytests below. + +!2 1. We can check the whole contents of a table. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''spider on port''|${FITNESSE_PORT}| + +|''get url''|http://localhost:@{fitNessePort}/files/handlingTables.html| + +|''table values''|pls| +|Name|Possible Influences|Year| +|Scala|Java, Haskell|2003| +|C#|Java, Delphi, C++|2000| +|!-JavaScript-!|Java|1995| +|Java|C++|1995| +|Ruby|Perl, Smalltalk, Eiffel, Lisp|1995| +|Haskell|Lazy ML, Miranda|1990| +|C++|C, Simula, Smalltalk|1983| +|Smalltalk|Simula, Lisp|1980| + +The above table matches the text of the given table exactly. + + * It must have all the cells in the same place in order to match. + * All the text in a cell is considered, even text within elements in a cell, such as the link on the first column. + +!2 2. We can also check (or act on) particular cells, using ''xpaths'' +# +|''text of''|//table//tr[2]//td|''is''|Scala| + +|''click''|//table//tr[2]//td//a| + +The above makes use of an ''xpath'' expression to select the first cell of the second row of the table. + +!2 Rows +# +Let's look at checking and/or acting on cells within a particular row [[on this page][^WithinRow]] diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingTables/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingTables/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingTables/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingWindows/NoTarget/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingWindows/NoTarget/content.txt new file mode 100644 index 0000000000..42bdb1b484 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingWindows/NoTarget/content.txt @@ -0,0 +1,49 @@ +Let's see how to swtich to a window that has no ''target'' name (the white one). + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''get url''|http://localhost:@{fitNessePort}/files/handlingWindows.html| + +|''text of''|//h1|'''is'''|Handling Windows| + + * Go White. As it has no ''target'' (the second argument to the javascript call), we select it immediately: + +|''click and select resulting window''|popupWhite| + +|''text of''|//h1|'''is'''|White| + +|''select initial window''| + + * Go Blue + +|''click''|popupBlue| + +|''select window''|window with blue| + +|''text of''|//h1|'''is'''|Blue| + + * Go Back to White. As it has no ''target'', we have to select it by some of its contents; here we use the ''title''. + +|''select window with''|//title|''as''|!-PopUp White-!| + +|''text of''|//h1|'''is'''| White | + + * Close White: + +|''close''| + + * Close Blue: + +|''select window''|window with blue| + +|''close''| + + * So we're back on the initial window + +|''text of''|//h1|'''is'''|Handling Windows| + +!2 Next +# +For the next part: [[Part7: Handling Delays][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingWindows/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingWindows/content.txt new file mode 100644 index 0000000000..fc54417b71 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingWindows/content.txt @@ -0,0 +1,46 @@ +!1 Part 6 +# +Let's look at how to handle windows. + +We'll write storytests to handle several windows that can be opened as popups from a web page. [[The web page is here.][files/handlingWindows.html]] + +That web page has: + + * A link that creates a (Red) window in the browser (in fireFox and Google Chrome it appears in another tab) + * 2 buttons that create blue and white popup windows (using javascript). + * The blue and white windows popup and will appear in the same place, so you'll need to drag the windows to see them both. + * The white popup window doesn't have a ''target'' name. + * This impacts on how we can refer to it. + +|''define actions at''|.FitLibraryWeb.SpiderFixture.SpiderTutorial.AjaxTiming.HandlingChanges.DefinedActions| + +|''ajax on port''|${FITNESSE_PORT}| + +|''get url''|http://localhost:@{fitNessePort}/files/handlingWindows.html| + +|''text of''|//h1|'''is'''|Handling Windows| + + * Go Red + +|''click''|accessRed| + + * The red window has a ''target'' name (the ''target'' value in the ''a'' link in the HTML) and so we can refer to it easily: + +|''select window''|window with red| + + * So now any reference to elements are to the currently-selected window: + +|''text of''|//h1|'''is'''|Red| + + * Close the current (Red) window: + +|''close''| + +|''select initial window''| + + * We're back on the initial page: + +|''text of''|//h1|'''is'''|Handling Windows| + + +Let's now try the blue and white popup windows and switch between them [[on this page][^NoTarget]] diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingWindows/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingWindows/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/HandlingWindows/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/ClickingButton/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/ClickingButton/content.txt new file mode 100644 index 0000000000..cc69e7c1de --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/ClickingButton/content.txt @@ -0,0 +1,69 @@ +!2 Clicking the '''Suite''' button +# +Let's now locate the '''Suite''' button. With Firebug we see that the structure is: +{{{
+ Suite +}}}We could either locate it by xpath (//div[@class="actions"]/a[1]) or by the name of the link ("Suite"). + +That xpath assumes that the "Suite" button will always be the first one, so it's more fragile (and harder to debug) if the position changes. At least, if the name changes, we'll have a good idea of what to change it to. + +So let's locate it by name. +# +!2 Verifying a Pass +# +Now let's consider how to verify that the suite passes. We run the suite by hand, by clicking on "Suite", and inspect the result. + +We see that when the suite run finishes, a box near the top has been coloured green. At the time I wrote this, firebug's inspection showed: +{{{
+ Test Pages: + 5 right, 0 wrong, 0 ignored, 0 exceptions + Assertions: + 8 right, 0 wrong, 0 ignored, 0 exceptions +
}}}So we can check for success for verifying that that element contains "0 wrong, 0 ignored, 0 exceptions" -- ie, all passed. We'll use XPather to verify the xpath: +{{{ //div[@id='test-summary']}}}Yes, that does. + +Alternatively, we could simply check that the ''div'' appears with a pass (rendered as green). We can use XPather to check that too: +{{{ //div[@id='test-summary' and @class='pass']}}}Yes that does. +# +!2 The revised Storytest +# +So the whole storytest becomes: + +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +|''shutdown browser automatically''|false| + +|''get url''|http://localhost:${FITNESSE_PORT}/FitLibraryWeb.TemplateFixture| + +|''title''|'''is'''|!-FitLibraryWeb.TemplateFixture-!| + +|''text of''|//span[@class="page_title"]|'''is'''|!-TemplateFixture-!| + +|''click on named link''|Suite| + +|''element''|//div[@id='test-summary' and @class='pass']|''exists''| + +|''text of''|//div[@id='test-summary']|'''contains'''|right, 0 wrong, 0 ignored, 0 exceptions| +# +!2 Summary +# +So we've made some progress. We've covered the basics of using ''!-SpiderFixture-!'' to: + + * Get a page + * Verify the title + * Verify the text of an element on the page, located by ''xpath'' + * Click a button, located by the link name + * Verify the existence of an element, located by ''xpath'' + +You may have noticed that the suite takes some time to complete, yet we have written the storytest as if it happens immediately. However, that's fine as: + + * When the next action after the ''get url'' action is called, the page will already be loaded. + * As we cover in a later part, this works fine until ajax is involved + +We've also introduced the use of ''Firebug'' and ''XPather'' as very useful tools for finding the best way to locate html elements on the page. So far, we've been lucky that it's been straightforward to do so. We'll cover hard-to-locate elements in a later tutorial. + +!2 Next +# +You may like to proceed to the next part of the tutorial now: [[Part Two: Defined Actions][ + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/UsingXpath/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/UsingXpath/content.txt new file mode 100644 index 0000000000..fc94872008 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/UsingXpath/content.txt @@ -0,0 +1,62 @@ +To check that text more precisely, we'll use ''xpath'' notation to refer to the header element in the html. + +To work out the appropriate xpath, we could load the page into a browser and look at the html source. (Eg, in Firefox, select the the '''Page Source''' menu item from the '''View''' menu (or use Ctrl-U)). + +However, that's laborious, awkward and error prone. I find the best approach is to use Firefox with two handy plugins: + + * Firebug: install and documentation at http://getfirebug.com + * xpather: install and documentation at https://addons.mozilla.org/en-US/firefox/addon/1192 + +Start your own copy of Firefox explicitly before installing these; the Firefox copy started by ''!-SpiderFixture-!'' does not have any plugins and shouldn't have them added. +# +!2 Firebug +# +Once you've installed Firebug, select the menu item '''Tools/Firebug/Open Firebug''' within firefox. This opens a panel at the bottom of the firefox window. + +Now right-click on the header "!-TemplateFixture-!" at the top of the page and select the menu item '''Inspect Element'''. + +You'll see that element of the HTML is high-lighted in the bottom panel as follows: +{{{ TemplateFixture +}}}So we have a way of refering to that text, using xpath. +# +!2 XPather +# +To use XPather to pick an xpath to locate that element, right-click on the header again and select '''Show in XPather'''. + +This gives us a little window with an ''xpath'' of: +{{{ /html/body/div[2]/div[1]/span +}}}Unfortunately, that's not very helpful, as any change to the structure of the page may mean it no longer works. We're better off locating the element by using the class involved: +{{{ //span[@class="page_title"] +}}}We can check that works, and is unique, by typing it into the top text field of the little XPather window. + +It's correct, so let's use it. We'll use the same start to the storytest: +# +!2 Extended Storytest +# +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +|''shutdown browser automatically''|false| + +|''get url''|http://localhost:${FITNESSE_PORT}/FitLibraryWeb.TemplateFixture| + +|''title''|'''is'''|!-FitLibraryWeb.TemplateFixture-!| + +And now we check the specific text: + +|''text of''|//span[@class="page_title"]|'''is'''|!-TemplateFixture-!| +# +!2 xpath +# +For introductions and tutorials on xpath, see: + * XPath in wikipedia (eg, at http://en.wikipedia.ord/wiki/XPath) for a general introduction + * http://www.w3schools.com/XPath for tutorials + * http://www.w3.org/TR/xpath for a detailed reference + * or google XPath for other resources + +Unfortunately, I don't know of any tutorials that are both clear and comprehensive; most just give a few examples and don't explain the generality. +# +!2 Next Step +# +Let's now add the clicking of the '''Suite''' button, as covered [[on this page][ClickingButton]] diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/UsingXpath/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/UsingXpath/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/UsingXpath/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/content.txt new file mode 100644 index 0000000000..909b250f19 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/content.txt @@ -0,0 +1,66 @@ +!**< hide +!define spider {''!-SpiderFixture-!''} +**! +In this tutorial, we'll look at the first steps of creating a storytest for a web site. We assume that you're somewhat familiar with: + + * HTML -- if not, a good introduction is http://www.w3schools.com/html + * ''!-FitLibrary-!'' tables -- if not, see the introductory tutorials that come with ''!-FitLibrary-!'' (they may be at .FitLibrary.BeginningTutorial) + +We'll use ${spider} to run some test suites in ''!-FitNesse-!'' and check that they all pass. + +By the way, this storytest will end up being extended as one step in the continuous integration of ''!-FitLibraryWeb-!'' development. + +We'll begin by running the suite for ''!-TemplateFixture-!'', checking that it passes. +# +!2 Accessing the page +# +We'll use ${spider} running ''Firefox'' (so you'll need to be sure that a version of Firefox not older than a year is installed): + +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +We want to check that it's working correctly, so let's ensure that the firefox browser is left open at the end of the storytest: + +|''shutdown browser automatically''|false| + +Now we need to access the right ''!-FitNesse-!'' page, running with the right port: + + * We use the special symbol FITNESSE_PORT so it doesn't matter which port ''!-FitNesse-!'' happens to be running on (you'll only see this symbol in the following table when editing). + * We use the ${spider} action ''get url'' to load the page + +|''get url''|http://localhost:${FITNESSE_PORT}/FitLibraryWeb.TemplateFixture| + +Let's try it out. It's easier to see if you shrink the size of this window and move it to the right-side of the screen. When a new firefox window is created, it will be in the top-left of the screen. + +OK, so now let's press the '''Test''' button near the top left and see what happens... + + * A firefox browser page should come up, showing the right page. + * The 2nd and 4th of the tables above should be coloured green (as well as some more below). + * Each time you run it, a new firefox window will appear. +# +!2 Verifying the title +# +Now we have the page loaded, we can check that the title of the page is correct: + +|''title''|'''is'''|!-FitLibraryWeb.TemplateFixture-!| + +The ''title'' action returns the title of the current page. The '''is''' part checks the exact title. + +We could check a part of the title, using '''contains''': + +|''title''|'''contains'''|!-TemplateFixture-!| + +Or we could use pattern matching (using regular expressions): + +|''title''|'''matches'''|.emplate.ixture| + +(where the "." matches any character) +# +!2 Verifying text on the page +# +Let's now verify that the top of the page contains the text "!-TemplateFixture-!". We can do this by simply checking that that text appears anywhere on the page: + +|''page source''|'''contains'''|!-TemplateFixture-!| + +But that's not very precise -- it's just checking that it occurs anywhere. Let's be more precise [[on this page][>UsingXpath]] diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/properties.xml new file mode 100644 index 0000000000..4e908ad9ff --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/StartingWithSpider/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/WrapUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/WrapUp/content.txt new file mode 100644 index 0000000000..b89d7f12fd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/WrapUp/content.txt @@ -0,0 +1,22 @@ +!2 Not Covered +# +We haven't covered here (which are covered in the [[Manual][ + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/content.txt new file mode 100644 index 0000000000..e08556732e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/SpiderTutorial/content.txt @@ -0,0 +1,72 @@ +!**< defs +!define tut1 {The basics of using ''!-SpiderFixture-!'' to: + + * Get a page + * Verify the title + * Verify the text of an element on the page, located by ''xpath'' + * Click a button, located by the link name + * Verify the existence of an element, located by ''xpath'' + +We also introduce the use of ''Firebug'' and ''XPather''. +} +!define tut2 {The basics of creating a domain language to: + + * Avoid duplication + * Avoid getting lost in the detail. + +We introduce ''defined actions''. +} +!define tut3 {Evolving and organising ''defined actions'': + + * A change is needed + * How to organise more than a few ''defined actions'' +} +!define tut4 {Handling Forms: + + * Checking and changing elements on a form + * Submitting a form +} +!define tut5 {Handling tables (and other structures): + + * How to check the whole contents of a table + * How to check and change pieces of a table + * How to find a particular row of a table so that the rest of it can be checked + +And how this applies to any HTML elements with sub-structure +} +!define tut6 {Handling windows: + + * How to select a window by name + * Closing windows + * How to select a window by its contents +} +!define tut7 {Dealing with delays: + + * Delays in loading a page + * Delays in changes to the current page due to ajax: + * There's a delay before an element appears + * There's a delay before the text, etc of an element changes + * There's a delay before an element is removed + * There's a delay before an element is made visible or invisible + +Along the way, we also use spider actions to: + + * Change and check ''radio button''s and ''select''s + * Check for the existence or non-existence of HTML elements + +And we touch on handling invisible elements, but don't cover this in detail. +} +!define tut8 {Where we mention some things that we haven't covered in this tutorial. +} +**! + +|!1 !c ''Tutorial on Using ''!-SpiderFixture-!'' ''| +|!2 [[Part 1][^StartingWithSpider]]|${tut1}| +|!2 [[Part 2][^DefinedActions]]|${tut2}| +|!2 [[Part 3][^EvolvingDefinedActions]]|${tut3}| +|!2 [[Part 4][^HandlingForms]]|${tut4}| +|!2 [[Part 5][^HandlingTables]]|${tut5}| +|!2 [[Part 6][^HandlingWindows]]|${tut6}| +|!2 [[Part 7][^AjaxTiming]]|${tut7}| +|!2 [[Part 8][^WrapUp]]|${tut8}| +|!2 [[Part 9][ + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestAmazon/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestAmazon/content.txt new file mode 100644 index 0000000000..6a5b2c58a4 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestAmazon/content.txt @@ -0,0 +1,29 @@ +!|fitlibrary.spider.SpiderFixture| + +|''proxy''|proxy2|''with port''|5865| + +|''get url''|http://www.amazon.com| + +|''title''|'''is'''|Amazon.com: Online Shopping for Electronics, Apparel, Computers, Books, DVDs & more| + +|''with''|//input[@title='Search for']|''set text''|Rick Mugridge| + +|''submit''|//input[@alt='Go']| + +|''title''|'''is'''|Amazon.com: Rick Mugridge| + +|''element''|//div[@class='resultCount']|''exists''| + +|'''not'''|''element''|//h1[@id='noResultsTitle']|''exists''| + +|''page source''|contains|Fit| + +|''with''|//input[@title='Search for']|''set text''|asdasdasdasdasdasd| + +|''submit''|//input[@alt='Go']| + +|''title''|'''is'''|Amazon.com: asdasdasdasdasdasd| + +|''element''|//h1[@id='noResultsTitle']|''exists''| + +|'''not'''|''element''|//td[@class='resultCount']|''exists''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestAmazon/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestAmazon/properties.xml new file mode 100644 index 0000000000..f30f6fee2a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestAmazon/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1253495462291 + -7529212883792239764 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestGoogle/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestGoogle/content.txt new file mode 100644 index 0000000000..b3acf7724c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestGoogle/content.txt @@ -0,0 +1,30 @@ +|''with spider''| + +|''help''| + +|''get url''|http://www.google.co.nz| + +|''title''|'''is'''|Google| + +|''url''|'''is'''|http://www.google.co.nz/| + +|''page source''|'''contains'''|Search| + +|''with''|//input[@name="q"]|''set text''|djhasdaksdasd| + +|''click''|//input[@name="btnG"]| + +|''title''|'''becomes'''|djhasdaksdasd - Google Search| + +|''url''|'''contains'''|&q=djhasdaksdasd| + +|''page source''|contains|djhasdaksdasd| + +|''with''|//input[@name="q"]|''set text''|air new zealand| + +|''click''|//input[@name="btnG"]| + +|''title''|'''is'''|air new zealand - Google Search| + +|''page source''|'''eventually matches'''|New.*Zealand| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestGoogle/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestGoogle/properties.xml new file mode 100644 index 0000000000..be62652133 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestGoogle/properties.xml @@ -0,0 +1,14 @@ + + + true + true + true + true + true + true + true + true + true + 1255047152953 + 9018298647811309032 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestTemplateSuite/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestTemplateSuite/content.txt new file mode 100644 index 0000000000..7a0d506aa2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestTemplateSuite/content.txt @@ -0,0 +1,17 @@ +!|fitlibrary.spider.SpiderFixture| + +|''start spider with''|firefox| + +|''shutdown browser automatically''|false| + +|''get url''|http://localhost:${FITNESSE_PORT}/FitLibraryWeb.TemplateFixture| + +|''title''|'''is'''|!-FitLibraryWeb.TemplateFixture-!| + +|''click''|//div[@class="actions"]/a[1]| + +|''click on named link''|Suite| + +|''text of''|//div[@id='test-summary']/strong|'''contains'''|Test Pages:| + +|''text of''|//div[@id='test-summary']|'''contains'''|right, 0 wrong, 0 ignored, 0 exceptions| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestTemplateSuite/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestTemplateSuite/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/TestTemplateSuite/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/content.txt new file mode 100644 index 0000000000..c2e24d2e96 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/content.txt @@ -0,0 +1,19 @@ +|^SpiderTutorial|''A tutorial on using SpiderFixture''| + +|^DocuMentation|''How to use SpiderFixture''| + +|^SpecifySpiderFixture|''Specifications of SpiderFixture''| + +|''Examples against web sites:''| +|^TestGoogle| +|^TestAmazon| +|^TestTemplateSuite| + + * A general fixture that's used by SpiderFixture for pattern matching on multiple lines: + +|^SpecifyMatchingStringFixture| + +!**< def +!define COLLAPSE_SETUP {true} +!define COLLAPSE_TEARDOWN {true} +*! \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/properties.xml new file mode 100644 index 0000000000..a20b58e8db --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/SpiderFixture/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1255139903000 + -5083163245987313726 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SetUp/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SetUp/content.txt new file mode 100644 index 0000000000..73e65f7615 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SetUp/content.txt @@ -0,0 +1,2 @@ +!|fitlibrary.template.specify.SpecifyTemplateFixture| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SetUp/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SetUp/properties.xml new file mode 100644 index 0000000000..73e36c44c9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SetUp/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1253494844553 + -7465654425150437488 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifySimpleChanges/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifySimpleChanges/content.txt new file mode 100644 index 0000000000..8f1b1a64a0 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifySimpleChanges/content.txt @@ -0,0 +1,12 @@ +|''with file''|$a| + +|''set''|a|''to''|bla| +|''set''|t|''to''|T| + +|''get template''|templateDiry/test.txt|'''is'''|bla| + +|''set''|a|''to''|Z| +|''set''|t|''to''|U| + +|''get template''|templateDiry/test.txt|'''is'''|Z| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifySimpleChanges/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifySimpleChanges/properties.xml new file mode 100644 index 0000000000..5a846194ad --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifySimpleChanges/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1247200371425 + 8499185231313582258 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnchanged/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnchanged/content.txt new file mode 100644 index 0000000000..4c82200f57 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnchanged/content.txt @@ -0,0 +1,3 @@ +|''with file''|bla| + +|''get template''|templateDiry/test.txt|'''is'''|bla| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnchanged/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnchanged/properties.xml new file mode 100644 index 0000000000..51cb4c69aa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnchanged/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1247008186422 + -1058737602174963692 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnknownVariable/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnknownVariable/content.txt new file mode 100644 index 0000000000..50481d5d69 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnknownVariable/content.txt @@ -0,0 +1,4 @@ +|''with file''|$a| + +|''get template''|templateDiry/test.txt|'''is'''|$a| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnknownVariable/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnknownVariable/properties.xml new file mode 100644 index 0000000000..62f45940ca --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyUnknownVariable/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1243893319694 + 4923697390029251944 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithList/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithList/content.txt new file mode 100644 index 0000000000..54abf0078c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithList/content.txt @@ -0,0 +1,18 @@ +!**< def +!define file ({{{ + #foreach( $a in $list ) + $a + #end + +}}}) +!define result ({{{ red green +}}}) +**! +|''with file''|${file}| + +|''set list''|list|''to''|red, green| + +|set|t|''get template''|templateDiry/test.txt| + +|!-fitlibrary.xml.XmlDoFixture-!| +|xml|@{t}|same as|${result}| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithList/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithList/properties.xml new file mode 100644 index 0000000000..44ee153073 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithList/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1253494867130 + -44231091784223371 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithNamedList/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithNamedList/content.txt new file mode 100644 index 0000000000..4050e4c171 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithNamedList/content.txt @@ -0,0 +1,24 @@ +!**< def +!define file ({{{ + #foreach( $a in $list ) + $a.name + #end + +}}}) +!define result ({{{ + red + green + +}}}) +**! +|''with file''|${file}| + +|''set named list''|list|''to''|red, green| + +|set|t|''get template''|templateDiry/test.txt| + +|show|get|@{t}| + +|!-fitlibrary.xml.XmlDoFixture-!| +|xml|@{t}|same as|${result}| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithNamedList/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithNamedList/properties.xml new file mode 100644 index 0000000000..c750d56007 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/SpecifyWithNamedList/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1253494883300 + 4261908565404620823 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/TemplateFixtureDocs/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/TemplateFixtureDocs/content.txt new file mode 100644 index 0000000000..2fc9529637 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/TemplateFixtureDocs/content.txt @@ -0,0 +1,44 @@ +Templates are handy when we want to make several variations of a xml file or content (or any plain text). + +The variation points are marked in the template file (eg, !-$startDate-!), and these can be substituted for required values through dynamic properties. + +''!-TemplateFixture-!'' uses ''!-Velocity-!'', an apache, open-source template-handling system, which in turn uses apache commons: collections and lang. See http://velocity.apache.org, http://commons.apache.org + +Note that ''Velocity'' only handle relative file names. +!2 Actions + * Apply the current dynamic variables to the specifed template file and show the result as a string: + +|'''set'''|startDate|''to''|24 Dec 2009| + +|'''show'''|''get template''|request.xml| + + * This can be used in various ways: + + * Write the result to a file: + +|'''set'''|startDate|''to''|24 Dec 2009| + +|set|result|''get template''|request.xml| + +|''file''|lateRequest.xml| +|''write''|@{result}| + + * Use the result in a web service call: + +|'''set'''|startDate|''to''|24 Dec 2009| + +|set|result|''get template''|request.xml| + +|!-fitlibrary.ws.WebServicesClientFixture-!| +|''post''|http://bla.com|''with''|@{result}| + + * Use the result in a web service mock: + +|'''set'''|startDate|''to''|24 Dec 2009| + +|set|result|''get template''|request.xml| + +|''mock soap on port''|8081| +|''matches URL''|/service| +|''matches request''|in| +|''response''|@{result}| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/TemplateFixtureDocs/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/TemplateFixtureDocs/properties.xml new file mode 100644 index 0000000000..f57cea45fc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/TemplateFixtureDocs/properties.xml @@ -0,0 +1,13 @@ + + + true + true + true + true + true + true + true + true + 1255046344500 + 4142550774040314782 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/content.txt new file mode 100644 index 0000000000..dafbee896c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/content.txt @@ -0,0 +1,8 @@ +|!3 ^TemplateFixtureDocs|''Documentation''| + +^SetUp +^SpecifyUnchanged +^SpecifySimpleChanges +^SpecifyUnknownVariable +^SpecifyWithList +^SpecifyWithNamedList diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/properties.xml new file mode 100644 index 0000000000..57f4130f6f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/TemplateFixture/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1255132875359 + -7279630094934337604 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/ThingsToDo/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/ThingsToDo/content.txt new file mode 100644 index 0000000000..841837f4c9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/ThingsToDo/content.txt @@ -0,0 +1,13 @@ +Here's some things that we might do: + +|Move lookupTable to fitLibrary|''As it's useful more generally''| +|Add help to other fixtures in fitLibraryWeb|''As that may be useful''| + +|Consider adding following functionality to Spider|''As webDriver now has more capability that we could support''| +|!-RenderedWebElement-!|For dnd, access to css properties, displayed| +|Alert|For alert accept, dismiss, get and send keys| +|By|by css selector| +|Keyboard|Presumably for finer-scale control of key presses?| +|Mouse|Presumably for finer-scale of mouse| +|...and others?|| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/ThingsToDo/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/ThingsToDo/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/ThingsToDo/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostRawSoapFromRelativeFile/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostRawSoapFromRelativeFile/content.txt new file mode 100644 index 0000000000..e71ab04234 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostRawSoapFromRelativeFile/content.txt @@ -0,0 +1,22 @@ +|''with web services client''| + +|'''also run'''|''with web server for testing''| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''relative file''|soap/test.xml| +|''write''|${soap11}100${endSoap11}| + +|''to''|http://localhost:8094/ws|''as''|SOAP11|''post full soap from relative file''|soap/test.xml| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| + +|''stop testing server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostRawSoapFromRelativeFile/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostRawSoapFromRelativeFile/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostRawSoapFromRelativeFile/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap11FromRelativeFile/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap11FromRelativeFile/content.txt new file mode 100644 index 0000000000..df3debb47f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap11FromRelativeFile/content.txt @@ -0,0 +1,22 @@ +|''with web services client''| + +|'''also run'''|''with web server for testing''| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''relative file''|soap/test.xml| +|''write''|100| + +|''to''|http://localhost:8094/ws|''post soap11 from relative file''|soap/test.xml| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| + +|''stop testing server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap11FromRelativeFile/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap11FromRelativeFile/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap11FromRelativeFile/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap12FromRelativeFile/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap12FromRelativeFile/content.txt new file mode 100644 index 0000000000..c3652a07b7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap12FromRelativeFile/content.txt @@ -0,0 +1,22 @@ +|''with web services client''| + +|'''also run'''|''with web server for testing''| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''relative file''|soap/test.xml| +|''write''|100| + +|''to''|http://localhost:8094/ws|''post soap12 from relative file''|soap/test.xml| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| + +|''stop testing server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap12FromRelativeFile/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap12FromRelativeFile/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostSoap12FromRelativeFile/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostText/content.txt new file mode 100644 index 0000000000..cd3533ae1c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostText/content.txt @@ -0,0 +1,19 @@ +|''with web services client''| + +|'''also run'''|''with web server for testing''| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''to''|http://localhost:8094/ws|''post text''|count=100| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|//string|''in response''|'''is'''|101| + +|''stop testing server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostText/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostText/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostText/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextFromRelativeFile/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextFromRelativeFile/content.txt new file mode 100644 index 0000000000..53b3662724 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextFromRelativeFile/content.txt @@ -0,0 +1,22 @@ +|''with web services client''| + +|'''also run'''|''with web server for testing''| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''relative file''|soap/test.txt| +|''write''|count=100| + +|''to''|http://localhost:8094/ws|''post text from relative file''|soap/test.txt| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|//string|''in response''|'''is'''|101| + +|''stop testing server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextFromRelativeFile/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextFromRelativeFile/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextFromRelativeFile/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextWithProxy/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextWithProxy/content.txt new file mode 100644 index 0000000000..91a970ce82 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextWithProxy/content.txt @@ -0,0 +1,31 @@ +|''with web services client''| + +|''proxy url''|localhost|''with port''|5556| + +|'''also run'''|''with web server for testing''| + +|'''also run'''|''with proxy server for testing''| + +|''start logging''| + +|''start proxy server on port''|5556| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''post text''|http://localhost:8094/ws|''with''|count=100| + +|''headers include''| +|''name''|''value''| +|Passed-Thru-Proxy|true| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''stop testing server''| + +|''stop proxy server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextWithProxy/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextWithProxy/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/PostTextWithProxy/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRaw/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRaw/content.txt new file mode 100644 index 0000000000..15759a41fb --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRaw/content.txt @@ -0,0 +1,19 @@ +|''with web services client''| + +|'''also run'''|''with web server for testing''| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''to''|http://localhost:8094/ws|''as''|SOAP11|''post full soap''|${soap11}100${endSoap11}| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| + +|''stop testing server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRaw/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRaw/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRaw/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRawWithProxy/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRawWithProxy/content.txt new file mode 100644 index 0000000000..7f426611e6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRawWithProxy/content.txt @@ -0,0 +1,27 @@ +|''with web services client''| + +|'''also run'''|''with web server for testing''| + +|'''also run'''|''with proxy server for testing''| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''start proxy server on port''|5556| + +|''proxy url''|localhost|''with port''|5556| + +|''to''|http://localhost:8094/ws|''as''|SOAP11|''post full soap''|${soap11}100${endSoap11}| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| + +|''stop testing server''| + +|''stop proxy server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRawWithProxy/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRawWithProxy/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapRawWithProxy/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11/content.txt new file mode 100644 index 0000000000..5fdb44c0e1 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11/content.txt @@ -0,0 +1,19 @@ +|''with web services client''| + +|'''also run'''|''with web server for testing''| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''to''|http://localhost:8094/ws|''post soap11''|100| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| + +|''stop testing server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11WithProxy/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11WithProxy/content.txt new file mode 100644 index 0000000000..8371834c69 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11WithProxy/content.txt @@ -0,0 +1,31 @@ +|''with web services client''| + +|''proxy url''|localhost|''with port''|5556| + +|'''also run'''|''with web server for testing''| + +|'''also run'''|''with proxy server for testing''| + +|''start proxy server on port''|5556| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''to''|http://localhost:8094/ws|''post soap11''|100| + +|''headers include''| +|''name''|''value''| +|Passed-Thru-Proxy|true| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| + +|''stop testing server''| + +|''stop proxy server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11WithProxy/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11WithProxy/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV11WithProxy/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12/content.txt new file mode 100644 index 0000000000..9e4d368cc2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12/content.txt @@ -0,0 +1,19 @@ +|''with web services client''| + +|'''also run'''|''with web server for testing''| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''to''|http://localhost:8094/ws|''post soap12''|100| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| + +|''stop testing server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12WithProxy/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12WithProxy/content.txt new file mode 100644 index 0000000000..c51df25ffa --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12WithProxy/content.txt @@ -0,0 +1,31 @@ +|''with web services client''| + +|''proxy url''|localhost|''with port''|5556| + +|'''also run'''|''with web server for testing''| + +|'''also run'''|''with proxy server for testing''| + +|''start proxy server on port''|5556| + +|''start file server on port''|8094|''at directory''|!-FitNesseRoot-!| + +|''to''|http://localhost:8094/ws|''post soap12''|100| + +|''headers include''| +|''name''|''value''| +|Passed-Thru-Proxy|true| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show'''|''reply escaped''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| + +|''stop testing server''| + +|''stop proxy server''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12WithProxy/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12WithProxy/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/SoapV12WithProxy/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/content.txt new file mode 100644 index 0000000000..04cdea9f84 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/content.txt @@ -0,0 +1,12 @@ +^PostText +^SoapV11 +^SoapV12 +^SoapRaw +^PostTextWithProxy +^SoapV11WithProxy +^SoapV12WithProxy +^SoapRawWithProxy +^PostTextFromRelativeFile +^PostSoap11FromRelativeFile +^PostSoap12FromRelativeFile +^PostRawSoapFromRelativeFile diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/properties.xml new file mode 100644 index 0000000000..1e01581b7d --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/SpecifiCations/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap11/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap11/content.txt new file mode 100644 index 0000000000..85eef9bbda --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap11/content.txt @@ -0,0 +1,11 @@ +|''with web services client''| + +|''with fixturing logger''| +|''level''|TRACE| +|''show after''|true| + +!|to|http://www.w3schools.com/webservices/tempconvert.asmx|post soap11|100| + +!|xml in response same as|212| + +|''xpath''|!-//CelsiusToFahrenheitResult-!|''in response''|'''is'''|212| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap11/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap11/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap11/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap12/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap12/content.txt new file mode 100644 index 0000000000..3d291a97a6 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap12/content.txt @@ -0,0 +1,7 @@ +|''with web services client''| + +!|to|http://www.w3schools.com/webservices/tempconvert.asmx|post soap12|100| + +!|xml in response same as|212| + +|''xpath''|!-//CelsiusToFahrenheitResult-!|''in response''|'''is'''|212| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap12/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap12/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTemperatureSoap12/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostText/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostText/content.txt new file mode 100644 index 0000000000..31aff5f223 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostText/content.txt @@ -0,0 +1,9 @@ +|''with web services client''| + +|''to''|http://www.w3schools.com/webservices/tempconvert.asmx/FahrenheitToCelsius|''post text''|Fahrenheit=33| + +|''xml in response same as''|0.555555555555556| + +|''xpath''|string|''in response''|'''is'''|0.555555555555556| + +|''xpath''|string|''in response''|'''matches'''|.*56| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostText/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostText/properties.xml new file mode 100644 index 0000000000..8aa597bbbe --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostText/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1255138613500 + 2009839240823681218 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTextFromFile/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTextFromFile/content.txt new file mode 100644 index 0000000000..844dde1996 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTextFromFile/content.txt @@ -0,0 +1,15 @@ +|''with web services client''| + +|''relative file''|soap/Fahrenheit33.txt| +|''write''|Fahrenheit=33| + +|'''show'''|''to''|http://www.w3schools.com/webservices/tempconvert.asmx/FahrenheitToCelsius|''post text from relative file''|soap/Fahrenheit33.txt| + +|''xml in response same as''|0.555555555555556| + +|''xpath''|string|''in response''|'''is'''|0.555555555555556| + +|''xpath''|string|''in response''|'''matches'''|.*56| + +|''relative file''|soap/Fahrenheit33.txt| +|delete| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTextFromFile/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTextFromFile/properties.xml new file mode 100644 index 0000000000..5e9530f202 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/HttpPostTextFromFile/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1255138630078 + -5142239360933589464 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/content.txt new file mode 100644 index 0000000000..429d71a07e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/content.txt @@ -0,0 +1 @@ +!contents diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/properties.xml new file mode 100644 index 0000000000..243cc7e448 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesExamples/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/OtherCalls/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/OtherCalls/content.txt new file mode 100644 index 0000000000..5617accfe2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/OtherCalls/content.txt @@ -0,0 +1,66 @@ +!*< xml +!define soap11 ({{{ + +}}}) +!define endSoap11 ({{{}}}) + +!define soap12 ({{{ + +}}}) +!define endSoap12 ({{{}}}) +*! +!1 5. Other Web Services +# +The above example uses soap1.1. It's also possible to use: + + * soap1.2 + + * plain text + + * soap (either version) without automatica soap wrapping + * This allows additional detail to be included in the explicit soap header (such as for security) + * The reply is also not automatically unwrapped, allowing for details to be checked in that header +# +----!3 6. Running the web services server +# +As before, you need to run the web service server on [[this page][RunWebServiceServer]]. +# +----!3 7. Using soap1.2 +# +|''with web services client''| + +|''to''|http://localhost:8093/ws|''post soap12''|100| + +|'''show escaped'''|''reply''| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| +# +----!3 8. Using plain text +# +|''to''|http://localhost:8093/ws|''post text''|count=100| + +|'''show'''|''reply escaped''| + +|''xpath''|//string|''in response''|'''is'''|101| +# +----!3 9. Using Raw Soap with soap1.1 +# +|''to''|http://localhost:8093/ws|''as''|SOAP11|''post full soap''|${soap11}1000${endSoap11}| + +|'''show'''|''reply escaped''| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|1001| +# +----!3 10. Using Raw Soap with soap1.2 +# +|''to''|http://localhost:8093/ws|''as''|SOAP12|''post full soap''|${soap12}10000${endSoap12}| + +|'''show'''|''reply escaped''| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|10001| +# +----!3 11. The End +# +That's the end of this tutorial on calling web services. + +You may like to look at the [[specifications][.FitLibraryWeb.WebServicesClient.SpecifiCations]], which also include running the server (and proxy server). diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/OtherCalls/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/OtherCalls/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/OtherCalls/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/RunWebServiceServer/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/RunWebServiceServer/content.txt new file mode 100644 index 0000000000..89e111714f --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/RunWebServiceServer/content.txt @@ -0,0 +1,19 @@ +This runs a server (both file server and web services server) on local port 8093 when you run it as a '''Test'''. + +!|fitlibrary.server.WebServerForTestingFixture| + +|''start file server on port''|8093|''at directory''|!-FitNesseRoot-!| + +|''stop testing server after''|60|''seconds''| + +Once it stops running, you can run it again. + + * If you run it too soon, it will give an error because the port is already busy. + + * That can happen if you press the back button soon after hitting '''Test''' and press '''Test''' again; the test is still running in the background. +# +!3 Warning +# +This file server has limited capability, and is only intended for testing purposes. + +It is not guaranteed to be secure. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/RunWebServiceServer/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/RunWebServiceServer/properties.xml new file mode 100644 index 0000000000..1665cb9759 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/RunWebServiceServer/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/UseProxy/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/UseProxy/content.txt new file mode 100644 index 0000000000..14bdd35cfc --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/UseProxy/content.txt @@ -0,0 +1,51 @@ +!1 2. Proxy Server +# +In many organisations, it's necessary to access external web sites through a proxy. + + * Then the proxy will be configured in your browser. + * If it's an authenticating proxy, you may have to log in. + +If you're testing, and need to go through a proxy, the ''web services client'' can be configured to use a specified proxy. + + * In this example, we configure it to use a local proxy on port 5555. + * In your tests, you'd configure it to your own proxy. +# +!3 3. Running a local proxy server +# +We first need to run a proxy server for it to talk to: open [[this page][.FitLibraryWeb.HttpClient.HttpClientTutorial.RunProxy]] in (yet) another browser window. + +Both the proxy server and the web service server need to be running for this storytest to pass. + + * If the proxy server is not running, a "''Connection to http://localhost:5555 refused''" error is given. + * If the proxy server is running, but the file server is not, a "''The target server failed to respond''" error will be given (by the proxy server). + +Run the web service server on [[this page][RunWebServiceServer]]. +# +!3 4. An example +# +|''with web services client''| + + * Turn on logging of the underlying fixtures: + +|''with fixturing logger''| +|''level''|ALL| + + * Specify the proxy to use: + +|''proxy url''|localhost|''with port''|5555| + +|''to''|http://localhost:8093/ws|''post soap11''|100| + +|'''show'''|''headers''| + +|'''show'''|''reply''| + +|'''show escaped'''|''reply''| + +|reply|contains|101| + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| +# +----!3 5. Next +# +Finally, [[on this page][OtherCalls]], we look at other ways to call web services. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/UseProxy/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/UseProxy/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/UseProxy/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/content.txt new file mode 100644 index 0000000000..e48aa1a8bd --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/content.txt @@ -0,0 +1,44 @@ +!1 Calling Web Services +# +Let's look at how to call a web service from a storytest. This example uses soap1.1, but it's also possible to use soap1.2 and plain text. + +We need to run a web services server for it to talk to: open [[this page][^RunWebServiceServer]] in another browser window so you can see them both at the same time. + +The web service server need to be running for this storytest to pass. Once that's running, run this storytest with '''Test'''. + + * If the web service server is not running, a "''The target server failed to respond''" error will be given (by the proxy server). +# +!3 1. An Example +# +This calls a web service. We pass it a number and it returns the number with one added to it. + +|''with web services client''| + + * Here we specify the url for the web service, the version of soap, and the xml contents. + * The given xml contents is automatically wrapped with a standard soap1.1 xml wrapper before being sent + +|''to''|http://localhost:8093/ws|''post soap11''|100| + + * This shows the headers in the reply: + +|'''show'''|''headers''| + + * This shows the reply received (tags are not shown when rendered as html): + +|'''show'''|''reply''| + + * This shows the reply received with tags shown (''escaped''): + +|'''show escaped'''|''reply''| + + * This checks the plain text (after tags are removed) in the reply: + +|reply|contains|101| + + * This uses xmlunit to check that the value of an xpath expression is as expected. + +|''xpath''|!-//CountResult-!|''in response''|'''is'''|101| +# +----!3 2. Next +# +On [[this page][^UseProxy]], we'll see how to use a proxy and how to turn on logging. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/properties.xml new file mode 100644 index 0000000000..6d61bae3c5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/WebServicesTutorial/properties.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/content.txt new file mode 100644 index 0000000000..bce2b1542c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/content.txt @@ -0,0 +1,72 @@ +!*< xml +!define soap11 ({{{ + +}}}) +!define endSoap11 ({{{}}}) + +!define soap12 ({{{ + +}}}) +!define endSoap12 ({{{}}}) +*! +!3 1. Examples, Tutorial and Specifications +# +|!3 See:| +|[[''Examples''][^WebServicesExamples]]| +|[[''A tutorial on calling web services''][^WebServicesTutorial]]| +|[[''Specifications''][^SpecifiCations]]| +# +----!3 2. Commands +# + * To start it: + +!|fitlibrary.ws.WebServicesClientFixture| + + * To specify that https certificates are to be ignored (prior to any other calls): + +|''accept any certificate''| + + * Specify a proxy (prior to any calls other than the one above): + +|''proxy url''|http://proxy|''with port''|8099| + + * To post a web service call with plain text, soap1.1, soap1.2, or ''raw'' soap: + +|''to''|http://localhost:8093/ws|''post text''|count=100| +|''to''|http://localhost:8093/ws|''post soap11''|100| +|''to''|http://localhost:8093/ws|''post soap12''|100| +|''to''|http://localhost:8093/ws|''as''|SOAP11|''post full soap''|${soap11}100${endSoap11}| + +''Raw soap'' contains all the soap wrappers, unlike with soap1.1 and soap1.2, where the soap wrappers are added and remove automatically. + + * To post a web service call with plain text, soap1.1, soap1.2, or ''raw'' soap from a file: + +|''to''|http://localhost:8093/ws|''post text from file''|ws.txt| +|''to''|http://localhost:8093/ws|''post soap11 from file''|ws.xml| +|''to''|http://localhost:8093/ws|''post soap12 from file''|ws.xml| +|''to''|http://localhost:8093/ws|''as''|SOAP11|''post full soap from file''|soap/test.xml| + + * To post a web service call with plain text, soap1.1, soap1.2, or ''raw'' soap from a ''relative'' file (ie, relative to the ''!-FitNesseRoot/files-!'' directory): + +|''to''|http://localhost:8093/ws|''post text from relative file''|ws.txt| +|''to''|http://localhost:8093/ws|''post soap11 from relative file''|ws.xml| +|''to''|http://localhost:8093/ws|''post soap12 from relative file''|ws.xml| +|''to''|http://localhost:8093/ws|''as''|SOAP11|''post full soap from relative file''|soap/test.xml| + + * To use an xpath to pull information out of the last response: + +|''xpath''|//ab//cd|''in response''|'''contains'''|tax| + + * To check for the existence of an element in the last response, using xpath: + +|''xpath''|//ab//cd|''exists in response''| + + * To XML diff the last response against expected XML: + +|''xml in response same as''|B| +# +----!3 Implementation +# +This is based on the apache open-source system ''!-HttpClient-!''. + +See http://hc.apache.org/httpclient-3.x/ for further details. \ No newline at end of file diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/properties.xml new file mode 100644 index 0000000000..d1d50ddc81 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WebServicesClient/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1255139626234 + 4596378990512425157 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WhatIsNew/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/WhatIsNew/content.txt new file mode 100644 index 0000000000..2e73f9d723 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WhatIsNew/content.txt @@ -0,0 +1,77 @@ +!2 17 October 2011 - fitlibraryweb-2.0.jar +This upgrade bundles fitlibrary-2.0.jar and a version number has also been added to the to fitlibraryweb jar file. If you upgrading and overwriting older jar files delete the older versions of fitLibrary.jar and fitbraryweb.jar + +# + * SpiderFixture: + * Added new locators: + * Use '''css=''' to use 'css selectors'. See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.SpecifyCssSelectorLocator + * Use '''class=''' to select by class name. See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.SpecifyLocators + * Now supports Google Chrome as a driver source. See specifications at .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderWithChrome + * Upgraded Spider to work with release version of Selenium - v2.8 + * Added new fixture method 'select window with contains' to select windows with a locator containing some text. See bottom of page .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared.SpecifyWindows.SelectPopUpByXpath + * Fix: '''(//foo//bar/baz)[2]''' style xpaths were not being recognised by spider fixture as valid xpath - making it difficult to select elements in document order. See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared.SpecifyXpath.ByPosition for further documentation. + * Documented pre-existing 'options' (used on Select elements) fixture method with new Specifiction. See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.SpecifySelect.CheckListOfSelectOptions Also improved cross browser issues with this method. + + * XmlProcessing: + * xml 'similar to' comparison now more lenient when it comes to repeating nodes of the same name. + + * Web Services Client + * Allow for ssl certificates to be ignored with https. Added to docs at .FitLibraryWeb.WebServicesClient + +!2 5 April 2011 +# + * SpiderFixture: + * Upgraded Spider to Selenium 2.0b3 + * Improved support for Internet Explorer, many of the specifications now re-enabled to show they work with Internet Explorer + * Add support for interacting with popup Alert() dialogs. See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared.SpecifyAlert + * Added new fixture method 'execute !-JavaScript with element' which locates an element and passes it to !-JavaScript-! as a parameter. See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.SpecifyJavaScript.ExecuteJavaScript + * Added new fixture method 'text of element only' to return just the text() of a html element without including any child inner html text. See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared.SpecifyTextOfElementOnly + * Fix !-ForEach-! fixture method and improve specifications. See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderSpecsShared.ForEach + + * XmlProcessing: + * Ability to define a name space alias and URI in XML fixture + +!2 2 March 2011 +# + * Upgraded Spider to Selenium 2.0b2. + * Extended lookup table. See .FitLibraryWeb.SpiderFixture.SpecifySpiderFixture.SpiderWithHtmlUnit.SpecifiCations.SpecifyLookup + * Added |help| for Spider +# +!2 3 December 2010 +# + * Added some missing files that are needed for the specs +# +!2 1 December 2010 +# + * SpiderFixture: + * Upgraded to ''!-WebDriver-!'' a6 + + * HttpClient: + * Added specs that test the client against a local file server + * Added specs that test the client with a proxy server + * Changed the implementation to use httpClient 4.0 + * Added tutorial: .FitLibraryWeb.HttpClient.HttpClientTutorial + + * WebServicesClient: + * Now distinguish between soap1.1 and soap1.2 + * Added specs that test the client against a local web services server + * Added specs that test the client with a proxy against a local web services server + * Changed the implementation to use httpComponents 4.0 + * Added tutorial: .FitLibraryWeb.WebServicesClient.WebServicesTutorial +# +!2 12 August 2010 +# + * SpiderFixture: + * Added ability to check whether an element is visible or not + * Extended tutorial to cover visibility +# +!2 5 August 2010 +# + * SpiderFixture: + * A substantial tutorial on SpiderFixture has been included + * The specs related to handling delays have been expanded + + * PdfDocument: + * PdfDocument has been revised to handle a wider range of PDFs. + * Documentation of what is does has been expanded. + * It uses a more recent release of pdfbox diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/WhatIsNew/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/WhatIsNew/properties.xml new file mode 100644 index 0000000000..124f46a10b --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/WhatIsNew/properties.xml @@ -0,0 +1,11 @@ + + + true + true + true + true + true + true + true + true + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/TransformWith/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/TransformWith/content.txt new file mode 100644 index 0000000000..c1d8b53f37 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/TransformWith/content.txt @@ -0,0 +1,19 @@ +!*< xml +!define xml ( +manor + +) +!define xsl ( + + + + + + + + +) +*! +|''with xml''| + +|''transform''|${xml}|''with''|${xsl}|'''is'''|| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/TransformWith/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/TransformWith/properties.xml new file mode 100644 index 0000000000..39e54d5ae5 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/TransformWith/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1251349430986 + -1021551274411799594 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/VariousErrorMessage/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/VariousErrorMessage/content.txt new file mode 100644 index 0000000000..73a65ea7a9 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/VariousErrorMessage/content.txt @@ -0,0 +1,64 @@ +!*< xml +!define xml ( +A + +) +!define xml2 ( + A + +) +!define xml3 ( + + +A + + +) +!define xml4 ( + +A + + +) +!define xsl ( + + + + + + + + +) +*! +|''with xml''| + +|''xml''|A|''same as''|B| + +|''xml''|A|''same as''|A| + +|''xml''|A|''same as''|A| + +|''xml''|${xml3}|''same as''|${xml4}| + +|''xml''|A|''same as''|${xml2}| + +|''xml''|A|''similar to''|A| + +|''xpath''|/a/c[@|''exists in ''|A| + +|''xpath''|/a/c|''exists in ''|A| + +|''xpath''|/a/c|''exists in ''|A| + +|''xpath''|//b|''in''|xyz|''is''|x| + +|''xpath''|//b[@|''in''|xyz|''is''|x| + +|''xpath''|//b[@|''in''|xyz|''is''|x| + +|''transform''||''with''|${xsl}| + +|''transform''||''with''|junk xsl| + +|''expected test results''|0|''right''|3|''wrong''|0|''ignored''|11|''exceptions''| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/VariousErrorMessage/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/VariousErrorMessage/properties.xml new file mode 100644 index 0000000000..1d416bea43 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/VariousErrorMessage/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1255139681468 + -849640243849194793 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAs/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAs/content.txt new file mode 100644 index 0000000000..ece760a06c --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAs/content.txt @@ -0,0 +1,26 @@ +!*< xml +!define xml ({{{ + A +}}}) +!define xml2 ({{{ + A +}}}) +*! +|''with xml''| + +|''xml''|A|''same as''|${xml}| +|''xml''|A|''same as''|A| +|''xml''|${xml}|''same as''|${xml}| +|''xml''|A|''same as''|A | +|''xml''|A|''same as''| A| +|''xml''|A|''same as''|${xml2}| + +|''xml''|A|''same as''|A| + + * Failing examples: + +|'''not'''|''xml''|12|''same as''|21| + +|'''not'''|''xml''|A|''same as''|B| +|'''not'''|''xml''|A|''same as''|A| +|'''not'''|''xml''|A|''same as''|A| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAs/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAs/properties.xml new file mode 100644 index 0000000000..d3855f9902 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAs/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1251349363001 + -6734606719410158925 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAsWithNameSpace/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAsWithNameSpace/content.txt new file mode 100644 index 0000000000..5e75ca05ba --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAsWithNameSpace/content.txt @@ -0,0 +1,36 @@ +!*< xml +!define xml ({{{ + A +}}}) +!define xml2 ({{{ + A +}}}) +*! +|''with xml''| + + * If name spaces are used in ''same as'', they need to be declared first: + + * Unnamed name space: + +|name space|| + +|''xml''|A|''same as''|A| + +|name space|soap| + +|''xml''|in|''same as''|in| + + +|''xml''|A|''same as''|A| + +|name space|f| + +|''xml''|A|''same as''|A| + + * Failing examples: + +|'''not'''|''xml''|12|''same as''|21| + +|'''not'''|''xml''|A|''same as''|B| +|'''not'''|''xml''|A|''same as''|A| +|'''not'''|''xml''|A|''same as''|A| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAsWithNameSpace/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAsWithNameSpace/properties.xml new file mode 100644 index 0000000000..e1069db441 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSameAsWithNameSpace/properties.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + 1251349384689 + 7529118811897753669 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSimilarTo/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSimilarTo/content.txt new file mode 100644 index 0000000000..116cf84611 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSimilarTo/content.txt @@ -0,0 +1,38 @@ +!*< xml +!define xml ({{{ + A +}}}) +!define xml2 ( + A + +) +*! +|''with xml''| + +|''xml''|A|''similar to''|A| +|''xml''|${xml}|''similar to''|${xml}| +|''xml''|A|''similar to''|A | +|''xml''|A|''similar to''| A| +|''xml''|A|''similar to''|${xml2}| + +|''xml''|A|''similar to''|A| + + * This is the same xml that fails in the ''same as'' specification: + +|''xml''|12|''similar to''|21| + + * Similar to will work with repeating nodes of same name but in different order: + +|''xml''|12|''similar to''|21| + + * Even if name spaces are used in ''similar to'', they do not need to be declared first: + +|''xml''|A|''similar to''|A| + + * Failing examples: + +|'''not'''|''xml''|A|''similar to''|B| +|'''not'''|''xml''|A|''similar to''|A| +|'''not'''|''xml''|A|''similar to''|A| +|'''not'''|''xml''|A|''similar to''|A| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSimilarTo/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSimilarTo/properties.xml new file mode 100644 index 0000000000..aaad20c9d7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XmlSimilarTo/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1251349405892 + -8871276803307681755 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathExistsIn/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathExistsIn/content.txt new file mode 100644 index 0000000000..654c3c6cd8 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathExistsIn/content.txt @@ -0,0 +1,26 @@ +|''with xml''| + +|''xpath''|/a|''exists in ''|A| + +|''xpath''|/a/b|''exists in ''|A| + +|''xpath''|//b|''exists in ''|A| + +|''xpath''|//b[@id='1']|''exists in ''|A| + +|''xpath''|//g|''exists in''|xyzGG| + + * The name space has to be specified if it's used in the xpath: + +|''name space''|n| + +|''xpath''|//n:f|''exists in''|xyz| + + +|'''not'''|''xpath''|/a/c|''exists in ''|A| + +|'''not'''|''xpath''|//c|''exists in ''|A| + +|'''not'''|''xpath''|//b[@id='2']|''exists in ''|A| + +|'''not'''|''xpath''|//n:g|''exists in''|xyz| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathExistsIn/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathExistsIn/properties.xml new file mode 100644 index 0000000000..8e7e02da58 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathExistsIn/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1251349445564 + -2465858624148132695 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInIs/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInIs/content.txt new file mode 100644 index 0000000000..dccfc2791e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInIs/content.txt @@ -0,0 +1,33 @@ +|''with xml''| + +|''xpath''|//b|''in''|xyz|''is''|xyz| + +|''xpath''|//b|''in''|xyz|'''is'''|xyz| + +|''xpath''|//b|''in''|xyz|''is''|xyz| + +|''xpath''|count(//b)|''in''|xyz|''is''|1| + +|''xpath''|//b|''in''|xyz|''is not''|x| + + * The name space does not have to be specified if it's not used in the xml: + +|''xpath''|//g|''in''|xyzGG|'''is'''|GG| + + * The empty name space is removed from any tag before processing + +|''xpath''|//g|''in''|xyzGG|'''is'''|GG| + +|''xpath''|!-//request/attribute::LocationCode-!|''in''|in2009-08-09Z2009-08-11Z|''is''|OOL| + + * The name space has to be specified if it's used in the xpath: + +|''name space prefix''|g|uri|urn:www.foo.com| + +|''xpath''|//g:f|''in''|xyz|''is''|xyz| + + * But prefix doesn't have to be the same as long as the uri is correct: + +|''name space prefix''|gg|uri|urn:www.foo.com| + +|''xpath''|//gg:f|''in''|xyz|''is''|xyz| diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInIs/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInIs/properties.xml new file mode 100644 index 0000000000..8e9a9a6ff2 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInIs/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1251349459236 + 7208651841493250296 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInMatches/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInMatches/content.txt new file mode 100644 index 0000000000..0a70a13081 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInMatches/content.txt @@ -0,0 +1,18 @@ +|''with xml''| + +|''xpath''|//b|''in''|xyz|''matches''|xyz| + +|''xpath''|//b|''in''|xyz|''matches''|xyz| + +|''xpath''|//b|''in''|xyz|''matches''|x..| + +|''xpath''|//b|''in''|xyz|''matches''|x.*| + +|''xpath''|//b|''in''|xyz|''matches''|.*x.*| + +|''xpath''|//b|''in''|xyz|''matches''|.*y.*| + +|''xpath''|//b|''in''|xyz|''matches''|[x,y,z]y[y,z]| + +#|'''not'''|''xpath''|//b|''in''|xyz|''matches''|x| + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInMatches/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInMatches/properties.xml new file mode 100644 index 0000000000..4834d93ce7 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/XpathInMatches/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1251349525861 + -2957256298371900136 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/content.txt new file mode 100644 index 0000000000..4f16d8242e --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/content.txt @@ -0,0 +1,28 @@ +!*< xml +!define sameAs {|''xml''||''same as''|| +} +!define similarTo {|''xml''||''similar to''|| +} +!define transform {|''transform''||''with''|xslt contents| +} +!define exists {|''xpath''|//xpath|''exists in''|| +} +!define in {|''xpath''|//first|''in''|red|'''is'''|red| +} +!define match {|''xpath''|//first|''in''|red|''matches''|r.d| +} +*! +!3 Xml Processing +|!3 Action|!3 Description|!3 Example| +|[[''xml same as''][^XmlSameAs]]|''Checks the two lots of xml are the same''|${sameAs}| +|[[''xml same as'' (with name space)][^XmlSameAsWithNameSpace]]|''Checks the two lots of xml are the same, but where name spaces are used''| +|[[''xml similar to''][^XmlSimilarTo]]|''Checks the two lots of xml are the same''|${similarTo}| +|[[''transform with''][>TransformWith]]|''Transforms the given xml with the xslt''|${transform}| +|[[''xpath exists in''][>XpathExistsIn]]|''Checks for the existence of the element referenced by the xpath expression''|${exists}| +|[[''xpath in'' '''is'''][>XpathInIs]]|''Checks the value of the evaluated xpath expression''|${in}| +|[[''xpath in'' '''matches'''][>XpathInMatches]]|''Checks if value of the evaluated xpath expression matches the regular expression''|${match}| +|[[various error message][>VariousErrorMessage]]|''Show various error messages when things go wrong''| +# +!3 Implementation +# +''!-XmlDoFixture-!'' is a thin layer on top of xmlUnit. See http://xmlunit.sourceforge.net/ for further details. diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/properties.xml new file mode 100644 index 0000000000..39cd9ebc98 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/XmlProcessing/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1255139839500 + 5893792457985843446 + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/content.txt b/fitnesse/FitNesseRoot/FitLibraryWeb/content.txt new file mode 100644 index 0000000000..9f48fe888a --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/content.txt @@ -0,0 +1,32 @@ +!*< paths and defines +!define REGRACE_LINK {false} +!define REGRACE_TOC {false} + +*! +The fixtures (code and documentation) in FitLibraryWeb were kindly donated by '''Air New Zealand''' in October 2009. + +It is based on developments by Rick Mugridge and others at '''Air New Zealand''' from May 2008 to October 2009. + +FitLibraryWeb depends on ''!-FitLibrary-!'' and is now part of the ''!-FitLibrary-!'' open-source project. + +|!3 Description|!3 Tool|!3 Tutorial/Docs|!3 Specification/Example| +|''Web testing, through a variety of browsers''|>SpiderFixture|[[Spider Tutorial][^SpiderFixture.SpiderTutorial]]|[[Spider Specifications][^SpiderFixture.SpecifySpiderFixture]]| +|''xml diff, transform, etc''|>XmlProcessing||[[XML Examples][>XmlProcessing]]| +|''A web services client''|>WebServicesClient|[[Web Services Client Tutorial][.FitLibraryWeb.WebServicesClient.WebServicesTutorial]]|[[Specifications for plain text, soap11, soap12 web service calls][^WebServicesClient.SpecifiCations]]| +|''Mocking one or more web services''|>MockWebServices|[[Mock Web Services Tutorial][.FitLibraryWeb.MockWebServices.MockTutorial]]|Specifications: [[plain text][^MockWebServices.SpecifiCations.PlainTextServices]], [[soap11][^MockWebServices.SpecifiCations.Soap11Mocking]], [[soap12][^MockWebServices.SpecifiCations.Soap12Mocking]], [[raw soap][^MockWebServices.SpecifiCations.FullSoapMocking]]| +|''Recording web services''|>RecordWebServices|[[Docs][^RecordWebServices.RecordingDocumentation]]|[[running example][.FitLibraryWeb.RecordWebServices.SpecifiCation]]| +|''An HTTP client, for testing at the HTTP level''|^HttpClient|[[HTTP Client Tutorial][^HttpClient.HttpClientTutorial]]|[[HTTP Client Specifications][^HttpClient.SpecifiCations]]| +|''Running a shell/command''|>ShellFixture|[[Docs][>ShellFixture]]|[[Example][^ShellFixture.JavaExample]]| +|''Using templates (for xmls, etc)''|>TemplateFixture|[[Docs][^TemplateFixture.TemplateFixtureDocs]]|[[Specifications][^TemplateFixture]]| +|''Creating arbitrary dates''|>CreateDate|[[Docs][>CreateDate]]|[[Detailed Examples][>CreateDate.DetailedExample]]| +|''Database access (a ''!-DoFixture-! ''wrapper for dbfit)''|>DatabaseFixtures|[[Docs][>DatabaseFixtures]]|| +|''Checking the contents of email''|>ElectronicMail|[[Docs][>ElectronicMail]]|| +|''Checking the contents of a PDF''|>PdfDocument|[[Docs][>PdfDocument]]|[[Example][^PdfDocument.RunningExample]]| + +|!2 ^WhatIsNew| + +^CheckFolderRunner + +^ThingsToDo + + diff --git a/fitnesse/FitNesseRoot/FitLibraryWeb/properties.xml b/fitnesse/FitNesseRoot/FitLibraryWeb/properties.xml new file mode 100644 index 0000000000..cba47f2a06 --- /dev/null +++ b/fitnesse/FitNesseRoot/FitLibraryWeb/properties.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + 1255303967000 + 4874505986192068043 + diff --git a/fitnesse/FitNesseRoot/ZkMultiClientLogin/content.txt b/fitnesse/FitNesseRoot/ZkMultiClientLogin/content.txt new file mode 100644 index 0000000000..a0bde946fc --- /dev/null +++ b/fitnesse/FitNesseRoot/ZkMultiClientLogin/content.txt @@ -0,0 +1,37 @@ +!contents + +!|fitlibrary.zk.ZkFixture| + +|''start spider with''|firefox| + +|''shutdown browser automatically''|false| + +|''get url''|http://localhost:8080/webui/index.zul| + +|''with''|$loginPanel $txtUserId|''set text''|!-SuperUser-!| + +|''with''|$loginPanel $txtPassword|''set text''|!-System-!| + +|''combobox''|$loginPanel $lstLanguage|''select item''|English| + +|''with''|$loginPanel $chkSelectRole|''select''|true| + +|''click''|$loginPanel $Ok| + +|checking timeout|2000| +|''element''|$rolePanel $lstClient|''exists''| + +|''element visible''|$rolePanel $lstClient| + +|''combobox''|$rolePanel $lstClient|''select item''|!-GardenWorld-!| + +|''combobox''|$rolePanel $lstRole|''select item''|!-GardenWorld Admin-!| + +|''combobox''|$rolePanel $lstOrganisation|''select item''|HQ| + +|''click''|$rolePanel $Ok| + +|checking timeout|3000| +|element|$loginUserAndRole|exists| + +|''text of''|$loginUserAndRole|is|!-SuperUser@GardenWorld.HQ/GardenWorld Admin-!| diff --git a/fitnesse/FitNesseRoot/ZkMultiClientLogin/properties.xml b/fitnesse/FitNesseRoot/ZkMultiClientLogin/properties.xml new file mode 100644 index 0000000000..3e87512357 --- /dev/null +++ b/fitnesse/FitNesseRoot/ZkMultiClientLogin/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + + true + true + diff --git a/fitnesse/FitNesseRoot/ZkSingleClientLogin/content.txt b/fitnesse/FitNesseRoot/ZkSingleClientLogin/content.txt new file mode 100644 index 0000000000..2de9ba75e5 --- /dev/null +++ b/fitnesse/FitNesseRoot/ZkSingleClientLogin/content.txt @@ -0,0 +1,35 @@ +!contents + +!|fitlibrary.zk.ZkFixture| + +|''start spider with''|firefox| + +|''shutdown browser automatically''|false| + +|''get url''|http://localhost:8080/webui/index.zul| + +|''with''|$loginPanel $txtUserId|''set text''|!-GardenAdmin-!| + +|''with''|$loginPanel $txtPassword|''set text''|!-GardenAdmin-!| + +|''combobox''|$loginPanel $lstLanguage|''select item''|English| + +|''with''|$loginPanel $chkSelectRole|''select''|true| + +|''click''|$loginPanel $Ok| + +|checking timeout|2000| +|''element''|$rolePanel $lstClient|''exists''| + +|''element invisible''|$rolePanel $lstClient| + +|''combobox''|$rolePanel $lstRole|''select item''|!-GardenWorld Admin-!| + +|''combobox''|$rolePanel $lstOrganisation|''select item''|HQ| + +|''click''|$rolePanel $Ok| + +|checking timeout|3000| +|element|$loginUserAndRole|exists| + +|''text of''|$loginUserAndRole|is|!-GardenAdmin@GardenWorld.HQ/GardenWorld Admin-!| diff --git a/fitnesse/FitNesseRoot/ZkSingleClientLogin/properties.xml b/fitnesse/FitNesseRoot/ZkSingleClientLogin/properties.xml new file mode 100644 index 0000000000..3e87512357 --- /dev/null +++ b/fitnesse/FitNesseRoot/ZkSingleClientLogin/properties.xml @@ -0,0 +1,12 @@ + + + true + true + true + true + true + true + + true + true + diff --git a/org.adempiere.server-feature/server.product.selenium.launch b/org.adempiere.server-feature/server.product.functionaltest.launch similarity index 96% rename from org.adempiere.server-feature/server.product.selenium.launch rename to org.adempiere.server-feature/server.product.functionaltest.launch index 6a5036e5c6..63c408a4fc 100644 --- a/org.adempiere.server-feature/server.product.selenium.launch +++ b/org.adempiere.server-feature/server.product.functionaltest.launch @@ -10,7 +10,7 @@ - + @@ -22,7 +22,7 @@ - + diff --git a/org.idempiere.fitnesse.server/.classpath b/org.idempiere.fitnesse.server/.classpath index 366ecdae85..afe6dbd6af 100644 --- a/org.idempiere.fitnesse.server/.classpath +++ b/org.idempiere.fitnesse.server/.classpath @@ -1,11 +1,11 @@ - - - - - + + + + + diff --git a/org.idempiere.fitnesse.server/META-INF/MANIFEST.MF b/org.idempiere.fitnesse.server/META-INF/MANIFEST.MF index 9d7e3738aa..7cef955068 100644 --- a/org.idempiere.fitnesse.server/META-INF/MANIFEST.MF +++ b/org.idempiere.fitnesse.server/META-INF/MANIFEST.MF @@ -9,13 +9,16 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Import-Package: javax.servlet;version="3.0.0", javax.servlet.http;version="3.0.0", org.adempiere.base, - org.osgi.framework;version="1.3.0" + org.osgi.framework;version="1.3.0", + org.slf4j;version="1.6.1", + org.slf4j.helpers;version="1.6.1", + org.slf4j.spi;version="1.6.1" Bundle-ClassPath: ., - fitlibrary-2.0.jar, - fitnesse.jar, - log4j-1.2.16.jar, - fitlibraryweb-2.0.jar, - selenium-server-standalone-2.27.0.jar + lib/fitlibrary-2.0.jar, + lib/fitnesse.jar, + lib/log4j-1.2.16.jar, + lib/fitlibraryweb-2.0.jar, + lib/selenium-server-standalone-2.27.0.jar Web-ContextPath: fitnesse Export-Package: fit, fit.decorator, diff --git a/org.idempiere.fitnesse.server/build.properties b/org.idempiere.fitnesse.server/build.properties index aa7492f81d..cf8b6c7d9b 100644 --- a/org.idempiere.fitnesse.server/build.properties +++ b/org.idempiere.fitnesse.server/build.properties @@ -2,8 +2,8 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - fitnesse.jar,\ - fitlibrary-2.0.jar,\ - log4j-1.2.16.jar,\ - fitlibraryweb-2.0.jar,\ - selenium-server-standalone-2.27.0.jar + lib/fitnesse.jar,\ + lib/fitlibrary-2.0.jar,\ + lib/log4j-1.2.16.jar,\ + lib/fitlibraryweb-2.0.jar,\ + lib/selenium-server-standalone-2.27.0.jar diff --git a/org.idempiere.fitnesse.server/src/fitlibrary/traverse/workflow/caller/CreateFromClassNameCaller.java b/org.idempiere.fitnesse.server/src/fitlibrary/traverse/workflow/caller/CreateFromClassNameCaller.java new file mode 100644 index 0000000000..418c00f46d --- /dev/null +++ b/org.idempiere.fitnesse.server/src/fitlibrary/traverse/workflow/caller/CreateFromClassNameCaller.java @@ -0,0 +1,136 @@ +/* + * Copyright (c) 2010 Rick Mugridge, www.RimuResearch.com + * Released under the terms of the GNU General Public License version 2 or later. + */ + +package fitlibrary.traverse.workflow.caller; + +import java.lang.reflect.InvocationTargetException; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +import org.adempiere.base.Service; +import org.apache.log4j.Logger; +import org.idempiere.fitnesse.server.fit.IFitFixtureFactory; + +import fit.Fixture; +import fit.FixtureName; +import fitlibrary.exception.classes.ConstructorNotVisible; +import fitlibrary.exception.classes.NoNullaryConstructor; +import fitlibrary.log.FitLibraryLogger; +import fitlibrary.runResults.TestResults; +import fitlibrary.table.Row; +import fitlibrary.table.TableFactory; +import fitlibrary.traverse.Evaluator; +import fitlibrary.traverse.workflow.AbstractDoCaller; +import fitlibrary.typed.TypedObject; +import fitlibrary.utility.ClassUtility; +import fitlibraryGeneric.typed.GenericTypedObject; + +public class CreateFromClassNameCaller extends AbstractDoCaller { + private static Logger logger = FitLibraryLogger.getLogger(CreateFromClassNameCaller.class); + private static final ThreadLocal> packages = // Put into Runtime + new ThreadLocal> () { + @Override + protected Set initialValue() { + HashSet hashSet = new HashSet(); + hashSet.add("fit."); + return hashSet; + } + }; + private String className; + private Object object = null; + private Exception exceptionToThrow = null; + + public CreateFromClassNameCaller(Row row, Evaluator evaluator) { + this.className = substituteName(row.text(0,evaluator).trim()); + try { + object = instantiateObject(className); + if (object == null && validClassName()) { + Class determineFullClass = determineFullClass(); + object = ClassUtility.newInstance(determineFullClass); + } + logger.trace("Created "+object); + if (row.size() > 1 && object instanceof Fixture) + handleArgs((Fixture)object,row); + } catch (NoSuchMethodException ex) { + exceptionToThrow = new NoNullaryConstructor(className,evaluator.getRuntimeContext()); + } catch (NoClassDefFoundError ex) { // "The definition can no longer be found" + exceptionToThrow = new RuntimeException(ex); + } catch (InstantiationException ex) { + exceptionToThrow = new NoNullaryConstructor(className,evaluator.getRuntimeContext()); + } catch (IllegalAccessException ex) { + exceptionToThrow = new ConstructorNotVisible(className,evaluator.getRuntimeContext()); + } catch (InvocationTargetException ex) { + exceptionToThrow = ex; + } catch (Throwable e) { + // Nothing to do + } + } + private Object instantiateObject(String className) { + FixtureName fixtureName = new FixtureName(className); + List factories = Service.locator().list(IFitFixtureFactory.class).getServices(); + for(IFitFixtureFactory factory : factories) { + Object fixture = factory.getFixture(fixtureName); + if (fixture != null) + return fixture; + } + return null; + } + private boolean validClassName() { + return !className.isEmpty() && !className.contains(" ") && + (className.contains(".") || Character.isUpperCase(className.charAt(0))); + } + private String substituteName(String name) { + if ("Import".equals(name) || "fit.Import".equals(name) || "ImportFixture".equals(name) || "fit.ImportFixture".equals(name)) { + return "fitlibrary.DefaultPackages"; + } + return name; + } + private Class determineFullClass() throws ClassNotFoundException { + ClassLoader loader = getClass().getClassLoader(); + try { + return loader.loadClass(className); + } catch (Throwable e) { + try { + return loader.loadClass(className+"Fixture"); + } catch (Throwable e1) { + for (String s : packages.get()) { + try { + return loader.loadClass(s+className); + } catch (Exception e2) { + try { + return loader.loadClass(s+className+"Fixture"); + } catch (ClassNotFoundException e3) { + // Do nothing + } catch (NoClassDefFoundError e4) { + // Do nothing + } + } + } + } + } + throw new ClassNotFoundException(className); + } + private void handleArgs(Fixture fixture, Row row) { + fixture.getArgsForTable(TableFactory.table(row).asParse()); + } + @Override + public boolean isValid() { + return object != null || exceptionToThrow != null; + } + @Override + public String ambiguityErrorMessage() { + return "class " + className; + } + @Override + public TypedObject run(Row row, TestResults testResults) throws Exception { + if (exceptionToThrow != null) + throw exceptionToThrow; + return new GenericTypedObject(object); + } + public static void addDefaultPackage(String name) { + packages.get().add(name+"."); + } +} diff --git a/org.idempiere.ui.zk.selenium/.project b/org.idempiere.ui.zk.selenium/.project index 956cb098b1..8b0f75afc5 100644 --- a/org.idempiere.ui.zk.selenium/.project +++ b/org.idempiere.ui.zk.selenium/.project @@ -1,6 +1,6 @@ - idempiere.zk.selenium + org.idempiere.ui.zk.selenium diff --git a/org.idempiere.ui.zk.selenium/.settings/org.eclipse.wst.common.project.facet.core.xml b/org.idempiere.ui.zk.selenium/.settings/org.eclipse.wst.common.project.facet.core.xml new file mode 100644 index 0000000000..bcfc325033 --- /dev/null +++ b/org.idempiere.ui.zk.selenium/.settings/org.eclipse.wst.common.project.facet.core.xml @@ -0,0 +1,4 @@ + + + + diff --git a/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF b/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF new file mode 100644 index 0000000000..9a2d109ed9 --- /dev/null +++ b/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF @@ -0,0 +1,345 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Zk Selenium +Bundle-SymbolicName: org.idempiere.ui.zk.selenium +Bundle-Version: 1.0.0.qualifier +Bundle-Activator: org.idempiere.ui.zk.selenium.fitnesse.Activator +Bundle-ActivationPolicy: lazy +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Import-Package: fit, + fit.decorator, + fit.decorator.exceptions, + fit.decorator.performance, + fit.decorator.util, + fit.exception, + fit.testFxtr, + fitlibrary, + fitlibrary.aboutToBeRemoved, + fitlibrary.annotation, + fitlibrary.batch, + fitlibrary.batch.fitnesseIn, + fitlibrary.batch.resultsOut, + fitlibrary.batch.testRun, + fitlibrary.batch.trinidad, + fitlibrary.clean, + fitlibrary.closure, + fitlibrary.collection, + fitlibrary.collection.array, + fitlibrary.collection.list, + fitlibrary.collection.map, + fitlibrary.collection.set, + fitlibrary.config, + fitlibrary.database, + fitlibrary.date, + fitlibrary.debug, + fitlibrary.definedAction, + fitlibrary.definedactions, + fitlibrary.diff, + fitlibrary.differences, + fitlibrary.domainAdapter, + fitlibrary.dynamicVariable, + fitlibrary.eg, + fitlibrary.eg.chat, + fitlibrary.email, + fitlibrary.exception, + fitlibrary.exception.classes, + fitlibrary.exception.method, + fitlibrary.exception.parse, + fitlibrary.exception.table, + fitlibrary.flex, + fitlibrary.flow, + fitlibrary.flow.actor, + fitlibrary.ftp, + fitlibrary.global, + fitlibrary.http, + fitlibrary.listener, + fitlibrary.log, + fitlibrary.matcher, + fitlibrary.mockWebServices, + fitlibrary.mockWebServices.clock, + fitlibrary.mockWebServices.logger, + fitlibrary.mockWebServices.requestMatcher, + fitlibrary.mockWebServices.responder, + fitlibrary.mockWebServices.specify, + fitlibrary.mockWebServices.term, + fitlibrary.mockWebServices.transactionFixture, + fitlibrary.object, + fitlibrary.parser, + fitlibrary.parser.collection, + fitlibrary.parser.graphic, + fitlibrary.parser.lookup, + fitlibrary.parser.self, + fitlibrary.parser.table, + fitlibrary.parser.tagged, + fitlibrary.parser.tree, + fitlibrary.pdf, + fitlibrary.polling, + fitlibrary.ref, + fitlibrary.runResults, + fitlibrary.runner, + fitlibrary.runtime, + fitlibrary.selenium, + fitlibrary.server, + fitlibrary.service, + fitlibrary.sh, + fitlibrary.sh.utility, + fitlibrary.spec, + fitlibrary.spec.filter, + fitlibrary.spec.matcher, + fitlibrary.special, + fitlibrary.speciallyNamedPackage, + fitlibrary.specify, + fitlibrary.specify.access, + fitlibrary.specify.arrayParser, + fitlibrary.specify.autowrap, + fitlibrary.specify.calculate, + fitlibrary.specify.collection, + fitlibrary.specify.collectionSetUp, + fitlibrary.specify.constraint, + fitlibrary.specify.definedAction, + fitlibrary.specify.domain, + fitlibrary.specify.dynamicVariable, + fitlibrary.specify.eg, + fitlibrary.specify.entityParser, + fitlibrary.specify.exception, + fitlibrary.specify.global, + fitlibrary.specify.initialClass, + fitlibrary.specify.listParser, + fitlibrary.specify.log, + fitlibrary.specify.mapParser, + fitlibrary.specify.mapTraverse, + fitlibrary.specify.missingMethod, + fitlibrary.specify.missingProperty, + fitlibrary.specify.parser, + fitlibrary.specify.plugin, + fitlibrary.specify.select, + fitlibrary.specify.set, + fitlibrary.specify.setParser, + fitlibrary.specify.specialAction, + fitlibrary.specify.specialisedTables, + fitlibrary.specify.suite, + fitlibrary.specify.utility, + fitlibrary.specify.valueObject, + fitlibrary.specify.workflow, + fitlibrary.spider, + fitlibrary.spider.component, + fitlibrary.spider.driver, + fitlibrary.spider.element, + fitlibrary.spider.polling, + fitlibrary.spider.specify, + fitlibrary.spider.utility, + fitlibrary.suite, + fitlibrary.table, + fitlibrary.tableOnParse, + fitlibrary.tableProxy, + fitlibrary.template, + fitlibrary.template.specify, + fitlibrary.traverse, + fitlibrary.traverse.function, + fitlibrary.traverse.workflow, + fitlibrary.traverse.workflow.caller, + fitlibrary.traverse.workflow.definedAction, + fitlibrary.traverse.workflow.special, + fitlibrary.tutorial, + fitlibrary.tutorial.chat, + fitlibrary.typed, + fitlibrary.utility, + fitlibrary.utility.option, + fitlibrary.ws, + fitlibrary.ws.client, + fitlibrary.ws.clock, + fitlibrary.ws.logger, + fitlibrary.ws.message, + fitlibrary.ws.mock.logger, + fitlibrary.ws.mock.requestMatcher, + fitlibrary.ws.mock.responder, + fitlibrary.ws.mock.term, + fitlibrary.ws.recorder, + fitlibrary.ws.soap, + fitlibrary.xml, + fitlibrary.xml.specify, + fitlibrary.xref, + fitlibraryGeneric, + fitlibraryGeneric.eg.rentEz, + fitlibraryGeneric.generic, + fitlibraryGeneric.list, + fitlibraryGeneric.map, + fitlibraryGeneric.object, + fitlibraryGeneric.set, + fitlibraryGeneric.specify, + fitlibraryGeneric.specify.calculate, + fitlibraryGeneric.specify.collections, + fitlibraryGeneric.specify.enumerator, + fitlibraryGeneric.specify.genericFinder, + fitlibraryGeneric.specify.object, + fitlibraryGeneric.specify.unbound, + fitlibraryGeneric.specify.workflow, + fitlibraryGeneric.traverse, + fitlibraryGeneric.typed, + fitnesse, + fitnesse.authentication, + fitnesse.components, + fitnesse.fixtures, + fitnesse.html, + fitnesse.http, + fitnesse.junit, + fitnesse.responders, + fitnesse.responders.editing, + fitnesse.responders.files, + fitnesse.responders.refactoring, + fitnesse.responders.run, + fitnesse.responders.run.formatters, + fitnesse.responders.run.slimResponder, + fitnesse.responders.search, + fitnesse.responders.templateUtilities, + fitnesse.responders.testHistory, + fitnesse.responders.versions, + fitnesse.runner, + fitnesse.schedule, + fitnesse.slim, + fitnesse.slim.converters, + fitnesse.slim.test, + fitnesse.slim.test.library, + fitnesse.slim.test.testSlimInThisPackageShouldNotBeTheOneUsed, + fitnesse.slimTables, + fitnesse.socketservice, + fitnesse.testutil, + fitnesse.tools, + fitnesse.updates, + fitnesse.wiki, + fitnesse.wiki.cmSystems, + fitnesse.wiki.zip, + fitnesse.wikitext, + fitnesse.wikitext.parser, + fitnesse.wikitext.test, + fitnesse.wikitext.widgets, + fitnesseMain, + fitnesseMain.ant, + javax.xml, + javax.xml.bind, + javax.xml.bind.annotation, + javax.xml.bind.attachment, + javax.xml.bind.helpers, + javax.xml.bind.util, + javax.xml.crypto, + javax.xml.crypto.dom, + javax.xml.crypto.dsig, + javax.xml.crypto.dsig.dom, + javax.xml.crypto.dsig.keyinfo, + javax.xml.crypto.dsig.spec, + javax.xml.datatype, + javax.xml.namespace, + javax.xml.parsers, + javax.xml.stream, + javax.xml.stream.events, + javax.xml.stream.util, + javax.xml.transform, + javax.xml.transform.dom, + javax.xml.transform.sax, + javax.xml.transform.stax, + javax.xml.validation, + javax.xml.xpath, + org.idempiere.fitnesse.server.fit, + org.idempiere.fitnesse.server.slim, + org.junit, + org.openqa.grid.common, + org.openqa.grid.common.exception, + org.openqa.grid.internal, + org.openqa.grid.internal.exception, + org.openqa.grid.internal.listeners, + org.openqa.grid.internal.utils, + org.openqa.grid.selenium, + org.openqa.grid.selenium.proxy, + org.openqa.grid.selenium.utils, + org.openqa.grid.web, + org.openqa.grid.web.servlet, + org.openqa.grid.web.servlet.beta, + org.openqa.grid.web.servlet.handler, + org.openqa.grid.web.utils, + org.openqa.jetty.html, + org.openqa.jetty.http, + org.openqa.jetty.http.ajp, + org.openqa.jetty.http.ajp.jmx, + org.openqa.jetty.http.handler, + org.openqa.jetty.http.handler.jmx, + org.openqa.jetty.http.jmx, + org.openqa.jetty.http.nio, + org.openqa.jetty.jetty, + org.openqa.jetty.jetty.jmx, + org.openqa.jetty.jetty.servlet, + org.openqa.jetty.jetty.servlet.jmx, + org.openqa.jetty.jetty.win32, + org.openqa.jetty.log, + org.openqa.jetty.servlet, + org.openqa.jetty.start, + org.openqa.jetty.stop, + org.openqa.jetty.util, + org.openqa.jetty.util.jmx, + org.openqa.jetty.xml, + org.openqa.selenium, + org.openqa.selenium.android, + org.openqa.selenium.browserlaunchers, + org.openqa.selenium.browserlaunchers.locators, + org.openqa.selenium.chrome, + org.openqa.selenium.firefox, + org.openqa.selenium.firefox.internal, + org.openqa.selenium.html5, + org.openqa.selenium.htmlunit, + org.openqa.selenium.ie, + org.openqa.selenium.interactions, + org.openqa.selenium.interactions.internal, + org.openqa.selenium.interactions.touch, + org.openqa.selenium.internal, + org.openqa.selenium.internal.selenesedriver, + org.openqa.selenium.internal.seleniumemulation, + org.openqa.selenium.io, + org.openqa.selenium.iphone, + org.openqa.selenium.lift, + org.openqa.selenium.lift.find, + org.openqa.selenium.lift.match, + org.openqa.selenium.logging, + org.openqa.selenium.logging.profiler, + org.openqa.selenium.net, + org.openqa.selenium.os, + org.openqa.selenium.remote, + org.openqa.selenium.remote.html5, + org.openqa.selenium.remote.internal, + org.openqa.selenium.remote.server, + org.openqa.selenium.remote.server.handler, + org.openqa.selenium.remote.server.handler.html5, + org.openqa.selenium.remote.server.handler.interactions, + org.openqa.selenium.remote.server.handler.interactions.touch, + org.openqa.selenium.remote.server.handler.internal, + org.openqa.selenium.remote.server.renderer, + org.openqa.selenium.remote.server.resource, + org.openqa.selenium.remote.server.rest, + org.openqa.selenium.remote.server.xdrpc, + org.openqa.selenium.remote.service, + org.openqa.selenium.safari, + org.openqa.selenium.security, + org.openqa.selenium.server, + org.openqa.selenium.server.browserlaunchers, + org.openqa.selenium.server.cli, + org.openqa.selenium.server.commands, + org.openqa.selenium.server.htmlrunner, + org.openqa.selenium.server.log, + org.openqa.selenium.support, + org.openqa.selenium.support.events, + org.openqa.selenium.support.events.internal, + org.openqa.selenium.support.pagefactory, + org.openqa.selenium.support.pagefactory.internal, + org.openqa.selenium.support.ui, + org.osgi.framework;version="1.3.0", + org.w3c.dom, + org.w3c.dom.bootstrap, + org.w3c.dom.css, + org.w3c.dom.events, + org.w3c.dom.html, + org.w3c.dom.ls, + org.w3c.dom.ranges, + org.w3c.dom.stylesheets, + org.w3c.dom.traversal, + org.w3c.dom.views, + org.w3c.dom.xpath +Service-Component: OSGI-INF/fitfixturefactory.xml +Bundle-ClassPath: . diff --git a/org.idempiere.ui.zk.selenium/OSGI-INF/fitfixturefactory.xml b/org.idempiere.ui.zk.selenium/OSGI-INF/fitfixturefactory.xml new file mode 100644 index 0000000000..1a3d2201c8 --- /dev/null +++ b/org.idempiere.ui.zk.selenium/OSGI-INF/fitfixturefactory.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/org.idempiere.ui.zk.selenium/build.properties b/org.idempiere.ui.zk.selenium/build.properties new file mode 100644 index 0000000000..6c4d05a4c0 --- /dev/null +++ b/org.idempiere.ui.zk.selenium/build.properties @@ -0,0 +1,6 @@ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + OSGI-INF/fitfixturefactory.xml,\ + OSGI-INF/slimfixturefactory.xml +source.. = src/ diff --git a/org.idempiere.ui.zk.selenium/src/fitlibrary/zk/ZkFixture.java b/org.idempiere.ui.zk.selenium/src/fitlibrary/zk/ZkFixture.java new file mode 100644 index 0000000000..9739d108fd --- /dev/null +++ b/org.idempiere.ui.zk.selenium/src/fitlibrary/zk/ZkFixture.java @@ -0,0 +1,111 @@ +/** + * + */ +package fitlibrary.zk; + +import java.util.List; + +import org.idempiere.ui.zk.selenium.Widget; +import org.idempiere.ui.zk.selenium.Zk; +import org.openqa.selenium.By; +import org.openqa.selenium.Keys; +import org.openqa.selenium.WebElement; + +import fitlibrary.annotation.SimpleAction; +import fitlibrary.spider.AbstractSpiderFixture; +import fitlibrary.spider.Finder; +import fitlibrary.spider.SpiderFixture; + +/** + * @author hengsin + * + */ +public class ZkFixture extends SpiderFixture { + + private Finder _finder; + + /** + * + */ + public ZkFixture() { + super(); + _finder = getFinder(); + setElementFinder(new ZkFinder()); + } + + // --------- CHECKBOX --------- + @Override + public boolean checkbox(String locator) { + locator = locator + " ~ input"; + return super.checkbox(locator); + } + + @Override + public boolean withSelect(String locator, final boolean select) { + locator = locator + " ~ input"; + + return super.withSelect(locator, select); + } + + // --------- ComboBox --------- + public String comboboxSelectedValue(String locator) { + Widget widget = new Widget(locator); + return widget.$n(webDriver, "real").getAttribute("Value"); + } + + @SimpleAction(wiki = "|''comboBox''|xpath, id or other locator|''select item''|label of item|", tooltip = "Changes the selected item in the given comboBox.") + public boolean comboboxSelectItem(String locator, String label) { + Widget widget = new Widget(locator); + WebElement element = widget.$n(webDriver, "real"); + element.clear(); + element.sendKeys(label); + element.sendKeys(Keys.ENTER); + return label.equals(element.getAttribute("value")); + } + + @SimpleAction(wiki = "|''comboBox''|xpath, id or other locator|''select item at''|index|", tooltip = "Changes the selected item to the nth one, in the given comboBox.") + public boolean comboboxSelectItemAt(String locator, int index) { + Widget widget = new Widget(locator); + widget.execute(webDriver, "open()"); + List list = webDriver.findElements(Zk.jq(locator + " @Comboitem")); + if (list != null && index < list.size()) { + WebElement element = list.get(index); + element.click(); + Widget item = new Widget("#"+element.getAttribute("id")); + String label = (String) item.eval(webDriver, "getLabel()"); + return label.equals(comboboxSelectedValue(locator)); + } + return false; + } + + class ZkFinder implements Finder { + + @Override + public WebElement findElement(String locator) { + if (locator.startsWith("$") || locator.startsWith("@")) { + return findElement(Zk.jq(locator)); + } + return _finder.findElement(locator); + } + + @Override + public WebElement findElement(By by) { + return _finder.findElement(by); + } + + @Override + public List findElements(String locator) { + if (locator.startsWith("$") || locator.startsWith("@")) { + return webDriver.findElements(Zk.jq(locator)); + } + return _finder.findElements(locator); + } + + @Override + public WebElement findOption(String locator, String option, + AbstractSpiderFixture abstractSpiderFixture) { + return _finder.findOption(locator, option, abstractSpiderFixture); + } + + } +} diff --git a/org.idempiere.ui.zk.selenium/src/org/idempiere/ui/zk/selenium/Widget.java b/org.idempiere.ui.zk.selenium/src/org/idempiere/ui/zk/selenium/Widget.java new file mode 100644 index 0000000000..78aab494c7 --- /dev/null +++ b/org.idempiere.ui.zk.selenium/src/org/idempiere/ui/zk/selenium/Widget.java @@ -0,0 +1,52 @@ +package org.idempiere.ui.zk.selenium; + +import java.util.ArrayList; +import java.util.List; + +import org.openqa.selenium.By; +import org.openqa.selenium.JavascriptExecutor; +import org.openqa.selenium.SearchContext; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.internal.WrapsDriver; + +public class Widget extends By { + + private String locator; + + public Widget(String locator) { + this.locator = locator; + } + + @Override + public List findElements(SearchContext context) { + List list = new ArrayList(); + if (context instanceof WebDriver) + list.add(findElement((WebDriver) context)); + else { + WrapsDriver wrapsDriver = (WrapsDriver) context; + list.add(findElement(wrapsDriver.getWrappedDriver())); + } + return list; + } + + private WebElement findElement(WebDriver driver) { + JavascriptExecutor executor = (JavascriptExecutor) driver; + return (WebElement) executor.executeScript("return zk('"+locator+"').$().$n();"); + } + + public WebElement $n(WebDriver driver, String subName) { + JavascriptExecutor executor = (JavascriptExecutor) driver; + return (WebElement) executor.executeScript("return zk('"+locator+"').$().$n('"+subName+"');"); + } + + public void execute(WebDriver driver, String command) { + JavascriptExecutor executor = (JavascriptExecutor) driver; + executor.executeScript("zk('"+locator+"').$()."+command+";"); + } + + public Object eval(WebDriver driver, String command) { + JavascriptExecutor executor = (JavascriptExecutor) driver; + return executor.executeScript("return zk('"+locator+"').$()."+command+";"); + } +} diff --git a/org.idempiere.ui.zk.selenium/src/org/idempiere/ui/zk/selenium/fitnesse/Activator.java b/org.idempiere.ui.zk.selenium/src/org/idempiere/ui/zk/selenium/fitnesse/Activator.java new file mode 100644 index 0000000000..325b49a6e4 --- /dev/null +++ b/org.idempiere.ui.zk.selenium/src/org/idempiere/ui/zk/selenium/fitnesse/Activator.java @@ -0,0 +1,16 @@ +package org.idempiere.ui.zk.selenium.fitnesse; + +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + +public class Activator implements BundleActivator { + + @Override + public void start(BundleContext context) throws Exception { + } + + @Override + public void stop(BundleContext context) throws Exception { + } + +} diff --git a/org.idempiere.ui.zk.selenium/src/org/idempiere/ui/zk/selenium/fitnesse/FitFixtureFactory.java b/org.idempiere.ui.zk.selenium/src/org/idempiere/ui/zk/selenium/fitnesse/FitFixtureFactory.java new file mode 100644 index 0000000000..17a657fde8 --- /dev/null +++ b/org.idempiere.ui.zk.selenium/src/org/idempiere/ui/zk/selenium/fitnesse/FitFixtureFactory.java @@ -0,0 +1,65 @@ +/****************************************************************************** + * Copyright (C) 2012 Heng Sin Low * + * Copyright (C) 2012 Trek Global * + * This program is free software; you can redistribute it and/or modify it * + * under the terms version 2 of the GNU General Public License as published * + * by the Free Software Foundation. This program is distributed in the hope * + * that it will be useful, but WITHOUT ANY WARRANTY; without even the implied * + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * + * See the GNU General Public License for more details. * + * You should have received a copy of the GNU General Public License along * + * with this program; if not, write to the Free Software Foundation, Inc., * + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * + *****************************************************************************/ +package org.idempiere.ui.zk.selenium.fitnesse; + +import org.idempiere.fitnesse.server.fit.IFitFixtureFactory; + +import fit.FixtureName; + +/** + * Fit fixture factory + * @author hengsin + * + */ +public class FitFixtureFactory implements IFitFixtureFactory { + + private final static String DEFAULT_PACKAGE = "org.idempiere.fitnesse.fixture"; + + /** + * default constructor + */ + public FitFixtureFactory() { + } + + /* (non-Javadoc) + * @see org.idempiere.fitnesse.server.fit.IFixtureFactory#getFixture(FixtureName) + */ + @Override + public Object getFixture(FixtureName fixtureName) { + String className = fixtureName.toString(); + Object obj = null; + try { + Class clazz = getClass().getClassLoader().loadClass(className); + obj = clazz.newInstance(); + return obj; + } catch (ClassNotFoundException e) { + } catch (InstantiationException e) { + } catch (IllegalAccessException e) { + } + + if (!fixtureName.isFullyQualified()) { + className = DEFAULT_PACKAGE + "." + fixtureName.toString(); + try { + Class clazz = (Class) getClass().getClassLoader().loadClass(className); + obj = clazz.newInstance(); + return obj; + } catch (ClassNotFoundException e) { + } catch (InstantiationException e) { + } catch (IllegalAccessException e) { + } + } + return null; + } + +} diff --git a/selenese/.classpath b/selenese/.classpath index bb17d08177..ed71c23e5c 100644 --- a/selenese/.classpath +++ b/selenese/.classpath @@ -2,6 +2,6 @@ - + diff --git a/ztl/.classpath b/ztl/.classpath index fc78ed36f8..8bd45de0c6 100644 --- a/ztl/.classpath +++ b/ztl/.classpath @@ -2,7 +2,7 @@ - +