Refactor source code directories

This commit is contained in:
Mike Cifelli 2018-03-17 09:23:10 -04:00
parent 529dfa473b
commit 114a3e4309
239 changed files with 802 additions and 802 deletions

View File

@ -1,12 +1,12 @@
There are cases when you want to copy and append the last row of your column or row fixture certain number of times. There are cases when you want to copy and append the last row of your column or row fixture certain number of times.
For Ex: We make a query to the database and it return certain record 'n' number of times. Instead of writing the same record 'n' number of times in your fitnesse page, you can just specify that you expect the last column 'n' number of times using the !-CopyAndAppendLastRow-! decorator. For Ex: We make a query to the database and it return certain record 'n' number of times. Instead of writing the same record 'n' number of times in your fitnesse page, you can just specify that you expect the last column 'n' number of times using the !-CopyAndAppendLastRow-! decorator.
!|Copy and Append Last Row|100|number of times| !|Copy and Append Last Row|100|number of times|
|Division| |Division|
|numerator|denominator|quotient()| |numerator|denominator|quotient()|
|10|2|5| |10|2|5|
|12.6|3|4.2| |12.6|3|4.2|
|100|4|25| |100|4|25|
In the above example, we want to divide 100 by 4 101 times. In the above example, we want to divide 100 by 4 101 times.

View File

@ -1,13 +1,13 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Edit/> <Edit/>
<Files/> <Files/>
<LastModified>20061216213113</LastModified> <LastModified>20061216213113</LastModified>
<Properties/> <Properties/>
<RecentChanges/> <RecentChanges/>
<Test/> <Test/>
<WhereUsed/> <WhereUsed/>
<saveId>1166322673244</saveId> <saveId>1166322673244</saveId>
<secure-write/> <secure-write/>
<ticketId>524008525574625139</ticketId> <ticketId>524008525574625139</ticketId>
</properties> </properties>

View File

@ -1,12 +1,12 @@
What if you want to call the fixture 'n' times with the same row except you want to update one or two column's value? What if you want to call the fixture 'n' times with the same row except you want to update one or two column's value?
Ex: If you are using fitnesse fixtures to populate database and you want to insert a record 500 times. It would be easy to write one model record and insert that 500 times. This can be easily done with the !-CopyAndAppendLastRow-! decorator. But the database table might have a primary key. So you might want to update the primary key in each row. Now you might want to pipe !-IncrementColumnsValue-! and !-CopyAndAppendLastRow-! decorators to get the job done. Ex: If you are using fitnesse fixtures to populate database and you want to insert a record 500 times. It would be easy to write one model record and insert that 500 times. This can be easily done with the !-CopyAndAppendLastRow-! decorator. But the database table might have a primary key. So you might want to update the primary key in each row. Now you might want to pipe !-IncrementColumnsValue-! and !-CopyAndAppendLastRow-! decorators to get the job done.
Here is an example where I want to divide 5 by 1, 100 times, but I also want to update the numerator by 5 and denominator by 1. Here is an example where I want to divide 5 by 1, 100 times, but I also want to update the numerator by 5 and denominator by 1.
!|Copy and Append Last Row|100|times| !|Copy and Append Last Row|100|times|
|Increment Columns Value|numerator|of type|int|by|5| |Increment Columns Value|numerator|of type|int|by|5|
|Increment Columns Value|denominator|of type|int|by|1| |Increment Columns Value|denominator|of type|int|by|1|
|Division| |Division|
|numerator|denominator|quotient()| |numerator|denominator|quotient()|
|5|1|5| |5|1|5|

View File

@ -1,13 +1,13 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Edit/> <Edit/>
<Files/> <Files/>
<LastModified>20061216215829</LastModified> <LastModified>20061216215829</LastModified>
<Properties/> <Properties/>
<RecentChanges/> <RecentChanges/>
<Test/> <Test/>
<WhereUsed/> <WhereUsed/>
<saveId>1166324308994</saveId> <saveId>1166324308994</saveId>
<secure-write/> <secure-write/>
<ticketId>-8528063939302055872</ticketId> <ticketId>-8528063939302055872</ticketId>
</properties> </properties>

View File

@ -1,4 +1,4 @@
!|Import| !|Import|
|fit.decorator| |fit.decorator|
|fit.decorator.performance| |fit.decorator.performance|
|eg| |eg|

View File

@ -1,14 +1,14 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Edit>true</Edit> <Edit>true</Edit>
<Files>true</Files> <Files>true</Files>
<LastModified>20061216183948</LastModified> <LastModified>20061216183948</LastModified>
<Properties>true</Properties> <Properties>true</Properties>
<RecentChanges>true</RecentChanges> <RecentChanges>true</RecentChanges>
<Refactor>true</Refactor> <Refactor>true</Refactor>
<Search>true</Search> <Search>true</Search>
<Versions>true</Versions> <Versions>true</Versions>
<WhereUsed>true</WhereUsed> <WhereUsed>true</WhereUsed>
<saveId>1166312388007</saveId> <saveId>1166312388007</saveId>
<ticketId>-6757238585913794424</ticketId> <ticketId>-6757238585913794424</ticketId>
</properties> </properties>

View File

@ -1,14 +1,14 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Edit>true</Edit> <Edit>true</Edit>
<Files>true</Files> <Files>true</Files>
<LastModified>20061216141632</LastModified> <LastModified>20061216141632</LastModified>
<Properties>true</Properties> <Properties>true</Properties>
<RecentChanges>true</RecentChanges> <RecentChanges>true</RecentChanges>
<Refactor>true</Refactor> <Refactor>true</Refactor>
<Search>true</Search> <Search>true</Search>
<Versions>true</Versions> <Versions>true</Versions>
<WhereUsed>true</WhereUsed> <WhereUsed>true</WhereUsed>
<saveId>1166296592283</saveId> <saveId>1166296592283</saveId>
<ticketId>-5128325404176707243</ticketId> <ticketId>-5128325404176707243</ticketId>
</properties> </properties>

View File

