Initial import of NLProg
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
import tempfile
|
||||
import unittest
|
||||
from pathlib import Path
|
||||
|
||||
from nlprog.project_profile import infer_project, init_project, load_project_profile
|
||||
|
||||
|
||||
class ProjectProfileTests(unittest.TestCase):
|
||||
def test_infers_python_project(self):
|
||||
with tempfile.TemporaryDirectory() as tmp:
|
||||
root = Path(tmp)
|
||||
(root / "pyproject.toml").write_text("[project]\nname='x'\n", encoding="utf-8")
|
||||
(root / "src").mkdir()
|
||||
profile = infer_project(root)
|
||||
self.assertIn("python", profile.project_types)
|
||||
self.assertIn("python -m compileall src", profile.verification_commands)
|
||||
|
||||
def test_init_project_writes_profile_files(self):
|
||||
with tempfile.TemporaryDirectory() as tmp:
|
||||
root = Path(tmp)
|
||||
(root / "pyproject.toml").write_text("[project]\nname='x'\n", encoding="utf-8")
|
||||
created = init_project(root)
|
||||
self.assertEqual(len(created), 3)
|
||||
profile = load_project_profile(root)
|
||||
self.assertIn("pyproject.toml", profile.important_files)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user