158 lines
4.7 KiB
Rust
158 lines
4.7 KiB
Rust
use super::{
|
|
comment_embedded_item_conversion, EmbeddedCommentSpace, EmbeddedItem as _,
|
|
COMMENT_ID_MAPPING_KEY, ENTITY_ID_MAPPING_KEY, WINDOW_ID_MAPPING_KEY,
|
|
};
|
|
use crate::code_review::comments::CommentId;
|
|
use serde_yaml::{Mapping, Value};
|
|
use galaxy_editor::content::markdown::MarkdownStyle;
|
|
use galaxyui::{EntityId, WindowId};
|
|
|
|
#[test]
|
|
fn test_comment_embedded_item_conversion_valid_input() {
|
|
let comment_id = CommentId::new();
|
|
let entity_id = EntityId::from_usize(123);
|
|
let window_id = WindowId::from_usize(456);
|
|
|
|
let mut mapping = Mapping::new();
|
|
mapping.insert(
|
|
Value::String(COMMENT_ID_MAPPING_KEY.to_string()),
|
|
Value::String(comment_id.to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(ENTITY_ID_MAPPING_KEY.to_string()),
|
|
Value::String(entity_id.to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(WINDOW_ID_MAPPING_KEY.to_string()),
|
|
Value::String(window_id.to_string()),
|
|
);
|
|
|
|
let result = comment_embedded_item_conversion(mapping);
|
|
assert!(result.is_some());
|
|
}
|
|
|
|
#[test]
|
|
fn test_comment_embedded_item_conversion_roundtrip() {
|
|
let comment_id = CommentId::new();
|
|
let entity_id = EntityId::from_usize(789);
|
|
let window_id = WindowId::from_usize(101);
|
|
|
|
let space = EmbeddedCommentSpace::new(comment_id, entity_id, window_id);
|
|
let mapping = space.to_mapping(MarkdownStyle::Internal);
|
|
|
|
let result = comment_embedded_item_conversion(mapping);
|
|
assert!(result.is_some());
|
|
}
|
|
|
|
#[test]
|
|
fn test_comment_embedded_item_conversion_missing_comment_id() {
|
|
let mut mapping = Mapping::new();
|
|
mapping.insert(
|
|
Value::String(ENTITY_ID_MAPPING_KEY.to_string()),
|
|
Value::String("123".to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(WINDOW_ID_MAPPING_KEY.to_string()),
|
|
Value::String("456".to_string()),
|
|
);
|
|
|
|
let result = comment_embedded_item_conversion(mapping);
|
|
assert!(result.is_none());
|
|
}
|
|
|
|
#[test]
|
|
fn test_comment_embedded_item_conversion_missing_entity_id() {
|
|
let comment_id = CommentId::new();
|
|
let mut mapping = Mapping::new();
|
|
mapping.insert(
|
|
Value::String(COMMENT_ID_MAPPING_KEY.to_string()),
|
|
Value::String(comment_id.to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(WINDOW_ID_MAPPING_KEY.to_string()),
|
|
Value::String("456".to_string()),
|
|
);
|
|
|
|
let result = comment_embedded_item_conversion(mapping);
|
|
assert!(result.is_none());
|
|
}
|
|
|
|
#[test]
|
|
fn test_comment_embedded_item_conversion_missing_window_id() {
|
|
let comment_id = CommentId::new();
|
|
let mut mapping = Mapping::new();
|
|
mapping.insert(
|
|
Value::String(COMMENT_ID_MAPPING_KEY.to_string()),
|
|
Value::String(comment_id.to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(ENTITY_ID_MAPPING_KEY.to_string()),
|
|
Value::String("123".to_string()),
|
|
);
|
|
|
|
let result = comment_embedded_item_conversion(mapping);
|
|
assert!(result.is_none());
|
|
}
|
|
|
|
#[test]
|
|
fn test_comment_embedded_item_conversion_invalid_uuid() {
|
|
let mut mapping = Mapping::new();
|
|
mapping.insert(
|
|
Value::String(COMMENT_ID_MAPPING_KEY.to_string()),
|
|
Value::String("not-a-valid-uuid".to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(ENTITY_ID_MAPPING_KEY.to_string()),
|
|
Value::String("123".to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(WINDOW_ID_MAPPING_KEY.to_string()),
|
|
Value::String("456".to_string()),
|
|
);
|
|
|
|
let result = comment_embedded_item_conversion(mapping);
|
|
assert!(result.is_none());
|
|
}
|
|
|
|
#[test]
|
|
fn test_comment_embedded_item_conversion_invalid_entity_id() {
|
|
let comment_id = CommentId::new();
|
|
let mut mapping = Mapping::new();
|
|
mapping.insert(
|
|
Value::String(COMMENT_ID_MAPPING_KEY.to_string()),
|
|
Value::String(comment_id.to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(ENTITY_ID_MAPPING_KEY.to_string()),
|
|
Value::String("not-a-number".to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(WINDOW_ID_MAPPING_KEY.to_string()),
|
|
Value::String("456".to_string()),
|
|
);
|
|
|
|
let result = comment_embedded_item_conversion(mapping);
|
|
assert!(result.is_none());
|
|
}
|
|
|
|
#[test]
|
|
fn test_comment_embedded_item_conversion_invalid_window_id() {
|
|
let comment_id = CommentId::new();
|
|
let mut mapping = Mapping::new();
|
|
mapping.insert(
|
|
Value::String(COMMENT_ID_MAPPING_KEY.to_string()),
|
|
Value::String(comment_id.to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(ENTITY_ID_MAPPING_KEY.to_string()),
|
|
Value::String("123".to_string()),
|
|
);
|
|
mapping.insert(
|
|
Value::String(WINDOW_ID_MAPPING_KEY.to_string()),
|
|
Value::String("not-a-number".to_string()),
|
|
);
|
|
|
|
let result = comment_embedded_item_conversion(mapping);
|
|
assert!(result.is_none());
|
|
}
|