| 340 | |
| 341 | #[test] |
| 342 | fn busrange_cmp() { |
| 343 | let range = BusRange { base: 0x10, len: 2 }; |
| 344 | assert_eq!(range, BusRange { base: 0x10, len: 3 }); |
| 345 | assert_eq!(range, BusRange { base: 0x10, len: 2 }); |
| 346 | |
| 347 | assert!(range < BusRange { base: 0x12, len: 1 }); |
| 348 | assert!(range < BusRange { base: 0x12, len: 3 }); |
| 349 | |
| 350 | assert_eq!(range, range.clone()); |
| 351 | |
| 352 | let bus = Bus::new(); |
| 353 | let mut data = [1, 2, 3, 4]; |
| 354 | let device = Arc::new(DummyDevice); |
| 355 | bus.insert(device.clone(), 0x10, 0x10).unwrap(); |
| 356 | bus.write(0x10, &data).unwrap(); |
| 357 | bus.read(0x10, &mut data).unwrap(); |
| 358 | assert_eq!(data, [1, 2, 3, 4]); |
| 359 | } |
| 360 | |
| 361 | #[test] |
| 362 | fn bus_range_overlap() { |