MCPcopy Create free account
hub / github.com/Autoparallel/learner / test_basic_paper_workflow

Function test_basic_paper_workflow

crates/learnerd/tests/cli.rs:57–123  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

55#[tokio::test]
56#[serial]
57async fn test_basic_paper_workflow() {
58 let (dir, db_path) = temp_db();
59
60 // Initialize database
61 learner().arg("init").arg("--path").arg(&db_path).arg("--accept-defaults").assert().success();
62
63 // Add a paper
64 learner()
65 .arg("add")
66 .arg("2301.07041")
67 .arg("--path")
68 .arg(&db_path)
69 .arg("--accept-defaults")
70 .assert()
71 .success()
72 .stdout(predicate::str::contains("Found paper"))
73 .stdout(predicate::str::contains("Verifiable Fully Homomorphic"));
74
75 // Try adding same paper again to test duplicate handling
76 learner()
77 .arg("add")
78 .arg("2301.07041")
79 .arg("--path")
80 .arg(&db_path)
81 .arg("--accept-defaults")
82 .assert()
83 .success()
84 .stdout(predicate::str::contains("already in your database"));
85
86 // Get the paper
87 learner()
88 .arg("get")
89 .arg("arxiv")
90 .arg("2301.07041")
91 .arg("--path")
92 .arg(&db_path)
93 .arg("--accept-defaults")
94 .assert()
95 .success()
96 .stdout(predicate::str::contains("Paper details"))
97 .stdout(predicate::str::contains("Verifiable Fully Homomorphic"));
98
99 // Search for the paper
100 learner()
101 .arg("search")
102 .arg("Homomorphic")
103 .arg("--path")
104 .arg(&db_path)
105 .arg("--accept-defaults")
106 .assert()
107 .success()
108 .stdout(predicate::str::contains("Found"))
109 .stdout(predicate::str::contains("Verifiable Fully Homomorphic"));
110
111 // Search for nonexistent paper
112 learner()
113 .arg("search")
114 .arg("ThisPaperDoesNotExist123")

Callers

nothing calls this directly

Calls 2

temp_dbFunction · 0.85
learnerFunction · 0.85

Tested by

no test coverage detected