Improves repo dir specification to avoid issues.

main
Olivier Mangin 12 years ago
parent dbb73d6f8e
commit b46f8c543d

@ -7,6 +7,7 @@ def parser(subparsers, config):
parser.add_argument('bibfile', help='bibtex, bibtexml or bibyaml file') parser.add_argument('bibfile', help='bibtex, bibtexml or bibyaml file')
return parser return parser
def command(config, pdffile, bibfile): def command(config, pdffile, bibfile):
""" """
:param pdffilepath path (no url yet) to a pdf or ps file :param pdffilepath path (no url yet) to a pdf or ps file

@ -18,8 +18,8 @@ def command(config):
if not os.path.exists(papersdir): if not os.path.exists(papersdir):
print('{}initializing papers in {}{}{}'.format( print('{}initializing papers in {}{}{}'.format(
color.grey, color.cyan, papersdir, color.end)) color.grey, color.cyan, papersdir, color.end))
repo = Repository(papersdir=papersdir) repo = Repository()
repo.init() # Creates directories repo.init(papersdir) # Creates directories
repo.save() # Saves empty repository description repo.save() # Saves empty repository description
else: else:
print('{}error {} : papers already present in {}{}{}'.format( print('{}error {} : papers already present in {}{}{}'.format(

@ -13,11 +13,8 @@ META_DIR = 'meta'
class Repository(object): class Repository(object):
def __init__(self, papersdir=None): def __init__(self):
if papersdir: self.papersdir = None
self.papersdir = papersdir
else:
self.papersdir = files.find_papersdir()
self.citekeys = [] self.citekeys = []
# loading existing papers # loading existing papers
@ -125,7 +122,8 @@ class Repository(object):
papers_config = files.read_yamlfile(self.base_file_path()) papers_config = files.read_yamlfile(self.base_file_path())
self.citekeys = papers_config['citekeys'] self.citekeys = papers_config['citekeys']
def init(self): def init(self, papersdir):
self.papersdir = papersdir
os.makedirs(os.path.join(self.papersdir, BIB_DIR)) os.makedirs(os.path.join(self.papersdir, BIB_DIR))
os.makedirs(os.path.join(self.papersdir, META_DIR)) os.makedirs(os.path.join(self.papersdir, META_DIR))
self.save() self.save()
@ -140,7 +138,10 @@ class Repository(object):
@classmethod @classmethod
def from_directory(cls, papersdir=None): def from_directory(cls, papersdir=None):
repo = cls(papersdir=papersdir) repo = cls()
if papersdir is None:
papersdir = files.find_papersdir()
repo.papersdir = papersdir
repo.load() repo.load()
return repo return repo

@ -33,8 +33,8 @@ class TestAddPaper(unittest.TestCase):
def setUp(self): def setUp(self):
self.tmpdir = tempfile.mkdtemp() self.tmpdir = tempfile.mkdtemp()
self.repo = Repository(papersdir=self.tmpdir) self.repo = Repository()
self.repo.init() self.repo.init(self.tmpdir)
self.repo.add_paper(fixtures.turing1950) self.repo.add_paper(fixtures.turing1950)
def test_raises_value_error_on_existing_key(self): def test_raises_value_error_on_existing_key(self):

Loading…
Cancel
Save