@ -1,145 +1,145 @@
!define TEST_SYSTEM {slim} !define TEST_SYSTEM {slim}
!| import | !| import |
| fitnesse.slim.test | | fitnesse.slim.test |
Test Strings by plain compare, neither custom compare nor regular expression. Test Strings by plain compare, neither custom compare nor regular expression.
In this case detailed diff is wanted. In this case detailed diff is wanted.
| Detailed Diff | | Detailed Diff |
| actual string | expected string? | #comment | | actual string | expected string? | #comment |
| abc | abc | equal | | abc | abc | equal |
| abc | xyz | completly different | | abc | xyz | completly different |
| abc | xbc | first char different | | abc | xbc | first char different |
| abc | ayc | middle char different | | abc | ayc | middle char different |
| abc | abz | last char different | | abc | abz | last char different |
| | xyz | actual empty, expected filled | | | xyz | actual empty, expected filled |
| abc | | actual filled, expected empty; will be counted as ignored | | abc | | actual filled, expected empty; will be counted as ignored |
| <&> | <&> | equal with HTML special chars | | <&> | <&> | equal with HTML special chars |
| <&> | xyz | completly different with HTML special chars | | <&> | xyz | completly different with HTML special chars |
| <&> | x&> | first char different with HTML special chars | | <&> | x&> | first char different with HTML special chars |
| <&> | <y> | middle char different with HTML special chars | | <&> | <y> | middle char different with HTML special chars |
| <&> | <&z | last char differentwith HTML special chars | | <&> | <&z | last char differentwith HTML special chars |
| | <&> | actual empty, expected filled with HTML special chars | | | <&> | actual empty, expected filled with HTML special chars |
| abc | <&> | completly different with HTML special chars | | abc | <&> | completly different with HTML special chars |
| abc | <bc | first char different with HTML special chars | | abc | <bc | first char different with HTML special chars |
| abc | a&c | middle char different with HTML special chars | | abc | a&c | middle char different with HTML special chars |
| abc | ab> | last char different with HTML special chars | | abc | ab> | last char different with HTML special chars |
| Hello World | Wellcome Lord | no obvious match | | Hello World | Wellcome Lord | no obvious match |
Test Strings by regular expression. Test Strings by regular expression.
In this case no detailed diff is wanted. In this case no detailed diff is wanted.
| Detailed Diff | | Detailed Diff |
| actual string | expected string? | #comment | | actual string | expected string? | #comment |
| abc | =~/abc/ | match | | abc | =~/abc/ | match |
| abc | =~/a.c/ | match | | abc | =~/a.c/ | match |
| abc | =~/\w+/ | match | | abc | =~/\w+/ | match |
| abc | =~/\w{3}/ | match | | abc | =~/\w{3}/ | match |
| abc | =~/^\w{3}$/ | match | | abc | =~/^\w{3}$/ | match |
| abc | =~/\w{1}/ | match | | abc | =~/\w{1}/ | match |
| abc | =~/^\w{1}$/ | no match | | abc | =~/^\w{1}$/ | no match |
| abc | =~/[ABC]+/ | no match | | abc | =~/[ABC]+/ | no match |
| abc | =~/[ABC]+/i | wrong syntax, disable value comparison, use string comparison | | abc | =~/[ABC]+/i | wrong syntax, disable value comparison, use string comparison |
Test integers by string comparison. Test integers by string comparison.
In this case detailed diff ist wanted. In this case detailed diff ist wanted.
| Detailed Diff | | Detailed Diff |
| actual int | expected int? | #comment | | actual int | expected int? | #comment |
| 1 | 1 | equal | | 1 | 1 | equal |
| 1 | 2 | completly different | | 1 | 2 | completly different |
| 1 | 10 | partially different | | 1 | 10 | partially different |
| | 1 | completly different | | | 1 | completly different |
Test integers by value comparison, see <FitNesse.UserGuide.WritingAcceptanceTests.SliM.ValueComparisons Test integers by value comparison, see <FitNesse.UserGuide.WritingAcceptanceTests.SliM.ValueComparisons
In this case no detailed diff is wanted. In this case no detailed diff is wanted.
| Detailed Diff | | Detailed Diff |
| actual int | expected int? | #comment | | actual int | expected int? | #comment |
| 1 | >=1 | ok | | 1 | >=1 | ok |
| 1 | <2 | ok | | 1 | <2 | ok |
| 1 | >1 | nok | | 1 | >1 | nok |
| 1 | =1 | ok | | 1 | =1 | ok |
| 1 | <1 | nok | | 1 | <1 | nok |
| 1 | 0<_<2 | ok | | 1 | 0<_<2 | ok |
| 1 | 2<_<0 | nok, logically wrong | | 1 | 2<_<0 | nok, logically wrong |
| 1 | 0>_>2 | wrong syntax, disable value comparison, use string comparison | | 1 | 0>_>2 | wrong syntax, disable value comparison, use string comparison |
| 1 | 2>_>0 | wrong syntax, disable value comparison, use string comparison | | 1 | 2>_>0 | wrong syntax, disable value comparison, use string comparison |
Test doubles by string comparison. Test doubles by string comparison.
In this case detailed diff ist wanted. In this case detailed diff ist wanted.
| Detailed Diff | | Detailed Diff |
| actual double | expected double? | #comment | | actual double | expected double? | #comment |
| 1.0 | 1.0 | equal | | 1.0 | 1.0 | equal |
| 1.1 | 222 | completly different | | 1.1 | 222 | completly different |
| 1.0 | 10 | partially different | | 1.0 | 10 | partially different |
| | 1.0 | partially different | | | 1.0 | partially different |
Test doubles by value comparison, see <FitNesse.UserGuide.WritingAcceptanceTests.SliM.ValueComparisons Test doubles by value comparison, see <FitNesse.UserGuide.WritingAcceptanceTests.SliM.ValueComparisons
In this case no detailed diff is wanted. In this case no detailed diff is wanted.
| Detailed Diff | | Detailed Diff |
| actual double | expected double? | #comment | | actual double | expected double? | #comment |
| 1 | >=1 | ok | | 1 | >=1 | ok |
| 1 | <2 | ok | | 1 | <2 | ok |
| 1 | >1 | nok | | 1 | >1 | nok |
| 1 | =1 | ok | | 1 | =1 | ok |
| 1 | <1 | nok | | 1 | <1 | nok |
| 1 | 0<_<2 | ok | | 1 | 0<_<2 | ok |
| 1 | 2<_<0 | nok, logically wrong | | 1 | 2<_<0 | nok, logically wrong |
| 1 | 0>_>2 | wrong syntax, disable value comparison, use string comparison | | 1 | 0>_>2 | wrong syntax, disable value comparison, use string comparison |
| 1 | 2>_>0 | wrong syntax, disable value comparison, use string comparison | | 1 | 2>_>0 | wrong syntax, disable value comparison, use string comparison |
| 1.0 | ~=1 | ok | | 1.0 | ~=1 | ok |
| 1.1 | ~=1 | ok | | 1.1 | ~=1 | ok |
| 0.9 | ~=1 | ok | | 0.9 | ~=1 | ok |
| 1.0 | ~=1.0 | ok | | 1.0 | ~=1.0 | ok |
| 1.1 | ~=1.0 | nok | | 1.1 | ~=1.0 | nok |
| 0.9 | ~=1.0 | nok | | 0.9 | ~=1.0 | nok |
Test symbols by string comparison. Test symbols by string comparison.
| Detailed Diff | | Detailed Diff |
| actual symbol | expected symbol? | #comment | | actual symbol | expected symbol? | #comment |
| abc | $symbol= | | | abc | $symbol= | |
| $symbol | abc | | | $symbol | abc | |
| $symbol | xyz | | | $symbol | xyz | |
| $symbol | xbc | | | $symbol | xbc | |
| $symbol | ayc | | | $symbol | ayc | |
| $symbol | abz | | | $symbol | abz | |
| abc | $symbol | | | abc | $symbol | |
| xyz | $symbol | | | xyz | $symbol | |
| xbc | $symbol | | | xbc | $symbol | |
| ayc | $symbol | | | ayc | $symbol | |
| abz | $symbol | | | abz | $symbol | |
| | $symbol | | | | $symbol | |
Test custom comparator, see FitNesse.UserGuide.AdministeringFitNesse.ConfigurationFile Test custom comparator, see FitNesse.UserGuide.AdministeringFitNesse.ConfigurationFile
The inverse comparator fitnesse.slim.test.InverseComparator negates the method String.equals(String). The inverse comparator fitnesse.slim.test.InverseComparator negates the method String.equals(String).
| script | Detailed Diff | | script | Detailed Diff |
| note | everything not equals to 'abc' is ok | | note | everything not equals to 'abc' is ok |
| check | echo | abc | inverse:xyz | | check | echo | abc | inverse:xyz |
| note | everything not equals to 'abc' is ok | | note | everything not equals to 'abc' is ok |
| check | echo | abc | inverse:ABC | | check | echo | abc | inverse:ABC |
| note | everthing not equals to 'abc' is ok | | note | everthing not equals to 'abc' is ok |
| check | echo | abc | inverse:cba | | check | echo | abc | inverse:cba |
| note | only 'abc' is nok | | note | only 'abc' is nok |
| check | echo | abc | inverse:abc | | check | echo | abc | inverse:abc |
Test Scenario and Script Test Scenario and Script
!| Scenario | Detailed Diff Scenario Test | !| Scenario | Detailed Diff Scenario Test |
| start | Detailed Diff | | start | Detailed Diff |
| check | echo | hello | hello | | check | echo | hello | hello |
| check | echo | hello | hallo | | check | echo | hello | hallo |
!| Script | !| Script |
| Detailed Diff Scenario Test | | Detailed Diff Scenario Test |

