コード例 #1
0
def test_initial_state():
    """Check the initial state of S3DataStore object."""
    s3DataStore = S3DataStore("bucket", "access_key", "secret_key")
    assert s3DataStore
"""
import os

import flask
from flask import Flask, request
from recommendation_engine.predictor.online_recommendation import PMFRecommendation
from recommendation_engine.data_store.s3_data_store import S3DataStore
import recommendation_engine.config.cloud_constants as cloud_constants
from recommendation_engine.config.cloud_constants import USE_CLOUD_SERVICES
from recommendation_engine.config.params_scoring import ScoringParams

app = Flask(__name__)

if USE_CLOUD_SERVICES:
    s3 = S3DataStore(src_bucket_name=cloud_constants.S3_BUCKET_NAME,  # pragma: no cover
                     access_key=cloud_constants.AWS_S3_ACCESS_KEY_ID,
                     secret_key=cloud_constants.AWS_S3_SECRET_KEY_ID)
else:
    from recommendation_engine.data_store.local_filesystem import LocalFileSystem
    s3 = LocalFileSystem('tests/test_data/')
    ScoringParams.num_latent_factors = 5

# This needs to be global as ~200MB of data is loaded from S3 every time an object of this class
# is instantiated.
recommender = PMFRecommendation(ScoringParams.recommendation_threshold,
                                s3,
                                ScoringParams.num_latent_factors)


@app.route('/api/v1/liveness', methods=['GET'])
def liveness():
コード例 #3
0
def test_write_json_file_mocked_s3():
    """Check the method write_json_file() with mocked S3 object."""
    # try for improper access_key and secret_key
    s3DataStore = S3DataStore("bucket", "access_key", "secret_key")
    s3DataStore.s3_resource = MockedS3Resource()
    s3DataStore.write_json_file("file", {})
コード例 #4
0
def test_write_json_file():
    """Check the method write_json_file()."""
    # try for improper access_key and secret_key
    s3DataStore = S3DataStore("bucket", "access_key", "secret_key")
    with pytest.raises(Exception):
        s3DataStore.write_json_file("file", {})
コード例 #5
0
def test_read_json_file_negative():
    """Check the method read_json_file()."""
    # try for improper access_key and secret_key
    s3DataStore = S3DataStore("bucket", "access_key", "secret_key")
    with pytest.raises(Exception):
        s3DataStore.read_json_file("file")
コード例 #6
0
def test_read_json_file_positive():
    """Check the method read_json_file()."""
    s3DataStore = S3DataStore("bucket", "access_key", "secret_key")
    s3DataStore.s3_resource = MockedS3Resource()
    s3DataStore.read_json_file("file")
コード例 #7
0
def test_get_name():
    """Check the method get_name()."""
    s3DataStore = S3DataStore("bucket", "access_key", "secret_key")
    assert s3DataStore.get_name() == "S3:bucket"