Fixed another time calc issue and added a Junit Concurrency run test
Этот коммит содержится в:
		
							родитель
							
								
									32feb1d1cc
								
							
						
					
					
						коммит
						10ac7158d1
					
				
					 3 изменённых файлов: 19 добавлений и 17 удалений
				
			
		
							
								
								
									
										5
									
								
								fmt.go
									
										
									
									
									
								
							
							
						
						
									
										5
									
								
								fmt.go
									
										
									
									
									
								
							|  | @ -242,8 +242,7 @@ func (f *basefmt) Node(n interface{}) { | |||
| 	case *gherkin.Scenario: | ||||
| 		f.owner = t | ||||
| 		feature := f.features[len(f.features)-1] | ||||
| 		feature.time = timeNowFunc() | ||||
| 		feature.Scenarios = append(feature.Scenarios, &scenario{Name: t.Name, time: feature.time}) | ||||
| 		feature.Scenarios = append(feature.Scenarios, &scenario{Name: t.Name, time: timeNowFunc()}) | ||||
| 	case *gherkin.ScenarioOutline: | ||||
| 		feature := f.features[len(f.features)-1] | ||||
| 		feature.Scenarios = append(feature.Scenarios, &scenario{OutlineName: t.Name}) | ||||
|  | @ -270,7 +269,7 @@ func (f *basefmt) Defined(*gherkin.Step, *StepDef) { | |||
| } | ||||
| 
 | ||||
| func (f *basefmt) Feature(ft *gherkin.Feature, p string, c []byte) { | ||||
| 	f.features = append(f.features, &feature{Path: p, Feature: ft}) | ||||
| 	f.features = append(f.features, &feature{Path: p, Feature: ft, time: timeNowFunc()}) | ||||
| } | ||||
| 
 | ||||
| func (f *basefmt) Passed(step *gherkin.Step, match *StepDef) { | ||||
|  |  | |||
|  | @ -5,6 +5,7 @@ import ( | |||
| 	"fmt" | ||||
| 	"io" | ||||
| 	"os" | ||||
| 	"sort" | ||||
| 	"sync" | ||||
| 	"time" | ||||
| 
 | ||||
|  | @ -125,6 +126,8 @@ func buildJUNITPackageSuite(suiteName string, startedAt time.Time, features []*f | |||
| 		Time:       timeNowFunc().Sub(startedAt).String(), | ||||
| 	} | ||||
| 
 | ||||
| 	sort.Sort(sortByOrderGiven(features)) | ||||
| 
 | ||||
| 	for idx, feat := range features { | ||||
| 		ts := junitTestSuite{ | ||||
| 			Name:      feat.Name, | ||||
|  |  | |||
							
								
								
									
										28
									
								
								run_test.go
									
										
									
									
									
								
							
							
						
						
									
										28
									
								
								run_test.go
									
										
									
									
									
								
							|  | @ -342,14 +342,6 @@ func TestSucceedWithJunitAndConcurrencyOption(t *testing.T) { | |||
|     <testcase name="Support of Docstrings" status="passed" time="0s"></testcase> | ||||
|     <testcase name="Support of Undefined, Pending and Skipped status" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
|   <testsuite name="event stream formatter" tests="3" skipped="0" failures="0" errors="0" time="0s"> | ||||
|     <testcase name="should fire only suite events without any scenario" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should process simple scenario" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should process outline scenario" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
|   <testsuite name="užkrauti savybes" tests="1" skipped="0" failures="0" errors="0" time="0s"> | ||||
|     <testcase name="savybių užkrovimas iš aplanko" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
|   <testsuite name="suite events" tests="6" skipped="0" failures="0" errors="0" time="0s"> | ||||
|     <testcase name="triggers before scenario event" status="passed" time="0s"></testcase> | ||||
|     <testcase name="triggers appropriate events for a single scenario" status="passed" time="0s"></testcase> | ||||
|  | @ -358,6 +350,14 @@ func TestSucceedWithJunitAndConcurrencyOption(t *testing.T) { | |||
|     <testcase name="should not trigger events on empty feature" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should not trigger events on empty scenarios" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
|   <testsuite name="event stream formatter" tests="3" skipped="0" failures="0" errors="0" time="0s"> | ||||
|     <testcase name="should fire only suite events without any scenario" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should process simple scenario" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should process outline scenario" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
|   <testsuite name="užkrauti savybes" tests="1" skipped="0" failures="0" errors="0" time="0s"> | ||||
|     <testcase name="savybių užkrovimas iš aplanko" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
|   <testsuite name="load features" tests="6" skipped="0" failures="0" errors="0" time="0s"> | ||||
|     <testcase name="load features within path" status="passed" time="0s"></testcase> | ||||
|     <testcase name="load a specific feature file" status="passed" time="0s"></testcase> | ||||
|  | @ -394,12 +394,6 @@ func TestSucceedWithJunitAndConcurrencyOption(t *testing.T) { | |||
|     <testcase name="should handle string argument followed by comma" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should handle arguments in the beggining or end of the step" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
|   <testsuite name="tag filters" tests="4" skipped="0" failures="0" errors="0" time="0s"> | ||||
|     <testcase name="should filter outline examples by tags" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should filter scenarios by X tag" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should filter scenarios by X tag not having Y" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should filter scenarios having Y and Z tags" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
|   <testsuite name="run outline" tests="6" skipped="0" failures="0" errors="0" time="0s"> | ||||
|     <testcase name="should run a normal outline" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should continue through examples on failure" status="passed" time="0s"></testcase> | ||||
|  | @ -408,6 +402,12 @@ func TestSucceedWithJunitAndConcurrencyOption(t *testing.T) { | |||
|     <testcase name="should translate step doc string argument #1" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should translate step doc string argument #2" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
|   <testsuite name="tag filters" tests="4" skipped="0" failures="0" errors="0" time="0s"> | ||||
|     <testcase name="should filter outline examples by tags" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should filter scenarios by X tag" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should filter scenarios by X tag not having Y" status="passed" time="0s"></testcase> | ||||
|     <testcase name="should filter scenarios having Y and Z tags" status="passed" time="0s"></testcase> | ||||
|   </testsuite> | ||||
| </testsuites>` | ||||
| 
 | ||||
| 	status := RunWithOptions("succeed", func(s *Suite) { SuiteContext(s) }, opt) | ||||
|  |  | |||
		Загрузка…
	
	Создание таблицы
		
		Сослаться в новой задаче
	
	 Fredrik Lönnblad
						Fredrik Lönnblad