View File

@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<properties> <properties>
<Edit/> <Edit/>
<Files/> <Files/>
<Properties/> <Properties/>
<Prune/> <Prune/>
<RecentChanges/> <RecentChanges/>
<Refactor/> <Refactor/>
<Search/> <Search/>
<Test/> <Test/>
<Versions/> <Versions/>
<WhereUsed/> <WhereUsed/>
</properties> </properties>

View File

@ -1,230 +1,230 @@
!define TEST_SYSTEM {slim} !define TEST_SYSTEM {slim}
!3 Diff of failed tests !3 Diff of failed tests
!4 Original intentionally failing tests !4 Original intentionally failing tests
The subordinate page >TestPage collects the following tests. The page is disabled because of many tests fails intentionally. It is useful for manual tests only. The subordinate page >TestPage collects the following tests. The page is disabled because of many tests fails intentionally. It is useful for manual tests only.
!4 Test wrapper for test !4 Test wrapper for test
!*> Tests for type string !*> Tests for type string
!| script | !| script |
|given page|TestPage|with content|${SUT_PATH} !- |given page|TestPage|with content|${SUT_PATH} !-
!define TEST_SYSTEM {slim} !define TEST_SYSTEM {slim}
!| import | !| import |
| fitnesse.slim.test | | fitnesse.slim.test |
Test Strings by plain compare, neither custom compare nor regular expression. Test Strings by plain compare, neither custom compare nor regular expression.
In this case detailed diff is wanted. In this case detailed diff is wanted.
| Detailed Diff | | Detailed Diff |
| actual string | expected string? | #comment | | actual string | expected string? | #comment |
| abc | abc | equal | | abc | abc | equal |
| abc | xyz | completly different | | abc | xyz | completly different |
| abc | xbc | first char different | | abc | xbc | first char different |
| abc | ayc | middle char different | | abc | ayc | middle char different |
| abc | abz | last char different | | abc | abz | last char different |
| | xyz | actual empty, expected filled | | | xyz | actual empty, expected filled |
| abc | | actual filled, expected empty; will be counted as ignored | | abc | | actual filled, expected empty; will be counted as ignored |
| <&> | <&> | equal with HTML special chars | | <&> | <&> | equal with HTML special chars |
| <&> | xyz | completly different with HTML special chars | | <&> | xyz | completly different with HTML special chars |
| <&> | x&> | first char different with HTML special chars | | <&> | x&> | first char different with HTML special chars |
| <&> | <y> | middle char different with HTML special chars | | <&> | <y> | middle char different with HTML special chars |
| <&> | <&z | last char differentwith HTML special chars | | <&> | <&z | last char differentwith HTML special chars |
| | <&> | actual empty, expected filled with HTML special chars | | | <&> | actual empty, expected filled with HTML special chars |
| abc | <&> | completly different with HTML special chars | | abc | <&> | completly different with HTML special chars |
| abc | <bc | first char different with HTML special chars | | abc | <bc | first char different with HTML special chars |
| abc | a&c | middle char different with HTML special chars | | abc | a&c | middle char different with HTML special chars |
| abc | ab> | last char different with HTML special chars | | abc | ab> | last char different with HTML special chars |
| Hello World | Wellcome Lord | no obvious match | | Hello World | Wellcome Lord | no obvious match |
Test Strings by regular expression. Test Strings by regular expression.
In this case no detailed diff is wanted. In this case no detailed diff is wanted.
| Detailed Diff | | Detailed Diff |
| actual string | expected string? | #comment | | actual string | expected string? | #comment |
| abc | =~/abc/ | match | | abc | =~/abc/ | match |
| abc | =~/a.c/ | match | | abc | =~/a.c/ | match |
| abc | =~/\w+/ | match | | abc | =~/\w+/ | match |
| abc | =~/\w{3}/ | match | | abc | =~/\w{3}/ | match |
| abc | =~/^\w{3}$/ | match | | abc | =~/^\w{3}$/ | match |
| abc | =~/\w{1}/ | match | | abc | =~/\w{1}/ | match |
| abc | =~/^\w{1}$/ | no match | | abc | =~/^\w{1}$/ | no match |
| abc | =~/[ABC]+/ | no match | | abc | =~/[ABC]+/ | no match |
| abc | =~/[ABC]+/i | wrong syntax, disable value comparison, use string comparison | | abc | =~/[ABC]+/i | wrong syntax, disable value comparison, use string comparison |
-!| -!|
|test results for page|TestPage|should contain|!-<span class="pass">abc</span>-!| |test results for page|TestPage|should contain|!-<span class="pass">abc</span>-!|
|test results for page|TestPage|should contain|!-[<span class="diff">abc</span>] <span class="fail">expected [</span><span class="diff">xyz</span><span class="fail">]</span>-!| |test results for page|TestPage|should contain|!-[<span class="diff">abc</span>] <span class="fail">expected [</span><span class="diff">xyz</span><span class="fail">]</span>-!|
|test results for page|TestPage|should contain|!-[<span class="diff">a</span>bc] <span class="fail">expected [</span><span class="diff">x</span><span class="fail">bc]</span>-!| |test results for page|TestPage|should contain|!-[<span class="diff">a</span>bc] <span class="fail">expected [</span><span class="diff">x</span><span class="fail">bc]</span>-!|
|test results for page|TestPage|should contain|!-[a<span class="diff">b</span>c] <span class="fail">expected [a</span><span class="diff">y</span><span class="fail">c]</span>-!| |test results for page|TestPage|should contain|!-[a<span class="diff">b</span>c] <span class="fail">expected [a</span><span class="diff">y</span><span class="fail">c]</span>-!|
|test results for page|TestPage|should contain|!-[ab<span class="diff">c</span>] <span class="fail">expected [ab</span><span class="diff">z</span><span class="fail">]</span>-!| |test results for page|TestPage|should contain|!-[ab<span class="diff">c</span>] <span class="fail">expected [ab</span><span class="diff">z</span><span class="fail">]</span>-!|
|test results for page|TestPage|should contain|!-[] <span class="fail">expected [</span><span class="diff">xyz</span><span class="fail">]</span>-!| |test results for page|TestPage|should contain|!-[] <span class="fail">expected [</span><span class="diff">xyz</span><span class="fail">]</span>-!|
|test results for page|TestPage|should contain|!-[<span class="diff">H</span>ello <span class="diff">W</span>or<span class="diff">l</span>d] <span class="fail">expected [</span><span class="diff">W</span><span class="fail">ell</span><span class="diff">c</span><span class="fail">o</span><span class="diff">me</span><span class="fail"> </span><span class="diff">L</span><span class="fail">ord]-!| |test results for page|TestPage|should contain|!-[<span class="diff">H</span>ello <span class="diff">W</span>or<span class="diff">l</span>d] <span class="fail">expected [</span><span class="diff">W</span><span class="fail">ell</span><span class="diff">c</span><span class="fail">o</span><span class="diff">me</span><span class="fail"> </span><span class="diff">L</span><span class="fail">ord]-!|
*! *!
!*> Tests for type int !*> Tests for type int
!| script | !| script |
|given page|TestPage|with content|${SUT_PATH} !- |given page|TestPage|with content|${SUT_PATH} !-
!define TEST_SYSTEM {slim} !define TEST_SYSTEM {slim}
!| import | !| import |
| fitnesse.slim.test | | fitnesse.slim.test |
Test integers by string comparison. Test integers by string comparison.
In this case detailed diff ist wanted. In this case detailed diff ist wanted.
| Detailed Diff | | Detailed Diff |
| actual int | expected int? | #comment | | actual int | expected int? | #comment |
| 1 | 1 | equal | | 1 | 1 | equal |
| 1 | 2 | completly different | | 1 | 2 | completly different |
| 1 | 10 | partially different | | 1 | 10 | partially different |
| | 1 | completly different | | | 1 | completly different |
Test integers by value comparison, see <FitNesse.UserGuide.WritingAcceptanceTests.SliM.ValueComparisons Test integers by value comparison, see <FitNesse.UserGuide.WritingAcceptanceTests.SliM.ValueComparisons
In this case no detailed diff is wanted. In this case no detailed diff is wanted.
| Detailed Diff | | Detailed Diff |
| actual int | expected int? | #comment | | actual int | expected int? | #comment |
| 1 | >=1 | ok | | 1 | >=1 | ok |
| 1 | <2 | ok | | 1 | <2 | ok |
| 1 | >1 | nok | | 1 | >1 | nok |
| 1 | =1 | ok | | 1 | =1 | ok |
| 1 | <1 | nok | | 1 | <1 | nok |
| 1 | 0<_<2 | ok | | 1 | 0<_<2 | ok |
| 1 | 2<_<0 | nok, logically wrong | | 1 | 2<_<0 | nok, logically wrong |
| 1 | 0>_>2 | wrong syntax, disable value comparison, use string comparison | | 1 | 0>_>2 | wrong syntax, disable value comparison, use string comparison |
| 1 | 2>_>0 | wrong syntax, disable value comparison, use string comparison | | 1 | 2>_>0 | wrong syntax, disable value comparison, use string comparison |
-!| -!|
|test results for page|TestPage|should contain|| |test results for page|TestPage|should contain||
*! *!
!*> Tests for type double !*> Tests for type double
!| script | !| script |
|given page|TestPage|with content|${SUT_PATH} !- |given page|TestPage|with content|${SUT_PATH} !-
!define TEST_SYSTEM {slim} !define TEST_SYSTEM {slim}
!| import | !| import |
| fitnesse.slim.test | | fitnesse.slim.test |
Test doubles by string comparison. Test doubles by string comparison.
In this case detailed diff ist wanted. In this case detailed diff ist wanted.
| Detailed Diff | | Detailed Diff |
| actual double | expected double? | #comment | | actual double | expected double? | #comment |
| 1.0 | 1.0 | equal | | 1.0 | 1.0 | equal |
| 1.1 | 222 | completly different | | 1.1 | 222 | completly different |
| 1.0 | 10 | partially different | | 1.0 | 10 | partially different |
| | 1.0 | partially different | | | 1.0 | partially different |
Test doubles by value comparison, see <FitNesse.UserGuide.WritingAcceptanceTests.SliM.ValueComparisons Test doubles by value comparison, see <FitNesse.UserGuide.WritingAcceptanceTests.SliM.ValueComparisons
In this case no detailed diff is wanted. In this case no detailed diff is wanted.
| Detailed Diff | | Detailed Diff |
| actual double | expected double? | #comment | | actual double | expected double? | #comment |
| 1 | >=1 | ok | | 1 | >=1 | ok |
| 1 | <2 | ok | | 1 | <2 | ok |
| 1 | >1 | nok | | 1 | >1 | nok |
| 1 | =1 | ok | | 1 | =1 | ok |
| 1 | <1 | nok | | 1 | <1 | nok |
| 1 | 0<_<2 | ok | | 1 | 0<_<2 | ok |
| 1 | 2<_<0 | nok, logically wrong | | 1 | 2<_<0 | nok, logically wrong |
| 1 | 0>_>2 | wrong syntax, disable value comparison, use string comparison | | 1 | 0>_>2 | wrong syntax, disable value comparison, use string comparison |
| 1 | 2>_>0 | wrong syntax, disable value comparison, use string comparison | | 1 | 2>_>0 | wrong syntax, disable value comparison, use string comparison |
| 1.0 | ~=1 | ok | | 1.0 | ~=1 | ok |
| 1.1 | ~=1 | ok | | 1.1 | ~=1 | ok |
| 0.9 | ~=1 | ok | | 0.9 | ~=1 | ok |
| 1.0 | ~=1.0 | ok | | 1.0 | ~=1.0 | ok |
| 1.1 | ~=1.0 | nok | | 1.1 | ~=1.0 | nok |
| 0.9 | ~=1.0 | nok | | 0.9 | ~=1.0 | nok |
-!| -!|
|test results for page|TestPage|should contain|| |test results for page|TestPage|should contain||
*! *!
!*> Tests of fitnesse symbols !*> Tests of fitnesse symbols
!| script | !| script |
|given page|TestPage|with content|${SUT_PATH} !- |given page|TestPage|with content|${SUT_PATH} !-
!define TEST_SYSTEM {slim} !define TEST_SYSTEM {slim}
!| import | !| import |
| fitnesse.slim.test | | fitnesse.slim.test |
Test symbols by string comparison. Test symbols by string comparison.
| Detailed Diff | | Detailed Diff |
| actual symbol | expected symbol? | #comment | | actual symbol | expected symbol? | #comment |
| abc | $symbol= | | | abc | $symbol= | |
| $symbol | abc | | | $symbol | abc | |
| $symbol | xyz | | | $symbol | xyz | |
| $symbol | xbc | | | $symbol | xbc | |
| $symbol | ayc | | | $symbol | ayc | |
| $symbol | abz | | | $symbol | abz | |
| abc | $symbol | | | abc | $symbol | |
| xyz | $symbol | | | xyz | $symbol | |
| xbc | $symbol | | | xbc | $symbol | |
| ayc | $symbol | | | ayc | $symbol | |
| abz | $symbol | | | abz | $symbol | |
| | $symbol | | | | $symbol | |
-!| -!|
|test results for page|TestPage|should contain|!-<span class="pass">abc</span>-!| |test results for page|TestPage|should contain|!-<span class="pass">abc</span>-!|
|test results for page|TestPage|should contain|!-[<span class="diff">abc</span>] <span class="fail">expected [</span><span class="diff">xyz</span><span class="fail">]</span>-!| |test results for page|TestPage|should contain|!-[<span class="diff">abc</span>] <span class="fail">expected [</span><span class="diff">xyz</span><span class="fail">]</span>-!|
|test results for page|TestPage|should contain|!-[<span class="diff">a</span>bc] <span class="fail">expected [</span><span class="diff">x</span><span class="fail">bc]</span>-!| |test results for page|TestPage|should contain|!-[<span class="diff">a</span>bc] <span class="fail">expected [</span><span class="diff">x</span><span class="fail">bc]</span>-!|
|test results for page|TestPage|should contain|!-[a<span class="diff">b</span>c] <span class="fail">expected [a</span><span class="diff">y</span><span class="fail">c]</span>-!| |test results for page|TestPage|should contain|!-[a<span class="diff">b</span>c] <span class="fail">expected [a</span><span class="diff">y</span><span class="fail">c]</span>-!|
|test results for page|TestPage|should contain|!-[ab<span class="diff">c</span>] <span class="fail">expected [ab</span><span class="diff">z</span><span class="fail">]</span>-!| |test results for page|TestPage|should contain|!-[ab<span class="diff">c</span>] <span class="fail">expected [ab</span><span class="diff">z</span><span class="fail">]</span>-!|
|test results for page|TestPage|should contain|!-&lt;span class="pass"&gt;$symbol-&gt;[abc]&lt;/span&gt;-!| |test results for page|TestPage|should contain|!-&lt;span class="pass"&gt;$symbol-&gt;[abc]&lt;/span&gt;-!|
|test results for page|TestPage|should contain|!-[<span class="diff">xyz</span>] <span class="fail">expected [$symbol-&gt;[</span><span class="diff">abc</span><span class="fail">]]</span>-!| |test results for page|TestPage|should contain|!-[<span class="diff">xyz</span>] <span class="fail">expected [$symbol-&gt;[</span><span class="diff">abc</span><span class="fail">]]</span>-!|
|test results for page|TestPage|should contain|!-[<span class="diff">x</span>bc] <span class="fail">expected [$symbol-&gt;[</span><span class="diff">a</span><span class="fail">bc]]</span>-!| |test results for page|TestPage|should contain|!-[<span class="diff">x</span>bc] <span class="fail">expected [$symbol-&gt;[</span><span class="diff">a</span><span class="fail">bc]]</span>-!|
|test results for page|TestPage|should contain|!-[a<span class="diff">y</span>c] <span class="fail">expected [$symbol-&gt;[a</span><span class="diff">b</span><span class="fail">c]]</span>-!| |test results for page|TestPage|should contain|!-[a<span class="diff">y</span>c] <span class="fail">expected [$symbol-&gt;[a</span><span class="diff">b</span><span class="fail">c]]</span>-!|
|test results for page|TestPage|should contain|!-[ab<span class="diff">z</span>] <span class="fail">expected [$symbol-&gt;[ab</span><span class="diff">c</span><span class="fail">]]</span>-!| |test results for page|TestPage|should contain|!-[ab<span class="diff">z</span>] <span class="fail">expected [$symbol-&gt;[ab</span><span class="diff">c</span><span class="fail">]]</span>-!|
|test results for page|TestPage|should contain|!-[] <span class="fail">expected [$symbol-&gt;[</span><span class="diff">abc</span><span class="fail">]]</span>-!| |test results for page|TestPage|should contain|!-[] <span class="fail">expected [$symbol-&gt;[</span><span class="diff">abc</span><span class="fail">]]</span>-!|
*! *!
!*> Tests of custom comparator !*> Tests of custom comparator
!| script | !| script |
|given page|TestPage|with content|${SUT_PATH} !- |given page|TestPage|with content|${SUT_PATH} !-
!define TEST_SYSTEM {slim} !define TEST_SYSTEM {slim}
!| import | !| import |
| fitnesse.slim.test | | fitnesse.slim.test |
Test custom comparator, see FitNesse.UserGuide.AdministeringFitNesse.ConfigurationFile Test custom comparator, see FitNesse.UserGuide.AdministeringFitNesse.ConfigurationFile
The inverse comparator fitnesse.slim.test.InverseComparator negates the method String.equals(String). The inverse comparator fitnesse.slim.test.InverseComparator negates the method String.equals(String).
| script | Detailed Diff | | script | Detailed Diff |
| note | everything not equals to 'abc' is ok | | note | everything not equals to 'abc' is ok |
| check | echo | abc | inverse:xyz | | check | echo | abc | inverse:xyz |
| note | everything not equals to 'abc' is ok | | note | everything not equals to 'abc' is ok |
| check | echo | abc | inverse:ABC | | check | echo | abc | inverse:ABC |
| note | everthing not equals to 'abc' is ok | | note | everthing not equals to 'abc' is ok |
| check | echo | abc | inverse:cba | | check | echo | abc | inverse:cba |
| note | only 'abc' is nok | | note | only 'abc' is nok |
| check | echo | abc | inverse:abc | | check | echo | abc | inverse:abc |
-!| -!|
|test results for page|TestPage|should contain|| |test results for page|TestPage|should contain||
*! *!
!*> Tests of scenario !*> Tests of scenario
!| script | !| script |
|given page|TestPage|with content|${SUT_PATH} !- |given page|TestPage|with content|${SUT_PATH} !-
!define TEST_SYSTEM {slim} !define TEST_SYSTEM {slim}
!| import | !| import |
| fitnesse.slim.test | | fitnesse.slim.test |
Test Scenario and Script Test Scenario and Script
!| Scenario | Detailed Diff Scenario Test | !| Scenario | Detailed Diff Scenario Test |
| start | Detailed Diff | | start | Detailed Diff |
| check | echo | hello | hello | | check | echo | hello | hello |
| check | echo | hello | hallo | | check | echo | hello | hallo |
!| Script | !| Script |
| Detailed Diff Scenario Test | | Detailed Diff Scenario Test |
-!| -!|
|test results for page|TestPage|should contain|!-<span class="pass">hello</span>-!| |test results for page|TestPage|should contain|!-<span class="pass">hello</span>-!|
|test results for page|TestPage|should contain|!-[h<span class="diff">e</span>llo] <span class="fail">expected [h</span><span class="diff">a</span><span class="fail">llo]</span>-!| |test results for page|TestPage|should contain|!-[h<span class="diff">e</span>llo] <span class="fail">expected [h</span><span class="diff">a</span><span class="fail">llo]</span>-!|
*! *!

