193 Commits

Author SHA1 Message Date
ksunden
aaf2ed52c1 Use mock to test url command 2018-05-22 10:32:43 -05:00
Fabien C. Y. Benureau
913a5d77b5 unicode citekey in python2; removes 2018-04-10 14:55:55 +09:00
Fabien C. Y. Benureau
c7e9470300 implement requested changes for #133 2018-04-10 14:46:27 +09:00
Fabien C. Y. Benureau
dc4e118c3c make utf8 citekeys possible in python 2.7. closes #28
This involved many changes, some side effects of the change include:
- remove of all `u"abc"` forms, in favor of
  `from __future__ import unicode_literals`. Their usage was
  inconsistent anyway, leading to problems when mixing with
  unicode content.
- improve the tests, to allow printing for usecase even when
  crashing. Should make future test easier. This is done with a
  rather hacky `StdIO` class in `p3`, but it works.
- for some reason, the skipped test for Python 2 seems to work
  now. While the previous point might seem related, it is not clear
  that this is actually the case.
2018-04-10 14:45:54 +09:00
Fabien C. Y. Benureau
38133fc053 fix for utf8 citekeys 2018-04-10 14:44:01 +09:00
Fabien C. Y. Benureau
9a6db894d8 fix fakeenv creation when used from a non-primary volume 2018-04-10 14:44:01 +09:00
Olivier Mangin
50a44d964c
Merge branch 'master' into version 2018-04-03 12:36:52 -04:00
Olivier Mangin
801e0c035f
Adds code version to cache. (Fixes #129)
Current code version is added to the cache on writting. If the cache
version does not match the code version on read, the cache is ignored
which means it resets.
2018-03-30 19:16:23 -04:00
Olivier Mangin
bcf216183f
Fixes tests for printing help on --help and without argument.
(fix #135)
2018-03-27 15:44:20 -04:00
Fabien C. Y. Benureau
f8a8e0e207 pyfakefs 3.3 2018-03-22 11:38:26 +09:00
Olivier Mangin
71c2f40657
Merge branch 'master' into fix/link_customization 2018-03-02 13:33:14 -05:00
Olivier Mangin
a6d5df4059 Removes link and DOI customization. Fixes #119. 2018-02-21 16:14:38 -05:00
Fabien C. Y. Benureau
82aad31e5d test for common_string parsing 2018-02-21 13:59:26 +09:00
Olivier Mangin
6e39cea473 Adds --strict option to list to force strict unicode comparison. 2018-02-20 18:06:33 -05:00
Olivier Mangin
248bf62317 Fixes unicode for python2 in test_queries. 2018-02-20 18:06:33 -05:00
Olivier Mangin
f3ec9621ee Adds and checks unicode normalization. Fixes #103. 2018-02-20 18:06:33 -05:00
Olivier Mangin
1bcbf65dd8 Implements latex escape in queries. 2018-02-20 18:06:33 -05:00
Olivier Mangin
c87b89bf10 Fix wrong test. 2018-02-20 18:06:33 -05:00
Olivier Mangin
078b2084ff Updates field orders to use 'url' and fixes broken test.
The field ordering test was broken on the latest bibtexparser since it
now replaces by default 'link' fields by 'url'.
2018-02-19 15:32:45 -05:00
Fabien C. Y. Benureau
8126a0e0b4 Fix bibtex testcase, closes #25.
Also, made pyfakefs a straight pypi requirement, rather than a
github one, as no dev feature is needed since the last release.
2018-02-16 17:53:56 +09:00
Olivier Mangin
328f2a6d5e Adds more checks and better error message against empty citekeys. 2018-01-25 22:37:11 -05:00
Olivier Mangin
860181e278 Adds argument to ignore fields in export. [Closes #67]
`pubs export --ignore-fields abstract,note CiteKey`
2018-01-07 13:40:06 -05:00
Olivier Mangin
07be993d02 Moves to using bibtexparser's writer for bibdata. [Fixes #33] 2018-01-07 12:59:55 -05:00
Bill Flynn
aa408e9b2d [#95] updated doi tests 2018-01-05 21:31:46 -05:00
Bill Flynn
e2ad39ca08 [Fix #95] robust handling of DOIs
Added DOI regex function to utils.py which is called in add_cmd.py
upon specifying a new DOI.  DOI validation applies directly on
argument parsing by using a custom argparse.Action.
2018-01-05 19:22:00 -05:00
Olivier Mangin
e069da518f Fixes query tests (assertFalse(not ...) and wrong name). 2018-01-05 18:04:59 -05:00
Olivier Mangin
3ad4a73da1 Moves query code from list_cmd to didicated module. 2018-01-05 14:34:24 -05:00
Olivier Mangin
0bd8d5b8dc Actually adds the functionality as well as a few more tests. 2018-01-05 14:34:24 -05:00
Olivier Mangin
84553d8eb3 [Fix #90] Adds year ranges to queries. 2018-01-05 14:34:24 -05:00
Olivier Mangin
c54de5c3b6 Refactors paper filtering from queries. 2018-01-05 14:34:24 -05:00
Bill Flynn
ebbd2d4f19 added another test for #98 2017-12-20 09:23:10 -05:00
Bill Flynn
4362c649b2 Added alias description functionality to conf #98
Changed Alias constructor, added tests for this behavior, and added
a few lines in the default conf describing how to define alias
descriptions.
2017-12-20 09:13:22 -05:00
Olivier Mangin
3e31c4455e Fixes argument and adds tests for overwrite on import. 2017-12-11 15:49:06 -05:00
Bill Flynn
37f076049b Many tests on MacOS 10.12.06 were failing due to fakefs path issues.
Not sure if this is needed.  Will see in the CI builds.
2017-12-08 17:51:06 -05:00
Bill Flynn
0c7ba85af9 Revisions subject to comments on PR #100
Additionally, reverted FakeSystemExit subclassing Exception, but added
an explicit __init__ so that we can emulate the SystemExit.code
functionality without having to change the superclass.
2017-12-08 17:49:19 -05:00
Bill Flynn
66c90c5d43 Added unittest to cover new behavior pubs
Unittest just checks that both `pubs` and `pubs --help` raise a
`SystemExit` exception with error code 0.  Due to how argparse
handles the `--help` keyword, this is the best way I could think to
provide test coverage without heavily modifying the parser structure
or the unittest infrastructure.

To ensure the `pubs` matches the behavior of `pubs --help`, it now
raises the same `SystemExit(0)` exception via `sys.exit(0)`.  And
in order to catch it in the unittest, I had to modify the
`FakeSystemExit` behavior slightly.
2017-11-30 14:48:50 -05:00
Bill Flynn
ac3a8d8bf2 Print help menu when no subcommands applied
Made subparsers not required in the main parser, but if no commands are parsed,
then the parser prints its help.  When a command is present, the normal
functionality preserved.

Removed the single unittest that checks for this exact behavior.
2017-11-28 17:32:13 -05:00
Olivier Mangin
6a26216c3e COSMIT 2017-10-19 15:46:42 -04:00
Olivier Mangin
a65873a7e0 Fixes abspath called on urls preventing to get content from url.
Fix #7
2017-10-19 15:40:58 -04:00
Olivier Mangin
47f5c918ea Fix #93: saves the modifications on edit -m. 2017-10-17 16:50:23 -04:00
Olivier Mangin
5c74f942c4 [Fix #88] Adds proper escaping for arguments in alias plugin. 2017-09-28 17:34:32 -04:00
Olivier Mangin
69d7587108 Adds test for configuration file content in usecase. 2017-08-01 23:43:06 -04:00
Fabien C. Y. Benureau
366575763c Remove duplicate test 2017-08-01 23:43:06 -04:00
Fabien C. Y. Benureau
0942df3b50 Fix pubs conf command 2017-08-01 23:43:06 -04:00
Olivier Mangin
da6f07c6c9 Adds basic API test for DOI and ISBN. 2017-07-22 15:42:12 -04:00
Olivier Mangin
4ffd62fe9f [notes] Allow different file extension for note file (see #70). 2017-07-12 10:41:51 -04:00
Olivier Mangin
9b6496d740 Removed commented code with old imports. 2017-07-11 17:26:08 -04:00
Olivier Mangin
323fb8b674 Fixes indent and removes unused io import. 2017-07-11 17:13:39 -04:00
Fabien C. Y. Benureau
3b4cfe635d Fix tests for Python 2
Also, some cleanup in fake_env.py
2017-07-11 17:08:53 -04:00
Fabien C. Y. Benureau
ce4b66e9b4 Fix unittests for Python 3 2017-07-11 17:08:52 -04:00