1
1
#![ no_std]
2
+ #![ feature( nll) ]
2
3
3
4
use core:: fmt;
4
5
use core:: fmt:: Write ;
@@ -120,12 +121,10 @@ mod tests {
120
121
#[ test]
121
122
fn write_a_letter ( ) {
122
123
let mut mock_memory = [ 0u8 ; ROWS * COLS * 2 ] ;
123
- {
124
- let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
124
+ let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
125
125
126
- vga. write_str ( "a" ) . unwrap ( ) ;
127
- vga. flush ( ) ;
128
- }
126
+ vga. write_str ( "a" ) . unwrap ( ) ;
127
+ vga. flush ( ) ;
129
128
130
129
assert_eq ! ( mock_memory[ 0 ] , b'a' ) ;
131
130
assert_eq ! ( mock_memory[ 1 ] , 0x02 ) ;
@@ -134,13 +133,11 @@ mod tests {
134
133
#[ test]
135
134
fn write_a_word ( ) {
136
135
let mut mock_memory = [ 0u8 ; ROWS * COLS * 2 ] ;
137
- {
138
- let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
136
+ let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
139
137
140
- let word = "word" ;
141
- vga. write_str ( word) . unwrap ( ) ;
142
- vga. flush ( ) ;
143
- }
138
+ let word = "word" ;
139
+ vga. write_str ( word) . unwrap ( ) ;
140
+ vga. flush ( ) ;
144
141
145
142
assert_eq ! ( mock_memory[ 0 ] , b'w' ) ;
146
143
assert_eq ! ( mock_memory[ 1 ] , 0x02 ) ;
@@ -155,13 +152,11 @@ mod tests {
155
152
#[ test]
156
153
fn write_multiple_words ( ) {
157
154
let mut mock_memory = [ 0u8 ; ROWS * COLS * 2 ] ;
158
- {
159
- let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
155
+ let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
160
156
161
- vga. write_str ( "hello " ) . unwrap ( ) ;
162
- vga. write_str ( "world" ) . unwrap ( ) ;
163
- vga. flush ( ) ;
164
- }
157
+ vga. write_str ( "hello " ) . unwrap ( ) ;
158
+ vga. write_str ( "world" ) . unwrap ( ) ;
159
+ vga. flush ( ) ;
165
160
166
161
assert_eq ! ( mock_memory[ 0 ] , b'h' ) ;
167
162
assert_eq ! ( mock_memory[ 1 ] , 0x02 ) ;
@@ -190,12 +185,10 @@ mod tests {
190
185
#[ test]
191
186
fn write_newline ( ) {
192
187
let mut mock_memory = [ 0u8 ; ROWS * COLS * 2 ] ;
193
- {
194
- let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
188
+ let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
195
189
196
- vga. write_str ( "hello\n world\n !" ) . unwrap ( ) ;
197
- vga. flush ( ) ;
198
- }
190
+ vga. write_str ( "hello\n world\n !" ) . unwrap ( ) ;
191
+ vga. flush ( ) ;
199
192
200
193
assert_eq ! ( mock_memory[ 0 ] , b'h' ) ;
201
194
assert_eq ! ( mock_memory[ 1 ] , 0x02 ) ;
@@ -224,17 +217,15 @@ mod tests {
224
217
#[ test]
225
218
fn write_scroll ( ) {
226
219
let mut mock_memory = [ 0u8 ; ROWS * COLS * 2 ] ;
227
- {
228
- let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
220
+ let mut vga = Vga :: new ( & mut mock_memory[ ..] ) ;
229
221
230
- for b in "abcdefghijklmnopqrstuvwxyz" . bytes ( ) {
231
- vga. write_byte ( b) ;
232
- vga. write_byte ( '\n' as u8 ) ;
233
- }
234
-
235
- vga. flush ( ) ;
222
+ for b in "abcdefghijklmnopqrstuvwxyz" . bytes ( ) {
223
+ vga. write_byte ( b) ;
224
+ vga. write_byte ( '\n' as u8 ) ;
236
225
}
237
226
227
+ vga. flush ( ) ;
228
+
238
229
assert_eq ! ( mock_memory[ 0 ] , b'c' ) ;
239
230
240
231
for cb in 0 ..COLS {
0 commit comments