View File

@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<properties> <properties>
<Edit>true</Edit> <Edit>true</Edit>
<Files>true</Files> <Files>true</Files>
<Properties>true</Properties> <Properties>true</Properties>
<RecentChanges>true</RecentChanges> <RecentChanges>true</RecentChanges>
<Refactor>true</Refactor> <Refactor>true</Refactor>
<Search>true</Search> <Search>true</Search>
<Test>true</Test> <Test>true</Test>
<Versions>true</Versions> <Versions>true</Versions>
<WhereUsed>true</WhereUsed> <WhereUsed>true</WhereUsed>
</properties> </properties>

View File

@ -1,33 +1,33 @@
|import | |import |
|fitnesse.slim.test| |fitnesse.slim.test|
There was a bug in the Scenario selection process that caused a scenario with no inputs to be selected when it should have been method on the driver class. This happened because the !-ScenarioTable-! class was enhanced to try all rows as parameterized. So it took "login" and tried "login _ ". This resulted in the "login" scenario being used instead of the "loginWithUsernameAndPassword" method when "connect as with" scenario was called. This page demonstrates the fix. There was a bug in the Scenario selection process that caused a scenario with no inputs to be selected when it should have been method on the driver class. This happened because the !-ScenarioTable-! class was enhanced to try all rows as parameterized. So it took "login" and tried "login _ ". This resulted in the "login" scenario being used instead of the "loginWithUsernameAndPassword" method when "connect as with" scenario was called. This page demonstrates the fix.
!2 Scenario with no arguments and a shared root !2 Scenario with no arguments and a shared root
!|scenario |login | !|scenario |login |
|connect to server| |connect to server|
!2 !2
!|scenario |connect as|username |with|password| !|scenario |connect as|username |with|password|
|login with username|@username |and Password|@password | |login with username|@username |and Password|@password |
!2 Scenario With one argument and a shared root. !2 Scenario With one argument and a shared root.
!|scenario |login with|name| !|scenario |login with|name|
|connect to server as|@name | |connect to server as|@name |
!2 Now calling a scenario that does take arguments, but since it isn't in parameterized format, the scenario with an argument isn't called, even though it shares a common root. !2 Now calling a scenario that does take arguments, but since it isn't in parameterized format, the scenario with an argument isn't called, even though it shares a common root.
!|scenario |connect as|username |with|password| !|scenario |connect as|username |with|password|
|login with username|@username |and Password|@password | |login with username|@username |and Password|@password |
!|script | !|script |
|start |Login Dialog Driver|bob |xyzz| |start |Login Dialog Driver|bob |xyzz|
|connect as|bob |with|xyzz| |connect as|bob |with|xyzz|

