test('GET /api/v1/users', function (assert) { let sampleUsers = [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, references: { funds: [], user_roles: [ { id: 1, role_name: 'admin' } ] }, role_id: 1, status: 'active' }, { customer_id: null, email: 'user', id: 2, last_login: null, name: null, phone: null, references: { funds: [], user_roles: [ { id: 3, role_name: 'user' } ] }, role_id: 3, status: 'active' }, { customer_id: null, email: 'staff', id: 3, last_login: null, name: null, phone: null, references: { funds: [], user_roles: [ { id: 2, role_name: 'staff' } ] }, role_id: 2, status: 'active' } ]; request.get('/api/v1/users') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, sampleUsers, "Retrieve list of roles", function(err, res){ assert.end(); })) });
test('GET /api/v1/email-templates', function (assert) { let sampleRoles = [ { id: 1, role_name: 'admin' }, { id: 2, role_name: 'staff' }, { id: 3, role_name: 'user' } ]; request.get('/api/v1/email-templates') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(function(err, res){ assert.end(); }) });
test('GET /api/v1/service-templates', function (assert) { let data = [ { amount: null, category_id: null, created_by: 1, currency: 'usd', description: 'demo service 1', details: 'nitty gritty', id: 1, interval: null, interval_count: 1, name: 'service_1', overhead: null, published: true, references: { service_categories: [], service_template_properties: [ { id: 1, name: 'service_template_property_1', parent_id: 1, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 1', prop_input_type: 'text', prop_label: 'What is template property 1?', prop_values: null, required: true, value: 'you decide' }, { id: 2, name: 'service_template_property_2', parent_id: 1, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 2', prop_input_type: 'text', prop_label: 'What is template property 2?', prop_values: null, required: true, value: 'you decide' }, { id: 3, name: 'service_template_property_3', parent_id: 1, private: true, prompt_user: false, prop_class: null, prop_description: 'demo service template property 3', prop_input_type: 'text', prop_label: 'What is template property 3?', prop_values: null, required: false, value: 'you decide' } ], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null }, { amount: null, category_id: null, created_by: 2, currency: 'usd', description: 'demo service 2', details: 'such description', id: 2, interval: null, interval_count: 1, name: 'service_2', overhead: null, published: true, references: { service_categories: [], service_template_properties: [ { id: 4, name: 'service_template_property_4', parent_id: 2, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 4', prop_input_type: 'text', prop_label: 'What is template property 4?', prop_values: null, required: true, value: 'you decide' } ], users: [ { customer_id: null, email: 'user', id: 2, last_login: null, name: null, phone: null, role_id: 3, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null }, { amount: null, category_id: null, created_by: 3, currency: 'usd', description: 'demo service 3', details: null, id: 3, interval: null, interval_count: 1, name: 'service_2', overhead: null, published: true, references: { service_categories: [], service_template_properties: [], users: [ { customer_id: null, email: 'staff', id: 3, last_login: null, name: null, phone: null, role_id: 2, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null }, { amount: null, category_id: null, created_by: 1, currency: 'usd', description: 'demo service 4', details: null, id: 4, interval: null, interval_count: 1, name: 'service_3', overhead: null, published: true, references: { service_categories: [], service_template_properties: [], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null } ]; request.get('/api/v1/service-templates') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, data, "Retrieve list of templates", function(err, res){ assert.end(); })) });
test('GET /api/v1/service-template-properties', function (assert) { let sampleData = [ { id: 1, name: 'service_template_property_1', parent_id: 1, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 1', prop_input_type: 'text', prop_label: 'What is template property 1?', prop_values: null, required: true, value: 'you decide' }, { id: 2, name: 'service_template_property_2', parent_id: 1, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 2', prop_input_type: 'text', prop_label: 'What is template property 2?', prop_values: null, required: true, value: 'you decide' }, { id: 3, name: 'service_template_property_3', parent_id: 1, private: true, prompt_user: false, prop_class: null, prop_description: 'demo service template property 3', prop_input_type: 'text', prop_label: 'What is template property 3?', prop_values: null, required: false, value: 'you decide' }, { id: 4, name: 'service_template_property_4', parent_id: 2, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 4', prop_input_type: 'text', prop_label: 'What is template property 4?', prop_values: null, required: true, value: 'you decide' } ]; request.get('/api/v1/service-template-properties') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, sampleData, "Retrieve list of template properties", function(err, res){ assert.end(); })) });
test('GET /api/v1/system-options', function (assert) { let data = [ { option: 'background_color', value: '#30468a' }, { option: 'action_button_color', value: '#30468a' }, { option: 'cancel_button_color', value: '#30468a' }, { option: 'primary_button_color', value: '#30468a' }, { option: 'info_button_color', value: '#30468a' }, { option: 'page_link_color', value: '#30468a' }, { option: 'header_text_color', value: '#30468a' }, { option: 'text_size', value: '12' }, { option: 'stripe_secret_key', value: 'sk_test_43eiOmKqQMwG3zjZp1PPERiH' }, { option: 'stripe_publishable_key', value: 'pk_test_Ax20edZBpZW9YEpHeZoQqaKA' } ]; request.get('/api/v1/system-options') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, data, "Retrieve list of options", function(err, res){ assert.end(); })) });
test('GET /api/v1/service-instance-properties', function (assert) { let sampleData = [ { id: 1, name: 'service_instance_property_1', parent_id: 1, prop_class: null, prop_description: 'demo service instance property 1', prop_label: 'What is instance property 1?', value: 'you decide' }, { id: 2, name: 'service_instance_property_2', parent_id: 1, prop_class: null, prop_description: 'demo service instance property 2', prop_label: 'What is instance property 2?', value: 'you decide' }, { id: 3, name: 'service_instance_property_3', parent_id: 1, prop_class: null, prop_description: 'demo service instance property 3', prop_label: 'What is instance property 3?', value: 'you decide' }, { id: 4, name: 'service_instance_property_4', parent_id: 2, prop_class: null, prop_description: 'demo service instance property 4', prop_label: 'What is instance property 4?', value: 'you decide' } ]; request.get('/api/v1/service-instance-properties') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, sampleData, "Retrieve list of instance properties", function(err, res){ assert.end(); })) });
test('GET /api/v1/roles/manage-permissions', function (assert) { let sampleData = [ { permission_ids: [ 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, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117 ], role_id: 1 }, { permission_ids: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 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, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 86, 87, 88, 89, 90, 91, 94, 95, 96, 97, 98, 99, 106, 107, 108, 109, 110, 111, 112, 113, 114 ], role_id: 2 }, { permission_ids: [ 3, 4, 6, 7, 8, 24, 26, 28, 29, 43, 45, 46, 48, 51, 53, 54, 55, 56, 57, 58, 65, 66, 67, 68, 69, 73, 77, 95, 97, 98, 108, 109, 110, 111, 112 ], role_id: 3 } ] request.get('/api/v1/roles/manage-permissions') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, sampleData, "Retrieve map of roles to permissions", function(err, res){ assert.end(); })) });
test('GET /api/v1/service-categories', function (assert) { let data = [ { amount: null, category_id: null, created_by: 1, currency: 'usd', description: 'demo service 1', details: 'nitty gritty', id: 1, interval: null, interval_count: 1, name: 'service_1', overhead: null, published: true, references: { service_categories: [], service_template_properties: [ { id: 1, name: 'service_template_property_1', parent_id: 1, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 1', prop_input_type: 'text', prop_label: 'What is template property 1?', prop_values: null, required: true, value: 'you decide' }, { id: 2, name: 'service_template_property_2', parent_id: 1, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 2', prop_input_type: 'text', prop_label: 'What is template property 2?', prop_values: null, required: true, value: 'you decide' }, { id: 3, name: 'service_template_property_3', parent_id: 1, private: true, prompt_user: false, prop_class: null, prop_description: 'demo service template property 3', prop_input_type: 'text', prop_label: 'What is template property 3?', prop_values: null, required: false, value: 'you decide' } ], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null }, { amount: null, category_id: null, created_by: 2, currency: 'usd', description: 'demo service 2', details: 'such description', id: 2, interval: null, interval_count: 1, name: 'service_2', overhead: null, published: true, references: { service_categories: [], service_template_properties: [ { id: 4, name: 'service_template_property_4', parent_id: 2, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 4', prop_input_type: 'text', prop_label: 'What is template property 4?', prop_values: null, required: true, value: 'you decide' } ], users: [ { customer_id: null, email: 'user', id: 2, last_login: null, name: null, phone: null, role_id: 3, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null }, { amount: null, category_id: null, created_by: 3, currency: 'usd', description: 'demo service 3', details: null, id: 3, interval: null, interval_count: 1, name: 'service_2', overhead: null, published: true, references: { service_categories: [], service_template_properties: [], users: [ { customer_id: null, email: 'staff', id: 3, last_login: null, name: null, phone: null, role_id: 2, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null }, { amount: null, category_id: null, created_by: 1, currency: 'usd', description: 'demo service 4', details: null, id: 4, interval: null, interval_count: 1, name: 'service_3', overhead: null, published: true, references: { service_categories: [], service_template_properties: [], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null } ]; request.get('/api/v1/service-categories') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, data, "Retrieve list of categories", function(err, res){ assert.end(); })) });
test('GET all roles - /api/v1/roles', function (assert) { let sampleRoles = [ { id: 1, role_name: 'admin' }, { id: 2, role_name: 'staff' }, { id: 3, role_name: 'user' } ]; request.get('/api/v1/roles') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, sampleRoles, "Retrieve list of roles", function(err, res){ assert.end(); })) });
test('GET /api/v1/service-instance-messages', function (assert) { let data = [ { description: 'demo service instance 1', id: 1, name: 'service_instance_1', payment_plan: null, references: { charge_items: [], service_instance_messages: [], service_instance_properties: [ { id: 1, name: 'service_instance_property_1', parent_id: 1, prop_class: null, prop_description: 'demo service instance property 1', prop_label: 'What is instance property 1?', value: 'you decide' }, { id: 2, name: 'service_instance_property_2', parent_id: 1, prop_class: null, prop_description: 'demo service instance property 2', prop_label: 'What is instance property 2?', value: 'you decide' }, { id: 3, name: 'service_instance_property_3', parent_id: 1, prop_class: null, prop_description: 'demo service instance property 3', prop_label: 'What is instance property 3?', value: 'you decide' } ], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, requested_by: 1, service_id: 1, status: 'requested', subscription_id: null, user_id: 1 }, { description: 'demo service instance 2', id: 2, name: 'service_instance_2', payment_plan: null, references: { charge_items: [], service_instance_messages: [], service_instance_properties: [ { id: 4, name: 'service_instance_property_4', parent_id: 2, prop_class: null, prop_description: 'demo service instance property 4', prop_label: 'What is instance property 4?', value: 'you decide' } ], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, requested_by: 1, service_id: 2, status: 'requested', subscription_id: null, user_id: 1 }, { description: 'demo service instance 2', id: 3, name: 'service_instance_2', payment_plan: null, references: { charge_items: [], service_instance_messages: [], service_instance_properties: [], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, requested_by: 1, service_id: 3, status: 'requested', subscription_id: null, user_id: 1 } ]; request.get('/api/v1/service-instance-messages') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, data, "Retrieve list of messages", function(err, res){ assert.end(); })) });
test('GET Specific role - /api/v1/roles/1', function (assert) { let sampleRoles = { id: 1, role_name: 'admin' }; request.get('/api/v1/roles/1') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, sampleRoles, "Retrieve specific role", function(err, res){ assert.end(); })) });
test('GET all permissions - /api/v1/permissions', function (assert) { let sampleRoles = [ { id: 1, permission_name: 'get_users' }, { id: 2, permission_name: 'get_users_search' }, { id: 3, permission_name: 'get_users_id' }, { id: 4, permission_name: 'put_users_id' }, { id: 5, permission_name: 'delete_users_id' }, { id: 6, permission_name: 'get_users_id_avatar' }, { id: 7, permission_name: 'put_users_id_avatar' }, { id: 8, permission_name: 'post_users_register' }, { id: 9, permission_name: 'post_users_invite' }, { id: 10, permission_name: 'get_roles' }, { id: 11, permission_name: 'post_roles' }, { id: 12, permission_name: 'get_roles_search' }, { id: 13, permission_name: 'get_roles_id' }, { id: 14, permission_name: 'put_roles_id' }, { id: 15, permission_name: 'delete_roles_id' }, { id: 16, permission_name: 'get_roles_manage_permissions' }, { id: 17, permission_name: 'post_roles_manage_permissions' }, { id: 18, permission_name: 'get_service_templates' }, { id: 19, permission_name: 'post_service_templates' }, { id: 20, permission_name: 'get_service_templates_search' }, { id: 21, permission_name: 'get_service_templates_id' }, { id: 22, permission_name: 'put_service_templates_id' }, { id: 23, permission_name: 'delete_service_templates_id' }, { id: 24, permission_name: 'get_service_templates_id_icon' }, { id: 25, permission_name: 'put_service_templates_id_icon' }, { id: 26, permission_name: 'get_service_templates_id_image' }, { id: 27, permission_name: 'put_service_templates_id_image' }, { id: 28, permission_name: 'get_service_templates_id_request' }, { id: 29, permission_name: 'put_service_templates_id_request' }, { id: 30, permission_name: 'get_service_categories' }, { id: 31, permission_name: 'post_service_categories' }, { id: 32, permission_name: 'get_service_categories_search' }, { id: 33, permission_name: 'get_service_categories_id' }, { id: 34, permission_name: 'put_service_categories_id' }, { id: 35, permission_name: 'delete_service_categories_id' }, { id: 36, permission_name: 'get_service_template_properties' }, { id: 37, permission_name: 'post_service_template_properties' }, { id: 38, permission_name: 'get_service_template_properties_search' }, { id: 39, permission_name: 'get_service_template_properties_id' }, { id: 40, permission_name: 'put_service_template_properties_id' }, { id: 41, permission_name: 'delete_service_template_properties_id' }, { id: 42, permission_name: 'get_service_instances' }, { id: 43, permission_name: 'get_service_instances_own' }, { id: 44, permission_name: 'get_service_instances_search' }, { id: 45, permission_name: 'get_service_instances_id' }, { id: 46, permission_name: 'put_service_instances_id' }, { id: 47, permission_name: 'delete_service_instances_id' }, { id: 48, permission_name: 'post_service_instances_id_approve' }, { id: 49, permission_name: 'post_service_instances_id_change_price' }, { id: 50, permission_name: 'post_service_instances_id_cancel' }, { id: 51, permission_name: 'post_service_instances_id_request_cancellation' }, { id: 52, permission_name: 'post_service_instances_id_add_charge' }, { id: 53, permission_name: 'get_service_instances_id_awaiting_charges' }, { id: 54, permission_name: 'post_service_instances_id_approve_charges' }, { id: 55, permission_name: 'post_service_instances_id_files' }, { id: 56, permission_name: 'get_service_instances_id_files' }, { id: 57, permission_name: 'delete_service_instances_id_files_fid' }, { id: 58, permission_name: 'get_service_instances_id_files_fid' }, { id: 59, permission_name: 'get_service_instance_properties' }, { id: 60, permission_name: 'post_service_instance_properties' }, { id: 61, permission_name: 'get_service_instance_properties_search' }, { id: 62, permission_name: 'get_service_instance_properties_id' }, { id: 63, permission_name: 'put_service_instance_properties_id' }, { id: 64, permission_name: 'delete_service_instance_properties_id' }, { id: 65, permission_name: 'get_service_instance_messages' }, { id: 66, permission_name: 'post_service_instance_messages' }, { id: 67, permission_name: 'get_service_instance_messages_search' }, { id: 68, permission_name: 'get_service_instance_messages_id' }, { id: 69, permission_name: 'put_service_instance_messages_id' }, { id: 70, permission_name: 'delete_service_instance_messages_id' }, { id: 71, permission_name: 'get_service_instance_cancellations' }, { id: 72, permission_name: 'post_service_instance_cancellations' }, { id: 73, permission_name: 'get_service_instance_cancellations_own' }, { id: 74, permission_name: 'get_service_instance_cancellations_search' }, { id: 75, permission_name: 'get_service_instance_cancellations_id' }, { id: 76, permission_name: 'put_service_instance_cancellations_id' }, { id: 77, permission_name: 'delete_service_instance_cancellations_id' }, { id: 78, permission_name: 'post_service_instance_cancellations_id_approve' }, { id: 79, permission_name: 'post_service_instance_cancellations_id_reject' }, { id: 80, permission_name: 'get_event_logs' }, { id: 81, permission_name: 'post_event_logs' }, { id: 82, permission_name: 'get_event_logs_search' }, { id: 83, permission_name: 'get_event_logs_id' }, { id: 84, permission_name: 'put_event_logs_id' }, { id: 85, permission_name: 'delete_event_logs_id' }, { id: 86, permission_name: 'get_email_templates' }, { id: 87, permission_name: 'post_email_templates' }, { id: 88, permission_name: 'get_email_templates_search' }, { id: 89, permission_name: 'get_email_templates_id' }, { id: 90, permission_name: 'put_email_templates_id' }, { id: 91, permission_name: 'delete_email_templates_id' }, { id: 92, permission_name: 'get_email_templates_id_roles' }, { id: 93, permission_name: 'put_email_templates_id_roles' }, { id: 94, permission_name: 'get_invoices' }, { id: 95, permission_name: 'get_invoices_own' }, { id: 96, permission_name: 'get_invoices_search' }, { id: 97, permission_name: 'get_invoices_id' }, { id: 98, permission_name: 'get_invoices_upcoming_userid' }, { id: 99, permission_name: 'post_invoices_id_refund' }, { id: 100, permission_name: 'get_system_options' }, { id: 101, permission_name: 'put_system_options' }, { id: 102, permission_name: 'get_system_options_id' }, { id: 103, permission_name: 'put_system_options_id' }, { id: 104, permission_name: 'get_system_options_file_id' }, { id: 105, permission_name: 'put_system_options_file_id' }, { id: 106, permission_name: 'post_charge_id_approve' }, { id: 107, permission_name: 'post_charge_id_cancel' }, { id: 108, permission_name: 'post_auth_token' }, { id: 109, permission_name: 'post_auth_session_clear' }, { id: 110, permission_name: 'post_auth_reset_password' }, { id: 111, permission_name: 'get_auth_reset_password_uid_token' }, { id: 112, permission_name: 'post_auth_reset_password_uid_token' }, { id: 113, permission_name: 'get_analytics_data' }, { id: 114, permission_name: 'get_analytics_properties_id' }, { id: 115, permission_name: 'get_permissions' }, { id: 116, permission_name: 'can_administrate' }, { id: 117, permission_name: 'can_manage' } ] request.get('/api/v1/permissions') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, sampleRoles, "Retrieve list of Permissions", function(err, res){ assert.end(); })) });
test('GET /api/v1/service-instances', function (assert) { let data = [ { description: 'demo service instance 1', id: 1, name: 'service_instance_1', payment_plan: null, references: { charge_items: [], service_instance_messages: [], service_instance_properties: [ { id: 1, name: 'service_instance_property_1', parent_id: 1, prop_class: null, prop_description: 'demo service instance property 1', prop_label: 'What is instance property 1?', value: 'you decide' }, { id: 2, name: 'service_instance_property_2', parent_id: 1, prop_class: null, prop_description: 'demo service instance property 2', prop_label: 'What is instance property 2?', value: 'you decide' }, { id: 3, name: 'service_instance_property_3', parent_id: 1, prop_class: null, prop_description: 'demo service instance property 3', prop_label: 'What is instance property 3?', value: 'you decide' } ], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, requested_by: 1, service_id: 1, status: 'requested', subscription_id: null, user_id: 1 }, { description: 'demo service instance 2', id: 2, name: 'service_instance_2', payment_plan: null, references: { charge_items: [], service_instance_messages: [], service_instance_properties: [ { id: 4, name: 'service_instance_property_4', parent_id: 2, prop_class: null, prop_description: 'demo service instance property 4', prop_label: 'What is instance property 4?', value: 'you decide' } ], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, requested_by: 1, service_id: 2, status: 'requested', subscription_id: null, user_id: 1 }, { description: 'demo service instance 2', id: 3, name: 'service_instance_2', payment_plan: null, references: { charge_items: [], service_instance_messages: [], service_instance_properties: [], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, requested_by: 1, service_id: 3, status: 'requested', subscription_id: null, user_id: 1 } ]; request.get('/api/v1/service-instances') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, data, "Retrieve list of instances", function(err, res){ assert.end(); })) });
test('GET /api/v1/invoices', function (assert) { let data = [ { amount: null, category_id: null, created_by: 1, currency: 'usd', description: 'demo service 1', details: 'nitty gritty', id: 1, interval: null, interval_count: 1, name: 'service_1', overhead: null, published: true, references: { service_categories: [], service_template_properties: [ { id: 1, name: 'service_template_property_1', parent_id: 1, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 1', prop_input_type: 'text', prop_label: 'What is template property 1?', prop_values: null, required: true, value: 'you decide' }, { id: 2, name: 'service_template_property_2', parent_id: 1, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 2', prop_input_type: 'text', prop_label: 'What is template property 2?', prop_values: null, required: true, value: 'you decide' }, { id: 3, name: 'service_template_property_3', parent_id: 1, private: true, prompt_user: false, prop_class: null, prop_description: 'demo service template property 3', prop_input_type: 'text', prop_label: 'What is template property 3?', prop_values: null, required: false, value: 'you decide' } ], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null }, { amount: null, category_id: null, created_by: 2, currency: 'usd', description: 'demo service 2', details: 'such description', id: 2, interval: null, interval_count: 1, name: 'service_2', overhead: null, published: true, references: { service_categories: [], service_template_properties: [ { id: 4, name: 'service_template_property_4', parent_id: 2, private: false, prompt_user: true, prop_class: null, prop_description: 'demo service template property 4', prop_input_type: 'text', prop_label: 'What is template property 4?', prop_values: null, required: true, value: 'you decide' } ], users: [ { customer_id: null, email: 'user', id: 2, last_login: null, name: null, phone: null, role_id: 3, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null }, { amount: null, category_id: null, created_by: 3, currency: 'usd', description: 'demo service 3', details: null, id: 3, interval: null, interval_count: 1, name: 'service_2', overhead: null, published: true, references: { service_categories: [], service_template_properties: [], users: [ { customer_id: null, email: 'staff', id: 3, last_login: null, name: null, phone: null, role_id: 2, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null }, { amount: null, category_id: null, created_by: 1, currency: 'usd', description: 'demo service 4', details: null, id: 4, interval: null, interval_count: 1, name: 'service_3', overhead: null, published: true, references: { service_categories: [], service_template_properties: [], users: [ { customer_id: null, email: 'admin', id: 1, last_login: null, name: null, phone: null, role_id: 1, status: 'active' } ] }, statement_descriptor: null, subscription_prorate: true, trial_period_days: null } ]; request.get('/api/v1/invoices') .set(baseHeaders) .expect(200) .expect('Content-Type', /json/) .end(responseHandler(assert, data, "Retrieve list of invoices", function(err, res){ assert.end(); })) });