Skip to content

Commit

Permalink
introduce more tests around the heights
Browse files Browse the repository at this point in the history
  • Loading branch information
rgbkrk committed May 25, 2024
1 parent 8dc26d8 commit d1a9e1b
Showing 1 changed file with 60 additions and 10 deletions.
70 changes: 60 additions & 10 deletions crates/editor/src/display_map/block_map.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1234,7 +1234,7 @@ mod tests {

#[gpui::test]
fn test_replace_with_heights(cx: &mut gpui::TestAppContext) {
cx.update(|cx| init_test(cx));
let _update = cx.update(|cx| init_test(cx));

let text = "aaa\nbbb\nccc\nddd";

Expand Down Expand Up @@ -1273,18 +1273,68 @@ mod tests {
},
]);

let snapshot = block_map.read(wraps_snapshot.clone(), Default::default());
assert_eq!(snapshot.text(), "aaa\n\n\n\nbbb\nccc\nddd\n\n\n");
{
let snapshot = block_map.read(wraps_snapshot.clone(), Default::default());
assert_eq!(snapshot.text(), "aaa\n\n\n\nbbb\nccc\nddd\n\n\n");

let mut block_map_writer = block_map.write(wraps_snapshot.clone(), Default::default());

let mut hash_map = HashMap::default();
let render: RenderBlock = Box::new(|_| div().into_any());
hash_map.insert(block_ids[0], (2_u8, render));
block_map_writer.replace(hash_map);
let snapshot = block_map.read(wraps_snapshot.clone(), Default::default());
assert_eq!(snapshot.text(), "aaa\n\n\n\n\nbbb\nccc\nddd\n\n\n");
}

let mut block_map_writer = block_map.write(wraps_snapshot.clone(), Default::default());
{
let mut block_map_writer = block_map.write(wraps_snapshot.clone(), Default::default());

let mut hash_map = HashMap::default();
let render: RenderBlock = Box::new(|_| div().into_any());
hash_map.insert(block_ids[0], (1_u8, render));
block_map_writer.replace(hash_map);

let snapshot = block_map.read(wraps_snapshot.clone(), Default::default());
assert_eq!(snapshot.text(), "aaa\n\n\n\nbbb\nccc\nddd\n\n\n");
}

{
let mut block_map_writer = block_map.write(wraps_snapshot.clone(), Default::default());

let mut hash_map = HashMap::default();
let render: RenderBlock = Box::new(|_| div().into_any());
hash_map.insert(block_ids[0], (2_u8, render));
block_map_writer.replace(hash_map);
let mut hash_map = HashMap::default();
let render: RenderBlock = Box::new(|_| div().into_any());
hash_map.insert(block_ids[0], (0_u8, render));
block_map_writer.replace(hash_map);

let snapshot = block_map.read(wraps_snapshot.clone(), Default::default());
assert_eq!(snapshot.text(), "aaa\n\n\n\n\nbbb\nccc\nddd\n\n\n");
let snapshot = block_map.read(wraps_snapshot.clone(), Default::default());
assert_eq!(snapshot.text(), "aaa\n\n\nbbb\nccc\nddd\n\n\n");
}

{
let mut block_map_writer = block_map.write(wraps_snapshot.clone(), Default::default());

let mut hash_map = HashMap::default();
let render: RenderBlock = Box::new(|_| div().into_any());
hash_map.insert(block_ids[0], (3_u8, render));
block_map_writer.replace(hash_map);

let snapshot = block_map.read(wraps_snapshot.clone(), Default::default());
assert_eq!(snapshot.text(), "aaa\n\n\n\n\n\nbbb\nccc\nddd\n\n\n");
}

{
let mut block_map_writer = block_map.write(wraps_snapshot.clone(), Default::default());

let mut hash_map = HashMap::default();
let render: RenderBlock = Box::new(|_| div().into_any());
hash_map.insert(block_ids[0], (3_u8, render));
block_map_writer.replace(hash_map);

let snapshot = block_map.read(wraps_snapshot.clone(), Default::default());
// Same height as before, should remain the same
assert_eq!(snapshot.text(), "aaa\n\n\n\n\n\nbbb\nccc\nddd\n\n\n");
}
}

#[gpui::test]
Expand Down

0 comments on commit d1a9e1b

Please # to comment.