94 строки
		
	
	
	
		
			3 КиБ
		
	
	
	
		
			Gherkin
		
	
	
	
	
	
			
		
		
	
	
			94 строки
		
	
	
	
		
			3 КиБ
		
	
	
	
		
			Gherkin
		
	
	
	
	
	
| Feature: undefined step snippets
 | |
|   In order to implement step definitions faster
 | |
|   As a test suite user
 | |
|   I need to be able to get undefined step snippets
 | |
| 
 | |
|   Scenario: should generate snippets
 | |
|     Given a feature "undefined.feature" file:
 | |
|       """
 | |
|       Feature: undefined steps
 | |
| 
 | |
|         Scenario: get version number from api
 | |
|           When I send "GET" request to "/version"
 | |
|           Then the response code should be 200
 | |
|       """
 | |
|     When I run feature suite
 | |
|     Then the following steps should be undefined:
 | |
|       """
 | |
|       I send "GET" request to "/version"
 | |
|       the response code should be 200
 | |
|       """
 | |
|     And the undefined step snippets should be:
 | |
|       """
 | |
|       func iSendRequestTo(arg1, arg2 string) error {
 | |
|               return godog.ErrPending
 | |
|       }
 | |
| 
 | |
|       func theResponseCodeShouldBe(arg1 int) error {
 | |
|               return godog.ErrPending
 | |
|       }
 | |
| 
 | |
|       func FeatureContext(s *godog.Suite) {
 | |
|               s.Step(`^I send "([^"]*)" request to "([^"]*)"$`, iSendRequestTo)
 | |
|               s.Step(`^the response code should be (\d+)$`, theResponseCodeShouldBe)
 | |
|       }
 | |
|       """
 | |
| 
 | |
|   Scenario: should generate snippets with more arguments
 | |
|     Given a feature "undefined.feature" file:
 | |
|       """
 | |
|       Feature: undefined steps
 | |
| 
 | |
|         Scenario: get version number from api
 | |
|           When I send "GET" request to "/version" with:
 | |
|             | col1 | val1 |
 | |
|             | col2 | val2 |
 | |
|           Then the response code should be 200 and header "X-Powered-By" should be "godog"
 | |
|       """
 | |
|     When I run feature suite
 | |
|     Then the undefined step snippets should be:
 | |
|       """
 | |
|       func iSendRequestToWith(arg1, arg2 string, arg3 *gherkin.DataTable) error {
 | |
|               return godog.ErrPending
 | |
|       }
 | |
| 
 | |
|       func theResponseCodeShouldBeAndHeaderShouldBe(arg1 int, arg2, arg3 string) error {
 | |
|               return godog.ErrPending
 | |
|       }
 | |
| 
 | |
|       func FeatureContext(s *godog.Suite) {
 | |
|               s.Step(`^I send "([^"]*)" request to "([^"]*)" with:$`, iSendRequestToWith)
 | |
|               s.Step(`^the response code should be (\d+) and header "([^"]*)" should be "([^"]*)"$`, theResponseCodeShouldBeAndHeaderShouldBe)
 | |
|       }
 | |
|       """
 | |
| 
 | |
|   Scenario: should handle escaped symbols
 | |
|     Given a feature "undefined.feature" file:
 | |
|       """
 | |
|       Feature: undefined steps
 | |
| 
 | |
|         Scenario: get version number from api
 | |
|           When I pull from github.com
 | |
|           Then the project should be there
 | |
|       """
 | |
|     When I run feature suite
 | |
|     Then the following steps should be undefined:
 | |
|       """
 | |
|       I pull from github.com
 | |
|       the project should be there
 | |
|       """
 | |
|     And the undefined step snippets should be:
 | |
|       """
 | |
|       func iPullFromGithubcom() error {
 | |
|               return godog.ErrPending
 | |
|       }
 | |
| 
 | |
|       func theProjectShouldBeThere() error {
 | |
|               return godog.ErrPending
 | |
|       }
 | |
| 
 | |
|       func FeatureContext(s *godog.Suite) {
 | |
|               s.Step(`^I pull from github\.com$`, iPullFromGithubcom)
 | |
|               s.Step(`^the project should be there$`, theProjectShouldBeThere)
 | |
|       }
 | |
|       """
 | 
