def setUp(self): os.environ['espa_api_testing'] = 'True' # create a user self.mock_user = MockUser() self.mock_order = MockOrder() self.user = User.find(self.mock_user.add_testing_user()) self.order_id = self.mock_order.generate_testing_order(self.user.id) self.app = http.app.test_client() self.app.testing = True self.sceneids = self.mock_order.scene_names_list(self.order_id)[0:2] token = ''.format(self.user.username, 'foo') auth_string = "Basic {}".format(base64.b64encode(token)) self.headers = {"Authorization": auth_string} with db_instance() as db: uidsql = "select user_id, orderid from ordering_order limit 1;" db.select(uidsql) self.userid = db[0]['user_id'] self.orderid = db[0]['orderid'] itemsql = "select name, order_id from ordering_scene limit 1;" db.select(itemsql) self.itemid = db[0][0] itemorderid = db[0][1] ordersql = "select orderid from ordering_order where id = {};".format( itemorderid) db.select(ordersql) self.itemorderid = db[0][0] self.base_order = lowercase_all(testorders.build_base_order())
def setUp(self): logger.warning('Testing API started...') os.environ['espa_api_testing'] = 'True' # create a user self.mock_user = MockUser() self.mock_order = MockOrder() user_id = self.mock_user.add_testing_user() order_id = self.mock_order.generate_testing_order(user_id) self.order = Order.find(order_id) self.user = User.find(user_id) self.product_id = 'LT05_L1TP_032028_20120425_20160830_01_T1' self.sensor_id = 'tm5_collection' self.staff_product_id = 'LE07_L1TP_010028_20050420_20160925_01_T1' self.staff_sensor = 'etm7_collection' self.global_product_id = 'LE70450302003206EDC01' staff_user_id = self.mock_user.add_testing_user() self.staff_user = User.find(staff_user_id) self.staff_user.update('is_staff', True) staff_order_id = self.mock_order.generate_testing_order(staff_user_id) staff_order = Order.find(staff_order_id) staff_scene = staff_order.scenes()[0] staff_scene.update('name', self.staff_product_id) user_scene = self.order.scenes()[0] user_scene.update('name', self.staff_product_id) with open(os.path.join(__location__, 'domain/restricted.yaml')) as f: self.restricted = yaml.load(f.read()) self.restricted['all']['role'].remove('restricted_prod')
def setUp(self): os.environ['espa_api_testing'] = 'True' # create a user self.mock_user = MockUser() self.mock_order = MockOrder() user_id = self.mock_user.add_testing_user() order_id = self.mock_order.generate_testing_order(user_id) self.order = Order.find(order_id) self.user = User.find(user_id) self.product_id = 'LT50150401987120XXX02' self.staff_product_id = 'LE70450302003206EDC01' staff_user_id = self.mock_user.add_testing_user() self.staff_user = User.find(staff_user_id) self.staff_user.update('is_staff', True) staff_order_id = self.mock_order.generate_testing_order(staff_user_id) staff_order = Order.find(staff_order_id) staff_scene = staff_order.scenes()[0] staff_scene.update('name', self.staff_product_id) user_scene = self.order.scenes()[0] user_scene.update('name', self.staff_product_id) with open('api/domain/restricted.yaml') as f: self.restricted = yaml.load(f.read()) self.restricted['all']['role'].remove('restricted_prod')
def test_get_scenes_for_new_user(self): """ Make sure that checking the number of open scenes for a new user with no orders will not raise an exception """ mock = MockOrder() user = MockUser() user_id = user.add_testing_user() user_id = user_id + random.randint(1, 200) user_orders = Order.where({'user_id': user_id}) self.assertTrue(len(user_orders) == 0) try: ordering_provider.check_open_scenes(order=mock.base_order, user_id=user_id, filters={ 'status': ('submitted', 'oncache', 'onorder', 'queued', 'processing') }) except: self.fail( 'ordering_provider.check_open_scenes() raised Exception for new user' )
def setUp(self): os.environ['espa_api_testing'] = 'True' # create a user self.mock_user = MockUser() self.mock_order = MockOrder() self.user = User.find(self.mock_user.add_testing_user()) self.order_id = self.mock_order.generate_testing_order(self.user.id) self.app = http.app.test_client() self.app.testing = True self.sceneids = self.mock_order.scene_names_list(self.order_id)[0:2] token = ':'.join((self.user.username, 'foo')) auth_string = "Basic {}".format(base64.b64encode(token)) self.headers = {"Authorization": auth_string} with db_instance() as db: uidsql = "select user_id, orderid from ordering_order limit 1;" db.select(uidsql) self.userid = db[0]['user_id'] self.orderid = db[0]['orderid'] itemsql = "select name, order_id from ordering_scene limit 1;" db.select(itemsql) self.itemid = db[0][0] itemorderid = db[0][1] ordersql = "select orderid from ordering_order where id = {};".format( itemorderid) db.select(ordersql) self.itemorderid = db[0][0] self.base_order = lowercase_all(testorders.build_base_order()) self.sensors = [ k for k in self.base_order.keys() if isinstance(self.base_order[k], dict) and 'inputs' in self.base_order[k] ] self.inputs = {s: self.base_order[s]['inputs'] for s in self.sensors} self.input_names_all = set([ i for sublist in [s for k, s in self.inputs.items()] for i in sublist ])
def test_order_exceeds_open_scene_limit(self): """ Build a large order, then attempt to place an order that would exceed the user's open scene limit. """ mock = MockOrder() user = MockUser() user_id = user.add_testing_user() # base testing order will give a user 15 open scenes currently order_id = mock.generate_testing_order(user_id) # Add a second order that pushes scenes over the limit, make sure that this # raises the appropriate exception self.assertRaises(OpenSceneLimitException, lambda: ordering_provider.check_open_scenes(order=mock.base_order, user_id=user_id, filters={'status': ('submitted', 'oncache', 'onorder', 'queued', 'processing')}))
def setUp(self): os.environ['espa_api_testing'] = 'True' # create a user self.mock_user = MockUser() self.mock_order = MockOrder() self.user_id = self.mock_user.add_testing_user()