mirror of
				https://git.webmeisterei.com/webmeisterei/todoist-taskwarrior.git
				synced 2025-11-04 03:32:43 +01:00 
			
		
		
		
	Add tests for --map-project values
This commit is contained in:
		
							
								
								
									
										33
									
								
								tests/test_validation.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								tests/test_validation.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
			
		||||
""" Validation Tests
 | 
			
		||||
 | 
			
		||||
Test argument/option validations
 | 
			
		||||
"""
 | 
			
		||||
import click
 | 
			
		||||
import pytest
 | 
			
		||||
from todoist_taskwarrior import utils
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def validate(fn, value):
 | 
			
		||||
    """Calls the validation with None for `ctx` and `param`.
 | 
			
		||||
 | 
			
		||||
    Note: This could definitely be an issue for validations that
 | 
			
		||||
    use either param, but at the moment it's a simplification
 | 
			
		||||
    which works.
 | 
			
		||||
    """
 | 
			
		||||
    return fn(None, None, value)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def test_validate_map_project():
 | 
			
		||||
    # Simple
 | 
			
		||||
    assert validate(utils.validate_map_project, ('HELLO=WORLD',)) == {'HELLO': 'WORLD'}
 | 
			
		||||
 | 
			
		||||
    # Missing DST
 | 
			
		||||
    assert validate(utils.validate_map_project, ('HELLO=',)) == {'HELLO': None}
 | 
			
		||||
 | 
			
		||||
    # Multiple
 | 
			
		||||
    assert validate(utils.validate_map_project, ('FOO=BAR', 'BAR=BAZZ')) == {'FOO': 'BAR', 'BAR': 'BAZZ'}
 | 
			
		||||
 | 
			
		||||
    # Invalid, no '='
 | 
			
		||||
    with pytest.raises(click.BadParameter):
 | 
			
		||||
        assert validate(utils.validate_map_project, ('FOO',)) == None
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user