6
6
"testing"
7
7
8
8
"github.com/stretchr/testify/assert"
9
+ "github.com/stretchr/testify/require"
9
10
)
10
11
11
12
func TestRunnerWriter (t * testing.T ) {
@@ -93,7 +94,7 @@ func TestRunnerWriter(t *testing.T) {
93
94
}
94
95
95
96
func TestGetRunnerWriters (t * testing.T ) {
96
- stdout , stderr := GetRunnerWriters ()
97
+ stdout , stderr := GetRunnerWriters ("javascript" )
97
98
98
99
assert .NotNil (t , stdout , "GetRunnerWriters() stdout should not be nil" )
99
100
assert .NotNil (t , stderr , "GetRunnerWriters() stderr should not be nil" )
@@ -103,3 +104,24 @@ func TestGetRunnerWriters(t *testing.T) {
103
104
var _ io.Writer = stdout
104
105
var _ io.Writer = stderr
105
106
}
107
+
108
+ func TestGetRunnerWritersWithDifferentTypes (t * testing.T ) {
109
+ GetRunnerWriters ("javascript" )
110
+ GetRunnerWriters ("python" )
111
+
112
+ var jsBuf , pyBuf bytes.Buffer
113
+ jsWriter := NewRunnerWriter (& jsBuf , "[runner-javascript] " , "DEBUG" , ColorCyan )
114
+ pyWriter := NewRunnerWriter (& pyBuf , "[runner-python] " , "DEBUG" , ColorCyan )
115
+
116
+ _ , err := jsWriter .Write ([]byte ("test message" ))
117
+ require .NoError (t , err )
118
+ _ , err = pyWriter .Write ([]byte ("test message" ))
119
+ require .NoError (t , err )
120
+
121
+ jsOutput := jsBuf .String ()
122
+ pyOutput := pyBuf .String ()
123
+
124
+ assert .Contains (t , jsOutput , "[runner-javascript]" , "JavaScript runner should have correct prefix" )
125
+ assert .Contains (t , pyOutput , "[runner-python]" , "Python runner should have correct prefix" )
126
+ assert .NotEqual (t , jsOutput , pyOutput , "Different runner types should have different output" )
127
+ }
0 commit comments