MCPcopy Create free account
hub / github.com/atomicdotdev/atomic / test_extract_interface

Function test_extract_interface

atomic-semantic/src/parsers/java.rs:790–813  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

788
789 #[test]
790 fn test_extract_interface() {
791 let mut parser = JavaParser::new();
792 let source = r#"
793public interface Repository<T> {
794 T find(String id);
795 void save(T entity);
796 void delete(String id);
797}
798"#;
799 let entities = parser.extract(source, "Repository.java");
800
801 let repo = entities
802 .iter()
803 .find(|e| e.name == "Repository" && e.kind == EntityKind::Interface);
804 assert!(repo.is_some(), "Should find Repository interface");
805 assert!(repo.unwrap().exported);
806
807 // Should find interface methods
808 let find = entities.iter().find(|e| e.name == "find");
809 assert!(find.is_some(), "Should find find() method in interface");
810
811 let save = entities.iter().find(|e| e.name == "save");
812 assert!(save.is_some(), "Should find save() method in interface");
813 }
814
815 #[test]
816 fn test_extract_enum() {

Callers

nothing calls this directly

Calls 2

extractMethod · 0.45
iterMethod · 0.45

Tested by

no test coverage detected