View File

@ -1,12 +1,12 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Edit>true</Edit> <Edit>true</Edit>
<Files>true</Files> <Files>true</Files>
<Properties>true</Properties> <Properties>true</Properties>
<RecentChanges>true</RecentChanges> <RecentChanges>true</RecentChanges>
<Refactor>true</Refactor> <Refactor>true</Refactor>
<Search>true</Search> <Search>true</Search>
<Test>true</Test> <Test>true</Test>
<Versions>true</Versions> <Versions>true</Versions>
<WhereUsed>true</WhereUsed> <WhereUsed>true</WhereUsed>
</properties> </properties>

View File

@ -1,14 +1,14 @@
Create an absolute symbolic link from a sub-page: Create an absolute symbolic link from a sub-page:
First we need to create some pages to play with. First we need to create some pages to play with.
!|Page creator.| !|Page creator.|
|Page name. |PageContents. |valid?| |Page name. |PageContents. |valid?|
|LinkingPage |LINKING PAGE |true | |LinkingPage |LINKING PAGE |true |
|LinkingPage.LinkingChild|LINKING CHILD |true | |LinkingPage.LinkingChild|LINKING CHILD |true |
|LinkedPage |LINKED PAGE |true | |LinkedPage |LINKED PAGE |true |
|LinkedPage.LinkedChild |LINKED CHILD |true | |LinkedPage.LinkedChild |LINKED CHILD |true |
Now we create a symbolic link named !-SymLink-!. This links !-LinkedPage.LinkedChild-! as a child of !-LinkingPage.LinkingChild-!. Now we create a symbolic link named !-SymLink-!. This links !-LinkedPage.LinkedChild-! as a child of !-LinkingPage.LinkingChild-!.
!|Response Requester.| !|Response Requester.|
|uri |status?| |uri |status?|
|LinkingPage.LinkingChild?responder=symlink&linkName=SymLink&linkPath=.LinkedPage.LinkedChild|303| |LinkingPage.LinkingChild?responder=symlink&linkName=SymLink&linkPath=.LinkedPage.LinkedChild|303|

