@@ -45,27 +45,27 @@ FOSSIL_TEARDOWN(c_input_suite) {
45
45
46
46
FOSSIL_TEST_CASE (c_test_io_gets_from_stream ) {
47
47
const char * input_data = "test input\n" ;
48
- FILE * input_stream = tmpfile ();
49
- fwrite (input_data , 1 , strlen (input_data ), input_stream );
50
- rewind (input_stream );
48
+ fossil_fstream_t input_stream = { tmpfile (), "tempfile" } ;
49
+ fwrite (input_data , 1 , strlen (input_data ), input_stream . file );
50
+ rewind (input_stream . file );
51
51
52
52
char buf [20 ];
53
- char * result = fossil_io_gets_from_stream (buf , sizeof (buf ), input_stream );
53
+ char * result = fossil_io_gets_from_stream (buf , sizeof (buf ), & input_stream );
54
54
ASSUME_ITS_EQUAL_CSTR ("test input" , buf );
55
55
ASSUME_NOT_CNULL (result );
56
- fclose (input_stream );
56
+ fclose (input_stream . file );
57
57
}
58
58
59
59
FOSSIL_TEST_CASE (c_test_io_gets_from_stream_no_offensive ) {
60
60
char input [] = "This is a clean sentence.\n" ;
61
61
char expected [] = "This is a clean sentence." ;
62
62
char buffer [256 ];
63
63
64
- FILE * stream = tmpfile ();
65
- fwrite (input , 1 , strlen (input ), stream );
66
- rewind (stream );
67
- char * result = fossil_io_gets_from_stream (buffer , sizeof (buffer ), stream );
68
- fclose (stream );
64
+ fossil_fstream_t stream = { tmpfile (), "tempfile" } ;
65
+ fwrite (input , 1 , strlen (input ), stream . file );
66
+ rewind (stream . file );
67
+ char * result = fossil_io_gets_from_stream (buffer , sizeof (buffer ), & stream );
68
+ fclose (stream . file );
69
69
70
70
ASSUME_ITS_EQUAL_CSTR (expected , result );
71
71
}
@@ -75,79 +75,79 @@ FOSSIL_TEST_CASE(c_test_io_gets_from_stream_with_punctuation) {
75
75
char expected [] = "This is a test with punctuation, and special characters!" ;
76
76
char buffer [256 ];
77
77
78
- FILE * stream = tmpfile ();
79
- fwrite (input , 1 , strlen (input ), stream );
80
- rewind (stream );
81
- char * result = fossil_io_gets_from_stream (buffer , sizeof (buffer ), stream );
82
- fclose (stream );
78
+ fossil_fstream_t stream = { tmpfile (), "tempfile" } ;
79
+ fwrite (input , 1 , strlen (input ), stream . file );
80
+ rewind (stream . file );
81
+ char * result = fossil_io_gets_from_stream (buffer , sizeof (buffer ), & stream );
82
+ fclose (stream . file );
83
83
84
84
ASSUME_ITS_EQUAL_CSTR (expected , result );
85
85
}
86
86
87
87
FOSSIL_TEST_CASE (c_test_io_gets_from_stream_empty_input ) {
88
88
const char * input_data = "\n" ;
89
- FILE * input_stream = tmpfile ();
90
- fwrite (input_data , 1 , strlen (input_data ), input_stream );
91
- rewind (input_stream );
89
+ fossil_fstream_t input_stream = { tmpfile (), "tempfile" } ;
90
+ fwrite (input_data , 1 , strlen (input_data ), input_stream . file );
91
+ rewind (input_stream . file );
92
92
93
93
char buf [20 ];
94
- char * result = fossil_io_gets_from_stream (buf , sizeof (buf ), input_stream );
94
+ char * result = fossil_io_gets_from_stream (buf , sizeof (buf ), & input_stream );
95
95
ASSUME_ITS_EQUAL_CSTR ("" , buf );
96
96
ASSUME_NOT_CNULL (result );
97
- fclose (input_stream );
97
+ fclose (input_stream . file );
98
98
}
99
99
100
100
FOSSIL_TEST_CASE (c_test_io_gets_from_stream_only_whitespace ) {
101
101
const char * input_data = " \n" ;
102
- FILE * input_stream = tmpfile ();
103
- fwrite (input_data , 1 , strlen (input_data ), input_stream );
104
- rewind (input_stream );
102
+ fossil_fstream_t input_stream = { tmpfile (), "tempfile" } ;
103
+ fwrite (input_data , 1 , strlen (input_data ), input_stream . file );
104
+ rewind (input_stream . file );
105
105
106
106
char buf [20 ];
107
- char * result = fossil_io_gets_from_stream (buf , sizeof (buf ), input_stream );
107
+ char * result = fossil_io_gets_from_stream (buf , sizeof (buf ), & input_stream );
108
108
ASSUME_ITS_EQUAL_CSTR ("" , buf );
109
109
ASSUME_NOT_CNULL (result );
110
- fclose (input_stream );
110
+ fclose (input_stream . file );
111
111
}
112
112
113
113
FOSSIL_TEST_CASE (c_test_io_gets_from_stream_long_input ) {
114
114
const char * input_data = "This is a very long input string that exceeds the buffer size\n" ;
115
- FILE * input_stream = tmpfile ();
116
- fwrite (input_data , 1 , strlen (input_data ), input_stream );
117
- rewind (input_stream );
115
+ fossil_fstream_t input_stream = { tmpfile (), "tempfile" } ;
116
+ fwrite (input_data , 1 , strlen (input_data ), input_stream . file );
117
+ rewind (input_stream . file );
118
118
119
119
char buf [20 ];
120
- char * result = fossil_io_gets_from_stream (buf , sizeof (buf ), input_stream );
120
+ char * result = fossil_io_gets_from_stream (buf , sizeof (buf ), & input_stream );
121
121
ASSUME_ITS_EQUAL_CSTR ("This is a very long" , buf );
122
122
ASSUME_NOT_CNULL (result );
123
- fclose (input_stream );
123
+ fclose (input_stream . file );
124
124
}
125
125
126
126
FOSSIL_TEST_CASE (c_test_io_gets_from_stream_ex ) {
127
127
const char * input_data = "test input\n" ;
128
- FILE * input_stream = tmpfile ();
129
- fwrite (input_data , 1 , strlen (input_data ), input_stream );
130
- rewind (input_stream );
128
+ fossil_fstream_t input_stream = { tmpfile (), "tempfile" } ;
129
+ fwrite (input_data , 1 , strlen (input_data ), input_stream . file );
130
+ rewind (input_stream . file );
131
131
132
132
char buf [20 ];
133
133
int error_code = 0 ;
134
- char * result = fossil_io_gets_from_stream_ex (buf , sizeof (buf ), input_stream , & error_code );
134
+ char * result = fossil_io_gets_from_stream_ex (buf , sizeof (buf ), & input_stream , & error_code );
135
135
ASSUME_ITS_EQUAL_CSTR ("test input" , buf );
136
136
ASSUME_NOT_CNULL (result );
137
- fclose (input_stream );
137
+ fclose (input_stream . file );
138
138
}
139
139
140
140
FOSSIL_TEST_CASE (c_test_io_gets_utf8 ) {
141
141
const char * input_data = "test input\n" ;
142
- FILE * input_stream = tmpfile ();
143
- fwrite (input_data , 1 , strlen (input_data ), input_stream );
144
- rewind (input_stream );
142
+ fossil_fstream_t input_stream = { tmpfile (), "tempfile" } ;
143
+ fwrite (input_data , 1 , strlen (input_data ), input_stream . file );
144
+ rewind (input_stream . file );
145
145
146
146
char buf [20 ];
147
- char * result = fossil_io_gets_utf8 (buf , sizeof (buf ), input_stream );
147
+ char * result = fossil_io_gets_utf8 (buf , sizeof (buf ), & input_stream );
148
148
ASSUME_ITS_EQUAL_CSTR ("test input" , buf );
149
149
ASSUME_NOT_CNULL (result );
150
- fclose (input_stream );
150
+ fclose (input_stream . file );
151
151
}
152
152
153
153
FOSSIL_TEST_CASE (c_test_io_validate_is_int_valid ) {
@@ -185,7 +185,7 @@ FOSSIL_TEST_CASE(c_test_io_validate_is_alnum_invalid) {
185
185
}
186
186
187
187
FOSSIL_TEST_CASE (c_test_io_validate_is_email_valid ) {
188
- const char * input = "test@example .com" ;
188
+ const char * input = "test@gmail .com" ; // now checks for valid email providers like gmail.com
189
189
int result = fossil_io_validate_is_email (input );
190
190
ASSUME_ITS_TRUE (result );
191
191
}
@@ -210,13 +210,13 @@ FOSSIL_TEST_CASE(c_test_io_validate_is_length_invalid) {
210
210
211
211
FOSSIL_TEST_CASE (c_test_io_getc ) {
212
212
const char * input_data = "test input\n" ;
213
- FILE * input_stream = tmpfile ();
214
- fwrite (input_data , 1 , strlen (input_data ), input_stream );
215
- rewind (input_stream );
213
+ fossil_fstream_t input_stream = { tmpfile (), "tempfile" } ;
214
+ fwrite (input_data , 1 , strlen (input_data ), input_stream . file );
215
+ rewind (input_stream . file );
216
216
217
- int ch = fossil_io_getc (input_stream );
217
+ int ch = fossil_io_getc (& input_stream );
218
218
ASSUME_ITS_EQUAL_I32 ('t' , ch );
219
- fclose (input_stream );
219
+ fclose (input_stream . file );
220
220
}
221
221
222
222
// * * * * * * * * * * * * * * * * * * * * * * * *
0 commit comments