forked from CenterForOpenScience/osf.io
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_add_preprint_providers.py
More file actions
46 lines (38 loc) · 1.72 KB
/
test_add_preprint_providers.py
File metadata and controls
46 lines (38 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import logging
from tests.base import OsfTestCase
from osf.models import PreprintProvider
from scripts.update_taxonomies import main as taxonomy_main
from scripts.populate_preprint_providers import main as populate_main
from scripts.populate_preprint_providers import STAGING_PREPRINT_PROVIDERS, PROD_PREPRINT_PROVIDERS
class TestAddPreprintProviders(OsfTestCase):
def setUp(self):
logger = logging.getLogger()
logger.setLevel(logging.WARNING)
taxonomy_main()
def tearDown(self):
PreprintProvider.objects.all().delete()
def test_add_prod_providers(self):
populate_main('prod')
providers = PreprintProvider.objects.all()
assert providers.count() == len(PROD_PREPRINT_PROVIDERS)
ids = [provider._id for provider in providers]
for id in PROD_PREPRINT_PROVIDERS:
assert id in ids
for id in set(STAGING_PREPRINT_PROVIDERS) - set(PROD_PREPRINT_PROVIDERS):
assert id not in ids
def test_add_default_providers(self):
populate_main(None)
providers = PreprintProvider.objects.all()
assert providers.count() == len(PROD_PREPRINT_PROVIDERS)
ids = [provider._id for provider in providers]
for id in PROD_PREPRINT_PROVIDERS:
assert id in ids
for id in set(STAGING_PREPRINT_PROVIDERS) - set(PROD_PREPRINT_PROVIDERS):
assert id not in ids
def test_add_staging_providers(self):
populate_main('stage')
providers = PreprintProvider.objects.all()
assert PreprintProvider.objects.all().count() == len(STAGING_PREPRINT_PROVIDERS)
ids = [provider._id for provider in providers]
for id in STAGING_PREPRINT_PROVIDERS:
assert id in ids