mirror of
https://github.com/kmc7468/cs220.git
synced 2025-12-16 23:18:47 +00:00
add 8, 11, 12
This commit is contained in:
31
src/assignments/assignment11/mock_storage_grade.rs
Normal file
31
src/assignments/assignment11/mock_storage_grade.rs
Normal file
@@ -0,0 +1,31 @@
|
||||
//! Test cases for assignment11/mock_storage.rs
|
||||
|
||||
#[cfg(test)]
|
||||
mod test_mock_storage {
|
||||
use super::super::mock_storage::*;
|
||||
|
||||
#[test]
|
||||
fn test_mock_storage() {
|
||||
let mock_storage = MockStorage::new(100);
|
||||
|
||||
let uploader1 = FileUploader::new(&mock_storage);
|
||||
let uploader2 = FileUploader::new(&mock_storage);
|
||||
|
||||
let usage_analyzer = UsageAnalyzer::new(&mock_storage, 0.75);
|
||||
|
||||
assert!(uploader1.upload("file1.txt", 20).is_ok());
|
||||
assert!(usage_analyzer.is_usage_under_bound());
|
||||
|
||||
assert!(uploader2.upload("file2.txt", 30).is_ok());
|
||||
assert!(usage_analyzer.is_usage_under_bound());
|
||||
|
||||
assert!(uploader1.upload("file3.txt", 40).is_ok());
|
||||
assert!(!usage_analyzer.is_usage_under_bound());
|
||||
|
||||
assert_eq!(uploader2.upload("file4.txt", 50), Err(40));
|
||||
assert!(!usage_analyzer.is_usage_under_bound());
|
||||
|
||||
assert!(uploader1.upload("file3.txt", 10).is_ok());
|
||||
assert!(usage_analyzer.is_usage_under_bound());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user