Move transform functions to KCL (#7239)
Signed-off-by: Nick Cameron <nrc@ncameron.org>
This commit is contained in:
@ -744,12 +744,12 @@ impl ArgData {
|
||||
} = &attr.inner
|
||||
{
|
||||
for p in props {
|
||||
if p.key.name == "include_in_snippet" {
|
||||
if p.key.name == "includeInSnippet" {
|
||||
if let Some(b) = p.value.literal_bool() {
|
||||
result.override_in_snippet = Some(b);
|
||||
} else {
|
||||
panic!(
|
||||
"Invalid value for `include_in_snippet`, expected bool literal, found {:?}",
|
||||
"Invalid value for `includeInSnippet`, expected bool literal, found {:?}",
|
||||
p.value
|
||||
);
|
||||
}
|
||||
|
@ -1160,29 +1160,32 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn get_autocomplete_snippet_scale() {
|
||||
let scale_fn: Box<dyn StdLibFn> = Box::new(crate::std::transform::Scale);
|
||||
let snippet = scale_fn.to_autocomplete_snippet().unwrap();
|
||||
assert_eq!(snippet, r#"scale(${0:%}, x = ${1:3.14}, y = ${2:3.14}, z = ${3:3.14})"#);
|
||||
let data = kcl_doc::walk_prelude();
|
||||
let DocData::Fn(data) = data.find_by_name("scale").unwrap() else {
|
||||
panic!();
|
||||
};
|
||||
let snippet = data.to_autocomplete_snippet();
|
||||
assert_eq!(snippet, r#"scale(x = ${0:10}, y = ${1:10}, z = ${2:10})"#);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn get_autocomplete_snippet_translate() {
|
||||
let translate_fn: Box<dyn StdLibFn> = Box::new(crate::std::transform::Translate);
|
||||
let snippet = translate_fn.to_autocomplete_snippet().unwrap();
|
||||
assert_eq!(
|
||||
snippet,
|
||||
r#"translate(${0:%}, x = ${1:3.14}, y = ${2:3.14}, z = ${3:3.14})"#
|
||||
);
|
||||
let data = kcl_doc::walk_prelude();
|
||||
let DocData::Fn(data) = data.find_by_name("translate").unwrap() else {
|
||||
panic!();
|
||||
};
|
||||
let snippet = data.to_autocomplete_snippet();
|
||||
assert_eq!(snippet, r#"translate(x = ${0:10}, y = ${1:10}, z = ${2:10})"#);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn get_autocomplete_snippet_rotate() {
|
||||
let rotate_fn: Box<dyn StdLibFn> = Box::new(crate::std::transform::Rotate);
|
||||
let snippet = rotate_fn.to_autocomplete_snippet().unwrap();
|
||||
assert_eq!(
|
||||
snippet,
|
||||
r#"rotate(${0:%}, roll = ${1:3.14}, pitch = ${2:3.14}, yaw = ${3:3.14})"#
|
||||
);
|
||||
let data = kcl_doc::walk_prelude();
|
||||
let DocData::Fn(data) = data.find_by_name("rotate").unwrap() else {
|
||||
panic!();
|
||||
};
|
||||
let snippet = data.to_autocomplete_snippet();
|
||||
assert_eq!(snippet, r#"rotate(roll = ${0:10}, pitch = ${1:10}, yaw = ${2:10})"#);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
Reference in New Issue
Block a user