qbwc_requests 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -2
  3. data/lib/qbwc_requests/{qbwc/request/v07/account.rb → account/v07/add.rb} +3 -3
  4. data/lib/qbwc_requests/account/v07/query.rb +9 -0
  5. data/lib/qbwc_requests/base.rb +76 -0
  6. data/lib/qbwc_requests/bill/v07/add.rb +11 -0
  7. data/lib/qbwc_requests/bill/v07/query.rb +9 -0
  8. data/lib/qbwc_requests/customer/v07/add.rb +39 -0
  9. data/lib/qbwc_requests/customer/v07/query.rb +9 -0
  10. data/lib/qbwc_requests/{qbwc/request/v07/estimate.rb → estimate/v07/add.rb} +5 -4
  11. data/lib/qbwc_requests/estimate/v07/query.rb +9 -0
  12. data/lib/qbwc_requests/factory.rb +32 -0
  13. data/lib/qbwc_requests/general_detail_report/v07/query.rb +9 -0
  14. data/lib/qbwc_requests/{qbwc/request/v07/invoice.rb → invoice/v07/add.rb} +5 -5
  15. data/lib/qbwc_requests/invoice/v07/query.rb +9 -0
  16. data/lib/qbwc_requests/item/v07/query.rb +9 -0
  17. data/lib/qbwc_requests/{qbwc/request/v07/item_discount.rb → item_discount/v07/add.rb} +5 -4
  18. data/lib/qbwc_requests/item_discount/v07/query.rb +9 -0
  19. data/lib/qbwc_requests/{qbwc/request/v07/item_group.rb → item_group/v07/add.rb} +4 -3
  20. data/lib/qbwc_requests/item_group/v07/query.rb +9 -0
  21. data/lib/qbwc_requests/{qbwc/request/v07/item_non_inventory.rb → item_non_inventory/v07/add.rb} +5 -4
  22. data/lib/qbwc_requests/item_non_inventory/v07/query.rb +9 -0
  23. data/lib/qbwc_requests/{qbwc/request/v07/item_other_charge.rb → item_other_charge/v07/add.rb} +4 -3
  24. data/lib/qbwc_requests/item_other_charge/v07/query.rb +9 -0
  25. data/lib/qbwc_requests/{qbwc/request/v07/item_payment.rb → item_payment/v07/add.rb} +4 -3
  26. data/lib/qbwc_requests/item_payment/v07/query.rb +9 -0
  27. data/lib/qbwc_requests/{qbwc/request/v07/item_service.rb → item_service/v07/add.rb} +4 -3
  28. data/lib/qbwc_requests/item_service/v07/query.rb +9 -0
  29. data/lib/qbwc_requests/{qbwc/request/v07/item_subtotal.rb → item_subtotal/v07/add.rb} +5 -4
  30. data/lib/qbwc_requests/item_subtotal/v07/query.rb +9 -0
  31. data/lib/qbwc_requests/ordered_fields.rb +81 -0
  32. data/lib/qbwc_requests/purchase_order/v07/add.rb +33 -0
  33. data/lib/qbwc_requests/{qbwc/request/v07/purchase_order.rb → purchase_order/v07/mod.rb} +10 -14
  34. data/lib/qbwc_requests/purchase_order/v07/query.rb +9 -0
  35. data/lib/qbwc_requests/sub_models/address.rb +27 -0
  36. data/lib/qbwc_requests/vendor/v07/add.rb +44 -0
  37. data/lib/qbwc_requests/vendor/v07/mod.rb +44 -0
  38. data/lib/qbwc_requests/vendor/v07/query.rb +9 -0
  39. data/lib/qbwc_requests/vendor/v13/add.rb +44 -0
  40. data/lib/qbwc_requests/vendor/v13/mod.rb +44 -0
  41. data/lib/qbwc_requests/vendor/v13/query.rb +9 -0
  42. data/lib/qbwc_requests/version.rb +1 -1
  43. data/lib/qbwc_requests/{qbwc/xml_actions.rb → xml_actions.rb} +2 -9
  44. data/lib/qbwc_requests.rb +51 -5
  45. data/qbwc_requests.gemspec +4 -2
  46. data/quickbook/dtd/qbxmlops60.dtd +3043 -0
  47. data/quickbook/dtd/qbxmlops60_2.dtd +3019 -0
  48. data/scripts/dtd_to_classes.rb +3 -0
  49. data/spec/account_qbxml_spec.rb +42 -0
  50. data/spec/{qbwc/request/v07/bill_spec.rb → bill_qbxml_spec.rb} +10 -5
  51. data/spec/customer_qbxml_spec.rb +57 -0
  52. data/spec/{qbwc/request/v07/estimate_spec.rb → estimate_qbxml_spec.rb} +19 -8
  53. data/spec/general_detail_report_qbxml_spec.rb +9 -0
  54. data/spec/{qbwc/request/v07/invoice_spec.rb → invoice_qbxml_spec.rb} +11 -9
  55. data/spec/{qbwc/request/v07/item_discount_spec.rb → item_discount_qbxml_spec.rb} +10 -8
  56. data/spec/{qbwc/request/v07/item_group_spec.rb → item_group_qbxml_spec.rb} +9 -7
  57. data/spec/{qbwc/request/v07/item_non_inventory_spec.rb → item_non_inventory_qbxml_spec.rb} +9 -7
  58. data/spec/{qbwc/request/v07/item_other_charge_spec.rb → item_other_charge_qbxml_spec.rb} +10 -8
  59. data/spec/{qbwc/request/v07/item_payment_spec.rb → item_payment_qbxml_spec.rb} +10 -7
  60. data/spec/item_qbxml_spec.rb +9 -0
  61. data/spec/{qbwc/request/v07/item_service_spec.rb → item_service_qbxml_spec.rb} +9 -7
  62. data/spec/{qbwc/request/v07/item_subtotal_spec.rb → item_subtotal_qbxml_spec.rb} +12 -10
  63. data/spec/job_report_qbxml_spec.rb +7 -0
  64. data/spec/{qbwc/request/v07/purchase_orders_spec.rb → purchase_order_qbxml_spec.rb} +11 -10
  65. data/spec/spec_helper.rb +5 -0
  66. data/spec/support/expectations/field_validations.rb +2 -2
  67. data/spec/support/expectations/xml_equal.rb +4 -2
  68. data/spec/support/shared_examples_for_xml_requests.rb +18 -20
  69. data/spec/vendor_qbxml_spec.rb +111 -0
  70. metadata +113 -68
  71. data/lib/qbwc_requests/qbwc/ordered_fields.rb +0 -35
  72. data/lib/qbwc_requests/qbwc/qbwc.rb +0 -2
  73. data/lib/qbwc_requests/qbwc/request/base.rb +0 -77
  74. data/lib/qbwc_requests/qbwc/request/v07/bill.rb +0 -9
  75. data/lib/qbwc_requests/qbwc/request/v07/customer.rb +0 -29
  76. data/lib/qbwc_requests/qbwc/request/v07/general_detail_report.rb +0 -11
  77. data/lib/qbwc_requests/qbwc/request/v07/item.rb +0 -11
  78. data/lib/qbwc_requests/qbwc/request/v07/job_report.rb +0 -3
  79. data/lib/qbwc_requests/qbwc/request/v07/vendor.rb +0 -31
  80. data/lib/qbwc_requests/qbwc/request/v07/vendor_address.rb +0 -17
  81. data/spec/qbwc/request/base_spec.rb +0 -61
  82. data/spec/qbwc/request/v07/account_spec.rb +0 -32
  83. data/spec/qbwc/request/v07/customer_spec.rb +0 -32
  84. data/spec/qbwc/request/v07/general_detail_report_spec.rb +0 -7
  85. data/spec/qbwc/request/v07/item_spec.rb +0 -7
  86. data/spec/qbwc/request/v07/job_report_spec.rb +0 -7
  87. data/spec/qbwc/request/v07/vendor_spec.rb +0 -31
  88. data/spec/qbwc/request/xml_actions_spec.rb +0 -28
