def test_connector(self): import jobboss.models as jb jb.AutoNumber.objects.create(type='SalesOrder', system_generated=True, last_nbr=1) jb.AutoNumber.objects.create(type='Job', system_generated=True, last_nbr=1) from job import process_order with open('core-python/tests/unit/mock_data/order.json') as data_file: mock_order_json = json.load(data_file) client = PaperlessClient() client.get_resource = MagicMock(return_value=mock_order_json) order = Order.get(1) process_order(order) self.assertEqual(len(order.order_items), jb.Job.objects.filter(job=F('top_lvl_job')).count()) self.assertEqual( sum([ len([comp for comp in oi.components if not comp.is_hardware]) for oi in order.order_items ]), jb.Job.objects.count()) op_count = 0 for oi in order.order_items: for comp in oi.components: op_count += len(comp.shop_operations) addon_count = sum(len(oi.ordered_add_ons) for oi in order.order_items) self.assertEqual(op_count + addon_count, jb.JobOperation.objects.count())
def on_event(self, resource): if resource.status != 'cancelled': process_order(resource)
test_mode = False try: if sys.argv[1] == 'testmode': test_mode = True order_num = None else: order_num = int(sys.argv[1]) except (IndexError, ValueError): order_num = None if order_num is not None: PaperlessClient( access_token=common.PAPERLESS_CONFIG.token, group_slug=common.PAPERLESS_CONFIG.slug ) order = Order.get(order_num) process_order(order) elif test_mode: print('Testing JobBOSS Connection') print('Host:', common.JOBBOSS_CONFIG.host) print('Database:', common.JOBBOSS_CONFIG.name) print('Username:'******'Job count: {} OK!'.format(c)) else: if common.PAPERLESS_CONFIG.active: logger.info('Running connector!') main() else: logger.debug('Inactive')