mirror of
				https://github.com/explosion/spaCy.git
				synced 2025-10-31 07:57:35 +03:00 
			
		
		
		
	* fix processing of "auto" in walk_directory * add check for None * move AUTO check to convert and fix verification of args * add specific CLI test with CliRunner * cleanup * more cleanup * update docstring
		
			
				
	
	
		
			34 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import os
 | |
| from pathlib import Path
 | |
| from typer.testing import CliRunner
 | |
| 
 | |
| from spacy.cli._util import app
 | |
| from .util import make_tempdir
 | |
| 
 | |
| 
 | |
| def test_convert_auto():
 | |
|     with make_tempdir() as d_in, make_tempdir() as d_out:
 | |
|         for f in ["data1.iob", "data2.iob", "data3.iob"]:
 | |
|             Path(d_in / f).touch()
 | |
| 
 | |
|         # ensure that "automatic" suffix detection works
 | |
|         result = CliRunner().invoke(app, ["convert", str(d_in), str(d_out)])
 | |
|         assert "Generated output file" in result.stdout
 | |
|         out_files = os.listdir(d_out)
 | |
|         assert len(out_files) == 3
 | |
|         assert "data1.spacy" in out_files
 | |
|         assert "data2.spacy" in out_files
 | |
|         assert "data3.spacy" in out_files
 | |
| 
 | |
| 
 | |
| def test_convert_auto_conflict():
 | |
|     with make_tempdir() as d_in, make_tempdir() as d_out:
 | |
|         for f in ["data1.iob", "data2.iob", "data3.json"]:
 | |
|             Path(d_in / f).touch()
 | |
| 
 | |
|         # ensure that "automatic" suffix detection warns when there are different file types
 | |
|         result = CliRunner().invoke(app, ["convert", str(d_in), str(d_out)])
 | |
|         assert "All input files must be same type" in result.stdout
 | |
|         out_files = os.listdir(d_out)
 | |
|         assert len(out_files) == 0
 |