@@ -1,61 +0,0 @@
1
- require 'spec_helper'
2
-
3
- class GenericBase < Qbwc::Request::Base
4
- field :vendor_ref
5
- field :ref_number
6
- field :memo
7
- field :purchase_order_line_add
8
- end
9
-
10
- describe GenericBase do
11
-
12
- describe '#initialize' do
13
-
14
- it 'should deal with nil values' do
15
- expect {
16
- GenericBase.new(nil)
17
- }.to_not raise_error
18
- end
19
-
20
- end
21
-
22
-
23
- describe '#add' do
24
-
25
- let(:parameters) {
26
- {
27
- :vendor_ref => {
28
- :list_ID => nil
29
- },
30
- :ref_number => nil,
31
- :memo => nil,
32
- :purchase_order_line_add => []
33
- }
34
- }
35
-
36
- it 'should not raise error for nil values' do
37
- expect {
38
- GenericBase.new(parameters).add("request_id")
39
- }.to_not raise_error
40
- end
41
-
42
- it 'should generate a xml with just the filled fields' do
43
-
44
- expected_xml = <<-XML
45
- <?xml version='1.0' encoding='utf-8'?>
46
- <?qbxml version="7.0"?>
47
- <QBXML>
48
- <QBXMLMsgsRq onError="stopOnError">
49
- <GenericBaseAddRq requestID="request_id">
50
- <GenericBaseAdd></GenericBaseAdd>
51
- </GenericBaseAddRq>
52
- </QBXMLMsgsRq>
53
- </QBXML>
54
- XML
55
- add_xml = GenericBase.new(parameters).add("request_id")
56
- expect( add_xml ).to be_xml_equal_to expected_xml
57
- end
58
-
59
- end
60
-
61
- end
@@ -1,32 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe Qbwc::Request::V07::Account do
4
-
5
- it_behaves_like 'queryable'
6
-
7
- it { is_expected.to validate_field_presence_of :name }
8
-
9
- describe "add" do
10
-
11
- let(:account){ Qbwc::Request::V07::Account.new(name: 'a') }
12
-
13
- it "should create an add account xml" do
14
- xml = <<-XML
15
- <?xml version='1.0' encoding='utf-8'?>
16
- <?qbxml version="7.0"?>
17
- <QBXML>
18
- <QBXMLMsgsRq onError="stopOnError">
19
- <AccountAddRq requestID="request_id">
20
- <AccountAdd>
21
- <Name>a</Name>
22
- </AccountAdd>
23
- </AccountAddRq>
24
- </QBXMLMsgsRq>
25
- </QBXML>
26
- XML
27
- expect( account.add("request_id") ).to be_xml_equal_to xml
28
- end
29
-
30
- end
31
-
32
- end
@@ -1,32 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe Qbwc::Request::V07::Customer do
4
-
5
- it_behaves_like 'queryable'
6
-
7
- it { is_expected.to validate_field_presence_of :name }
8
-
9
- describe "add" do
10
-
11
- let(:customer){ Qbwc::Request::V07::Customer.new(name: 'a') }
12
-
13
- it "should create an add customer xml" do
14
- xml = <<-XML
15
- <?xml version='1.0' encoding='utf-8'?>
16
- <?qbxml version="7.0"?>
17
- <QBXML>
18
- <QBXMLMsgsRq onError="stopOnError">
19
- <CustomerAddRq requestID="request_id">
20
- <CustomerAdd>
21
- <Name>a</Name>
22
- </CustomerAdd>
23
- </CustomerAddRq>
24
- </QBXMLMsgsRq>
25
- </QBXML>
26
- XML
27
- expect( customer.add("request_id") ).to be_xml_equal_to xml
28
- end
29
-
30
- end
31
-
32
- end
@@ -1,7 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe Qbwc::Request::V07::GeneralDetailReport do
4
-
5
- it_behaves_like 'queryable'
6
-
7
- end
@@ -1,7 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Qbwc::Request::V07::Item do
4
-
5
- it_behaves_like 'queryable'
6
-
7
- end
@@ -1,7 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Qbwc::Request::V07::JobReport do
4
-
5
- it_behaves_like 'queryable'
6
-
7
- end
@@ -1,31 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe Qbwc::Request::V07::Vendor do
4
-
5
- it_behaves_like 'queryable'
6
-
7
- it { is_expected.to validate_field_presence_of :name }
8
-
9
- describe "add" do
10
-
11
- let(:vendor){ Qbwc::Request::V07::Vendor.new(name: 'a') }
12
-
13
- it "should create an add vendor xml" do
14
- xml = <<-XML
15
- <?xml version='1.0' encoding='utf-8'?>
16
- <?qbxml version="7.0"?>
17
- <QBXML>
18
- <QBXMLMsgsRq onError="stopOnError">
19
- <VendorAddRq requestID="request_id">
20
- <VendorAdd>
21
- <Name>a</Name>
22
- </VendorAdd>
23
- </VendorAddRq>
24
- </QBXMLMsgsRq>
25
- </QBXML>
26
- XML
27
- expect( vendor.add("request_id") ).to be_xml_equal_to xml
28
- end
29
-
30
- end
31
- end
@@ -1,28 +0,0 @@
1
- require 'spec_helper'
2
-
3
- class GenericBase < Qbwc::Request::Base
4
- end
5
-
6
- describe Qbwc::XmlActions do
7
-
8
- describe '#query' do
9
-
10
- it 'should generate a xml with just the filled fields' do
11
- query_xml = GenericBase.query(nil, {"requestID" => "request_id" })
12
- expected_xml = <<-XML
13
- <?xml version='1.0' encoding='utf-8'?>
14
- <?qbxml version="7.0"?>
15
- <QBXML>
16
- <QBXMLMsgsRq onError="stopOnError">
17
- <GenericBaseQueryRq requestID="request_id">
18
- <MaxReturned>2000</MaxReturned>
19
- </GenericBaseQueryRq>
20
- </QBXMLMsgsRq>
21
- </QBXML>
22
- XML
23
- expect( query_xml ).to be_xml_equal_to expected_xml
24
- end
25
-
26
- end
27
-
28
- end