This commit is contained in:
		
							parent
							
								
									a6b805207b
								
							
						
					
					
						commit
						bb2b0496f7
					
				
							
								
								
									
										23
									
								
								elodie.py
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								elodie.py
									
									
									
									
									
								
							@ -83,10 +83,13 @@ def import_file(_file, destination, album_from_folder, trash, allow_duplicates):
 | 
				
			|||||||
              help='After copying files, move the old files to the trash.')
 | 
					              help='After copying files, move the old files to the trash.')
 | 
				
			||||||
@click.option('--allow-duplicates', default=False, is_flag=True,
 | 
					@click.option('--allow-duplicates', default=False, is_flag=True,
 | 
				
			||||||
              help='Import the file even if it\'s already been imported.')
 | 
					              help='Import the file even if it\'s already been imported.')
 | 
				
			||||||
 | 
					@click.option('--debug', default=False, is_flag=True,
 | 
				
			||||||
 | 
					              help='Override the value in constants.py with True.')
 | 
				
			||||||
@click.argument('paths', nargs=-1, type=click.Path())
 | 
					@click.argument('paths', nargs=-1, type=click.Path())
 | 
				
			||||||
def _import(destination, source, file, album_from_folder, trash, paths, allow_duplicates):
 | 
					def _import(destination, source, file, album_from_folder, trash, allow_duplicates, debug, paths):
 | 
				
			||||||
    """Import files or directories by reading their EXIF and organizing them accordingly.
 | 
					    """Import files or directories by reading their EXIF and organizing them accordingly.
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
 | 
					    constants.debug = debug
 | 
				
			||||||
    has_errors = False
 | 
					    has_errors = False
 | 
				
			||||||
    result = Result()
 | 
					    result = Result()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -122,9 +125,12 @@ def _import(destination, source, file, album_from_folder, trash, paths, allow_du
 | 
				
			|||||||
@click.command('generate-db')
 | 
					@click.command('generate-db')
 | 
				
			||||||
@click.option('--source', type=click.Path(file_okay=False),
 | 
					@click.option('--source', type=click.Path(file_okay=False),
 | 
				
			||||||
              required=True, help='Source of your photo library.')
 | 
					              required=True, help='Source of your photo library.')
 | 
				
			||||||
def _generate_db(source):
 | 
					@click.option('--debug', default=False, is_flag=True,
 | 
				
			||||||
 | 
					              help='Override the value in constants.py with True.')
 | 
				
			||||||
 | 
					def _generate_db(source, debug):
 | 
				
			||||||
    """Regenerate the hash.json database which contains all of the sha1 signatures of media files.
 | 
					    """Regenerate the hash.json database which contains all of the sha1 signatures of media files.
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
 | 
					    constants.debug = debug
 | 
				
			||||||
    result = Result()
 | 
					    result = Result()
 | 
				
			||||||
    source = os.path.abspath(os.path.expanduser(source))
 | 
					    source = os.path.abspath(os.path.expanduser(source))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -146,7 +152,10 @@ def _generate_db(source):
 | 
				
			|||||||
    result.write()
 | 
					    result.write()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@click.command('verify')
 | 
					@click.command('verify')
 | 
				
			||||||
def _verify():
 | 
					@click.option('--debug', default=False, is_flag=True,
 | 
				
			||||||
 | 
					              help='Override the value in constants.py with True.')
 | 
				
			||||||
 | 
					def _verify(debug):
 | 
				
			||||||
 | 
					    constants.debug = debug
 | 
				
			||||||
    result = Result()
 | 
					    result = Result()
 | 
				
			||||||
    db = Db()
 | 
					    db = Db()
 | 
				
			||||||
    for checksum, file_path in db.all():
 | 
					    for checksum, file_path in db.all():
 | 
				
			||||||
@ -209,11 +218,14 @@ def update_time(media, file_path, time_string):
 | 
				
			|||||||
@click.option('--time', help=('Update the image time. Time should be in '
 | 
					@click.option('--time', help=('Update the image time. Time should be in '
 | 
				
			||||||
                              'YYYY-mm-dd hh:ii:ss or YYYY-mm-dd format.'))
 | 
					                              'YYYY-mm-dd hh:ii:ss or YYYY-mm-dd format.'))
 | 
				
			||||||
@click.option('--title', help='Update the image title.')
 | 
					@click.option('--title', help='Update the image title.')
 | 
				
			||||||
 | 
					@click.option('--debug', default=False, is_flag=True,
 | 
				
			||||||
 | 
					              help='Override the value in constants.py with True.')
 | 
				
			||||||
@click.argument('paths', nargs=-1,
 | 
					@click.argument('paths', nargs=-1,
 | 
				
			||||||
                required=True)
 | 
					                required=True)
 | 
				
			||||||
def _update(album, location, time, title, paths):
 | 
					def _update(album, location, time, title, paths, debug):
 | 
				
			||||||
    """Update a file's EXIF. Automatically modifies the file's location and file name accordingly.
 | 
					    """Update a file's EXIF. Automatically modifies the file's location and file name accordingly.
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
 | 
					    constants.debug = debug
 | 
				
			||||||
    has_errors = False
 | 
					    has_errors = False
 | 
				
			||||||
    result = Result()
 | 
					    result = Result()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -229,8 +241,7 @@ def _update(album, location, time, title, paths):
 | 
				
			|||||||
        if not os.path.exists(current_file):
 | 
					        if not os.path.exists(current_file):
 | 
				
			||||||
            has_errors = True
 | 
					            has_errors = True
 | 
				
			||||||
            result.append((current_file, False))
 | 
					            result.append((current_file, False))
 | 
				
			||||||
            if constants.debug:
 | 
					            log.warn('Could not find %s' % current_file)
 | 
				
			||||||
                print('Could not find %s' % current_file)
 | 
					 | 
				
			||||||
            print('{"source":"%s", "error_msg":"Could not find %s"}' % \
 | 
					            print('{"source":"%s", "error_msg":"Could not find %s"}' % \
 | 
				
			||||||
                (current_file, current_file))
 | 
					                (current_file, current_file))
 | 
				
			||||||
            continue
 | 
					            continue
 | 
				
			||||||
 | 
				
			|||||||
@ -550,3 +550,19 @@ def test_verify_error():
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    assert origin in result.output, result.output
 | 
					    assert origin in result.output, result.output
 | 
				
			||||||
    assert 'Error           1' in result.output, result.output
 | 
					    assert 'Error           1' in result.output, result.output
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					def test_cli_debug_import():
 | 
				
			||||||
 | 
					    runner = CliRunner()
 | 
				
			||||||
 | 
					    # import
 | 
				
			||||||
 | 
					    result = runner.invoke(elodie._import, ['--destination', '/does/not/exist', '/does/not/exist'])
 | 
				
			||||||
 | 
					    assert "Could not find /does/not/exist\n" not in result.output, result.output
 | 
				
			||||||
 | 
					    result = runner.invoke(elodie._import, ['--destination', '/does/not/exist', '--debug', '/does/not/exist'])
 | 
				
			||||||
 | 
					    assert "Could not find /does/not/exist\n" in result.output, result.output
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					def test_cli_debug_update():
 | 
				
			||||||
 | 
					    runner = CliRunner()
 | 
				
			||||||
 | 
					    # update
 | 
				
			||||||
 | 
					    result = runner.invoke(elodie._update, ['--location', 'foobar', '/does/not/exist'])
 | 
				
			||||||
 | 
					    assert "Could not find /does/not/exist\n" not in result.output, result.output
 | 
				
			||||||
 | 
					    result = runner.invoke(elodie._update, ['--location', 'foobar', '--debug', '/does/not/exist'])
 | 
				
			||||||
 | 
					    assert "Could not find /does/not/exist\n" in result.output, result.output
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user