View File

@ -1,10 +1,10 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Files/> <Files/>
<Help></Help> <Help></Help>
<LastModified>20071209231745</LastModified> <LastModified>20071209231745</LastModified>
<RecentChanges/> <RecentChanges/>
<Suites></Suites> <Suites></Suites>
<saveId>1197255276583</saveId> <saveId>1197255276583</saveId>
<ticketId>-2802271540647210678</ticketId> <ticketId>-2802271540647210678</ticketId>
</properties> </properties>

View File

@ -1,13 +1,13 @@
Create an absolute symbolic link from a sub-page: Create an absolute symbolic link from a sub-page:
First we need to create some pages to play with. First we need to create some pages to play with.
!|Page creator.| !|Page creator.|
|Page name. |PageContents. |valid?| |Page name. |PageContents. |valid?|
|LinkingPage |LINKING PAGE |true | |LinkingPage |LINKING PAGE |true |
|LinkingPage.LinkingChild|LINKING CHILD |true | |LinkingPage.LinkingChild|LINKING CHILD |true |
|LinkingPage.LinkedChild |LINKED CHILD |true | |LinkingPage.LinkedChild |LINKED CHILD |true |
Now we create a symbolic link named !-SymLink-!. This links !-LinkedPage.LinkedChild-! as a child of !-LinkingPage.LinkingChild-!. Now we create a symbolic link named !-SymLink-!. This links !-LinkedPage.LinkedChild-! as a child of !-LinkingPage.LinkingChild-!.
!|Response Requester.| !|Response Requester.|
|uri |status?| |uri |status?|
|LinkingPage.LinkingChild?responder=symlink&linkName=SymLink&linkPath=<LinkingPage.LinkedChild|303| |LinkingPage.LinkingChild?responder=symlink&linkName=SymLink&linkPath=<LinkingPage.LinkedChild|303|

