=begin
#Fatture in Cloud API v2 - API Reference

#Connect your software with Fatture in Cloud, the invoicing platform chosen by more than 400.000 businesses in Italy.   The Fatture in Cloud API is based on REST, and makes possible to interact with the user related data prior authorization via OAuth2 protocol.

The version of the OpenAPI document: 2.0.7
Contact: info@fattureincloud.it
Generated by: https://openapi-generator.tech
OpenAPI Generator version: 5.3.0

=end

require 'spec_helper'
require 'json'

# Unit tests for FattureInCloud_Ruby_Sdk::CompaniesApi
# Automatically generated by openapi-generator (https://openapi-generator.tech)
# Please update as you see appropriate
describe 'CompaniesApi' do
  before do
    # run before each test
    @api_instance = FattureInCloud_Ruby_Sdk::CompaniesApi.new

    @get_company_info_response_obj = {"data":{"id":12345,"name":"Studio Commercialista","email":"mario.rossi@example.com","type":"accountant","fic":true,"fic_plan_name":"premium_plus","fic_signup_date":"2013-11-01","fic_license_expire":"2030-12-31","use_fic":true,"fic_need_setup":false,"fic_license_type":"coupon_b","dic":true,"dic_plan_name":"trial","dic_signup_date":"2018-03-26","dic_license_expire":"2022-12-31","use_dic":true,"dic_license_type":nil,"registration_service":"fic","can_use_coupon":false,"access_info":{"role":"master","through_accountant":false,"permissions":{"fic_situation":"read","fic_clients":"write","fic_suppliers":"write","fic_products":"write","fic_issued_documents":"detailed","fic_issued_documents_detailed":{"quotes":"write","proformas":"write","invoices":"write","receipts":"write","delivery_notes":"write","credit_notes":"write","orders":"write","work_reports":"write","supplier_orders":"write","self_invoices":"write"},"fic_received_documents":"write","fic_receipts":"write","fic_calendar":"write","fic_archive":"write","fic_taxes":"write","fic_stock":"write","fic_cashbook":"write","fic_settings":"write","fic_emails":"read","dic_employees":"none","dic_timesheet":"none","dic_settings":"none","fic_invoice_trading":"none","fic_export":"write","fic_import_clients_suppliers":"write","fic_import_products":"write","fic_import_issued_documents":"none","fic_import_bankstatements":"none","fic_recurring":"write","fic_riba":"write"}},"plan_info":{"limits":{"clients":5000,"suppliers":5000,"products":5000,"documents":3000},"functions":{"document_attachments":true,"archive":true,"payment_notifications":true,"paypal":true,"receipts":true,"e_invoice":true,"genius":true,"stock":true,"smtp":true,"mail_tracking":true,"subaccounts":true,"tessera_sanitaria":true,"recurring":true,"sofort":false,"cerved":true,"ts_digital":true,"ts_pay":true,"ts_invoice_trading":true},"functions_status":{"ts_digital":{"active":true},"ts_pay":{"active":true}}},"is_accountant":true,"accountant_id":12345,"fic_payment_subject":"client","dic_payment_subject":"client"}}
    allow(@api_instance).to receive(:get_company_info) {@get_company_info_response_obj}
  end

  after do
    # run after each test
  end

  describe 'test an instance of CompaniesApi' do
    it 'should create an instance of CompaniesApi' do
      expect(@api_instance).to be_instance_of(FattureInCloud_Ruby_Sdk::CompaniesApi)
    end
  end

  # unit tests for get_company_info
  # Get Company Info
  # Gets the company detailed info.
  # @param company_id The ID of the company.
  # @param [Hash] opts the optional parameters
  # @return [GetCompanyInfoResponse]
  describe 'get_company_info test' do
    it 'should work' do
      response = @api_instance.get_company_info(2)
      response_obj = JSON.parse(response.to_json, object_class: OpenStruct)
      expected_json = @get_company_info_response_obj.to_json
      actual_json = response.to_json

      expect(actual_json).to eq(expected_json)
    end
  end

end