Changeset View
Changeset View
Standalone View
Standalone View
swh/deposit/tests/loader/test_loader.py
# Copyright (C) 2017-2018 The Software Heritage developers | # Copyright (C) 2017-2018 The Software Heritage developers | ||||
# See the AUTHORS file at the top-level directory of this distribution | # See the AUTHORS file at the top-level directory of this distribution | ||||
# License: GNU General Public License version 3, or any later version | # License: GNU General Public License version 3, or any later version | ||||
# See top-level LICENSE file for more information | # See top-level LICENSE file for more information | ||||
import os | import os | ||||
import unittest | import unittest | ||||
import shutil | import shutil | ||||
from nose.tools import istest | |||||
from nose.plugins.attrib import attr | from nose.plugins.attrib import attr | ||||
from rest_framework.test import APITestCase | from rest_framework.test import APITestCase | ||||
from swh.model import hashutil | from swh.model import hashutil | ||||
from swh.deposit.models import Deposit | from swh.deposit.models import Deposit | ||||
from swh.deposit.loader import loader | from swh.deposit.loader import loader | ||||
from swh.deposit.config import ( | from swh.deposit.config import ( | ||||
PRIVATE_GET_RAW_CONTENT, PRIVATE_GET_DEPOSIT_METADATA, PRIVATE_PUT_DEPOSIT | PRIVATE_GET_RAW_CONTENT, PRIVATE_GET_DEPOSIT_METADATA, PRIVATE_PUT_DEPOSIT | ||||
▲ Show 20 Lines • Show All 182 Lines • ▼ Show 20 Lines | def setUp(self): | ||||
config=CLIENT_TEST_CONFIG) | config=CLIENT_TEST_CONFIG) | ||||
# 3. setup loader with no persistence and that client | # 3. setup loader with no persistence and that client | ||||
self.loader = SWHDepositLoaderNoStorage(client=loader_client) | self.loader = SWHDepositLoaderNoStorage(client=loader_client) | ||||
def tearDown(self): | def tearDown(self): | ||||
super().tearDown() | super().tearDown() | ||||
shutil.rmtree(TEST_LOADER_CONFIG['extraction_dir']) | shutil.rmtree(TEST_LOADER_CONFIG['extraction_dir']) | ||||
@istest | def test_inject_deposit_ready(self): | ||||
def inject_deposit_ready(self): | |||||
"""Load a deposit which is ready | """Load a deposit which is ready | ||||
""" | """ | ||||
args = [self.collection.name, self.deposit_id] | args = [self.collection.name, self.deposit_id] | ||||
archive_url = reverse(PRIVATE_GET_RAW_CONTENT, args=args) | archive_url = reverse(PRIVATE_GET_RAW_CONTENT, args=args) | ||||
deposit_meta_url = reverse(PRIVATE_GET_DEPOSIT_METADATA, args=args) | deposit_meta_url = reverse(PRIVATE_GET_DEPOSIT_METADATA, args=args) | ||||
deposit_update_url = reverse(PRIVATE_PUT_DEPOSIT, args=args) | deposit_update_url = reverse(PRIVATE_PUT_DEPOSIT, args=args) | ||||
# when | # when | ||||
self.loader.load(archive_url=archive_url, | self.loader.load(archive_url=archive_url, | ||||
deposit_meta_url=deposit_meta_url, | deposit_meta_url=deposit_meta_url, | ||||
deposit_update_url=deposit_update_url) | deposit_update_url=deposit_update_url) | ||||
# then | # then | ||||
self.assertEquals(len(self.loader.state['content']), 1) | self.assertEquals(len(self.loader.state['content']), 1) | ||||
self.assertEquals(len(self.loader.state['directory']), 1) | self.assertEquals(len(self.loader.state['directory']), 1) | ||||
self.assertEquals(len(self.loader.state['revision']), 1) | self.assertEquals(len(self.loader.state['revision']), 1) | ||||
self.assertEquals(len(self.loader.state['release']), 0) | self.assertEquals(len(self.loader.state['release']), 0) | ||||
self.assertEquals(len(self.loader.state['snapshot']), 1) | self.assertEquals(len(self.loader.state['snapshot']), 1) | ||||
@istest | def test_inject_deposit_verify_metadata(self): | ||||
def inject_deposit_verify_metadata(self): | |||||
"""Load a deposit with metadata, test metadata integrity | """Load a deposit with metadata, test metadata integrity | ||||
""" | """ | ||||
self.deposit_metadata_id = self.add_metadata_to_deposit( | self.deposit_metadata_id = self.add_metadata_to_deposit( | ||||
self.deposit_id) | self.deposit_id) | ||||
args = [self.collection.name, self.deposit_metadata_id] | args = [self.collection.name, self.deposit_metadata_id] | ||||
archive_url = reverse(PRIVATE_GET_RAW_CONTENT, args=args) | archive_url = reverse(PRIVATE_GET_RAW_CONTENT, args=args) | ||||
▲ Show 20 Lines • Show All 67 Lines • Show Last 20 Lines |