View File

@ -1,10 +1,10 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Files/> <Files/>
<Help></Help> <Help></Help>
<LastModified>20071209231818</LastModified> <LastModified>20071209231818</LastModified>
<RecentChanges/> <RecentChanges/>
<Suites></Suites> <Suites></Suites>
<saveId>1197255523311</saveId> <saveId>1197255523311</saveId>
<ticketId>-2905294764201163185</ticketId> <ticketId>-2905294764201163185</ticketId>
</properties> </properties>

View File

@ -1,15 +1,15 @@
Create an nested backward symbolic link from a sub-page: Create an nested backward symbolic link from a sub-page:
First we need to create some pages to play with. First we need to create some pages to play with.
!|Page creator.| !|Page creator.|
|Page name. |PageContents. |valid?| |Page name. |PageContents. |valid?|
|LinkingPage |LINKING PAGE |true | |LinkingPage |LINKING PAGE |true |
|LinkingPage.LinkingChild |LINKING CHILD |true | |LinkingPage.LinkingChild |LINKING CHILD |true |
|LinkingPage.LinkingChild.LinkingGrandChild |LINKING GRAND CHILD |true | |LinkingPage.LinkingChild.LinkingGrandChild |LINKING GRAND CHILD |true |
|LinkingPage.LinkingChild.LinkingGrandChild.LinkingGreatGrandChild|LINKING GREAT GRAND CHILD |true | |LinkingPage.LinkingChild.LinkingGrandChild.LinkingGreatGrandChild|LINKING GREAT GRAND CHILD |true |
|LinkingPage.LinkingChild.LinkedChild |LINKED CHILD |true | |LinkingPage.LinkingChild.LinkedChild |LINKED CHILD |true |
Now we create a symbolic link named !-SymLink-!. This links !-LinkedPage.LinkedChild-! as a child of !-LinkingPage.LinkingChild-!. Now we create a symbolic link named !-SymLink-!. This links !-LinkedPage.LinkedChild-! as a child of !-LinkingPage.LinkingChild-!.
!|Response Requester.| !|Response Requester.|
|uri |status?| |uri |status?|
|LinkingPage.LinkingChild.LinkingGrandChild.LinkingGreatGrandChild?responder=symlink&linkName=SymLink&linkPath=<LinkingChild.LinkedChild|303| |LinkingPage.LinkingChild.LinkingGrandChild.LinkingGreatGrandChild?responder=symlink&linkName=SymLink&linkPath=<LinkingChild.LinkedChild|303|

View File

@ -1,10 +1,10 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Files/> <Files/>
<Help></Help> <Help></Help>
<LastModified>20071212153458</LastModified> <LastModified>20071212153458</LastModified>
<RecentChanges/> <RecentChanges/>
<Suites></Suites> <Suites></Suites>
<saveId>1197318232254</saveId> <saveId>1197318232254</saveId>
<ticketId>-6614712250920689672</ticketId> <ticketId>-6614712250920689672</ticketId>
</properties> </properties>

View File

@ -1,15 +1,15 @@
Creating a symbolic link is done in the properties view of the page that will contain the link. There is a form where a user supplies a name for the link and a path for the linked page. When submitted the URL has the following form: Creating a symbolic link is done in the properties view of the page that will contain the link. There is a form where a user supplies a name for the link and a path for the linked page. When submitted the URL has the following form:
!-http://host/PathToPage?responder=symlink&linkName=<linkName>&linkPath=<linkPath>-! !-http://host/PathToPage?responder=symlink&linkName=<linkName>&linkPath=<linkPath>-!
First we need to create some pages to play with. First we need to create some pages to play with.
!|Page creator.| !|Page creator.|
|Page name.|valid?| |Page name.|valid?|
|LinkingPage|true| |LinkingPage|true|
|LinkedPage|true| |LinkedPage|true|
Now we create a symbolic link named !-SymLink-!. This links !-LinkedPage-! as a child of !-LinkingPage-!. Now we create a symbolic link named !-SymLink-!. This links !-LinkedPage-! as a child of !-LinkingPage-!.
!|Response Requester.| !|Response Requester.|
|uri |status?| |uri |status?|
|LinkingPage?responder=symlink&linkName=SymLink&linkPath=LinkedPage|303| |LinkingPage?responder=symlink&linkName=SymLink&linkPath=LinkedPage|303|

