thin-provisioning-tools/features/thin_rmap.feature

106 lines
2.9 KiB
Gherkin

Feature: thin_rmap
Scenario: print version (-V flag)
When I run `thin_rmap -V`
Then it should pass with:
"""
0.1.5
"""
Scenario: print version (--version flag)
When I run `thin_rmap --version`
Then it should pass with:
"""
0.1.5
"""
Scenario: print help
When I run `thin_rmap --help`
Then it should pass with:
"""
Usage: thin_rmap [options] {device|file}
Options:
{-h|--help}
{-V|--version}
{--region <block range>}*
Where:
<block range> is of the form <begin>..<one-past-the-end>
for example 5..45 denotes blocks 5 to 44 inclusive, but not block 45
"""
Scenario: print help
When I run `thin_rmap -h`
Then it should pass with:
"""
Usage: thin_rmap [options] {device|file}
Options:
{-h|--help}
{-V|--version}
{--region <block range>}*
Where:
<block range> is of the form <begin>..<one-past-the-end>
for example 5..45 denotes blocks 5 to 44 inclusive, but not block 45
"""
Scenario: Unrecognised option should cause failure
When I run `thin_rmap --unleash-the-hedeghogs`
Then it should fail
@announce
Scenario: Valid region format should pass
Given valid metadata
When I run thin_rmap with --region 23..7890
Then it should pass
Scenario: Invalid region format should fail (comma instean of dots)
Given valid metadata
When I run thin_rmap with --region 23,7890
Then it should fail
Scenario: Invalid region format should fail (second number a word)
Given valid metadata
When I run thin_rmap with --region 23..six
Then it should fail
Scenario: Invalid region format should fail (first number a word)
Given valid metadata
When I run thin_rmap with --region four..7890
Then it should fail
Scenario: Invalid region format should fail (end is lower than begin)
Given valid metadata
When I run thin_rmap with --region 89..88
Then it should fail
Scenario: Invalid region format should fail (end is equal to begin)
Given valid metadata
When I run thin_rmap with --region 89..89
Then it should fail
Scenario: Invalid region format should fail (no begin)
Given valid metadata
When I run thin_rmap with --region ..89
Then it should fail
Scenario: Invalid region format should fail (no end)
Given valid metadata
When I run thin_rmap with --region 89..
Then it should fail
Scenario: Invalid region format should fail (no region at all)
Given valid metadata
When I run thin_rmap with --region
Then it should fail
Scenario: Invalid region format should fail (three dots)
Given valid metadata
When I run thin_rmap with --region 89...99
Then it should fail
Scenario: Multiple regions should pass
Given valid metadata
When I run thin_rmap with --region 1..23 --region 45..78
Then it should pass