2020pub fn {function_name}() -> i32 {{
2121 return internal_function();
2222}}
23- '''
2423
25- lib_rust_test_template = '''extern crate {crate_file};
24+ #[cfg(test)]
25+ mod tests {{
26+ use super::*;
2627
27- fn main() {{
28- println!("printing: {{}}", {crate_file}::{function_name}());
28+ #[test]
29+ fn test_function() {{
30+ assert_eq!({function_name}(), 0);
31+ }}
2932}}
3033'''
3134
3235
3336lib_rust_meson_template = '''project('{project_name}', 'rust',
34- version : '{version}',
35- default_options : ['warning_level=3'])
37+ version : '{version}', meson_version: '>=1.3.0',
38+ default_options : ['rust_std=2021', 'warning_level=3'])
39+
40+ rust = import('rust')
3641
3742shlib = static_library('{lib_name}', '{source_file}', install : true)
3843
39- test_exe = executable('{test_exe_name}', '{test_source_file}',
40- link_with : shlib)
41- test('{test_name}', test_exe)
44+ rust.test('{test_name}', shlib)
4245
4346# Make this library usable as a Meson subproject.
4447{ltoken}_dep = declare_dependency(
5457'''
5558
5659hello_rust_meson_template = '''project('{project_name}', 'rust',
57- version : '{version}',
58- default_options : ['warning_level=3'])
60+ version : '{version}', meson_version: '>=1.3.0',
61+ default_options : ['rust_std=2021', ' warning_level=3'])
5962
6063exe = executable('{exe_name}', '{source_name}',
6164 install : true)
@@ -70,7 +73,7 @@ class RustProject(FileImpl):
7073 exe_template = hello_rust_template
7174 exe_meson_template = hello_rust_meson_template
7275 lib_template = lib_rust_template
73- lib_test_template = lib_rust_test_template
76+ lib_test_template = None
7477 lib_meson_template = lib_rust_meson_template
7578
7679 def lib_kwargs (self ) -> T .Dict [str , str ]:
0 commit comments