View File

@ -1,10 +1,10 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Files/> <Files/>
<Help></Help> <Help></Help>
<LastModified>20071209231838</LastModified> <LastModified>20071209231838</LastModified>
<RecentChanges/> <RecentChanges/>
<Suites></Suites> <Suites></Suites>
<saveId>1197229524174</saveId> <saveId>1197229524174</saveId>
<ticketId>5360217332855886973</ticketId> <ticketId>5360217332855886973</ticketId>
</properties> </properties>

View File

@ -1,12 +1,12 @@
Create a symbolic link to a sub-page: Create a symbolic link to a sub-page:
First we need to create some pages to play with. First we need to create some pages to play with.
!|Page creator.| !|Page creator.|
|Page name. |PageContents. |valid?| |Page name. |PageContents. |valid?|
|LinkingPage |LINKING PAGE |true | |LinkingPage |LINKING PAGE |true |
|LinkingPage.LinkedChild |LINKED CHILD |true | |LinkingPage.LinkedChild |LINKED CHILD |true |
Now we create a symbolic link named !-SymLink-!. This links !-LinkingPage.LinkedChild-! as a child of !-LinkingPage-!. Now we create a symbolic link named !-SymLink-!. This links !-LinkingPage.LinkedChild-! as a child of !-LinkingPage-!.
!|Response Requester.| !|Response Requester.|
|uri |status?| |uri |status?|
|LinkingPage?responder=symlink&linkName=SymLink&linkPath=>LinkedChild|303| |LinkingPage?responder=symlink&linkName=SymLink&linkPath=>LinkedChild|303|

View File

@ -1,14 +1,14 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Edit>true</Edit> <Edit>true</Edit>
<Files>true</Files> <Files>true</Files>
<LastModified>20071209210332</LastModified> <LastModified>20071209210332</LastModified>
<Properties>true</Properties> <Properties>true</Properties>
<RecentChanges>true</RecentChanges> <RecentChanges>true</RecentChanges>
<Refactor>true</Refactor> <Refactor>true</Refactor>
<Search>true</Search> <Search>true</Search>
<Versions>true</Versions> <Versions>true</Versions>
<WhereUsed>true</WhereUsed> <WhereUsed>true</WhereUsed>
<saveId>1197252212825</saveId> <saveId>1197252212825</saveId>
<ticketId>6202123951021509855</ticketId> <ticketId>6202123951021509855</ticketId>
</properties> </properties>

View File

@ -1,14 +1,14 @@
!c !3 Symbolic Links !c !3 Symbolic Links
Symbolic Links allow a user to easily create parent-child links between pages without permanently affecting the wiki structure. One common reason need for Symbolic Links is the the testing of a system on multiple environments. For example, imagine an application that site on top of an Oracle database. Hundreds of FitNesse tests have been written for this application using Oracle settings and then the team is confronted with the need to run the application on !-MySql-!. Getting both databases running under the same suite of tests can be very difficult and may result in duplicating all the tests. With Symbolic Links, the database configurations can be stored in high level pages along with appropriate path elements. Then the high-level pages may symbolically link to the test suite. In this manner one suite of tests can be executed in multiple environments. Symbolic Links allow a user to easily create parent-child links between pages without permanently affecting the wiki structure. One common reason need for Symbolic Links is the the testing of a system on multiple environments. For example, imagine an application that site on top of an Oracle database. Hundreds of FitNesse tests have been written for this application using Oracle settings and then the team is confronted with the need to run the application on !-MySql-!. Getting both databases running under the same suite of tests can be very difficult and may result in duplicating all the tests. With Symbolic Links, the database configurations can be stored in high level pages along with appropriate path elements. Then the high-level pages may symbolically link to the test suite. In this manner one suite of tests can be executed in multiple environments.
>TestCreatingRelativeSymbolicLink >TestCreatingRelativeSymbolicLink
>TestCreatingAbsoluteSymbolicLink >TestCreatingAbsoluteSymbolicLink
>TestCreatingSubPageSymbolicLink >TestCreatingSubPageSymbolicLink
>TestCreatingBackwardSymbolicLink >TestCreatingBackwardSymbolicLink
>TestRemovingSymbolicLink >TestRemovingSymbolicLink
>TestSymbolicLinkBehavior >TestSymbolicLinkBehavior
---- ----
All Subpages: All Subpages:
!contents !contents

View File

@ -1,12 +1,12 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Files/> <Files/>
<Help/> <Help/>
<LastModified>20071209232537</LastModified> <LastModified>20071209232537</LastModified>
<RecentChanges/> <RecentChanges/>
<Suite/> <Suite/>
<Suites/> <Suites/>
<WhereUsed/> <WhereUsed/>
<saveId>1197260737340</saveId> <saveId>1197260737340</saveId>
<ticketId>159061011507139978</ticketId> <ticketId>159061011507139978</ticketId>
</properties> </properties>

View File

@ -1,9 +1,9 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<properties> <properties>
<Files/> <Files/>
<LastModified>20071130010014</LastModified> <LastModified>20071130010014</LastModified>
<RecentChanges/> <RecentChanges/>
<Suites></Suites> <Suites></Suites>
<Test/> <Test/>
<WhereUsed/> <WhereUsed/>
</properties> </properties>

View File

@ -9,8 +9,8 @@
<version>1.2.0</version> <version>1.2.0</version>
<build> <build>
<sourceDirectory>src</sourceDirectory> <sourceDirectory>src/main</sourceDirectory>
<testSourceDirectory>test</testSourceDirectory> <testSourceDirectory>src/test</testSourceDirectory>
<resources> <resources>
<resource> <resource>
@ -20,7 +20,7 @@
<testResources> <testResources>
<testResource> <testResource>
<directory>test</directory> <directory>src/test</directory>
<excludes> <excludes>
<exclude>**/*.java</exclude> <exclude>**/*.java</exclude>
</excludes> </excludes>
@ -83,7 +83,7 @@
<configuration> <configuration>
<transformers> <transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>main.LispMain</mainClass> <mainClass>application.LispMain</mainClass>
</transformer> </transformer>
</transformers> </transformers>
</configuration> </configuration>

View File

@ -1,4 +1,4 @@
package main; package application;
import static com.googlecode.lanterna.terminal.IOSafeTerminalAdapter.createRuntimeExceptionConvertingAdapter; import static com.googlecode.lanterna.terminal.IOSafeTerminalAdapter.createRuntimeExceptionConvertingAdapter;
import static java.text.MessageFormat.format; import static java.text.MessageFormat.format;

Some files were not shown because too many files have changed in this diff Show More