gooddata 0.6.0.pre10 → 0.6.0.pre11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (111) hide show
  1. checksums.yaml +7 -0
  2. data/.autotest +2 -0
  3. data/.gitignore +3 -0
  4. data/.travis.yml +7 -0
  5. data/.yardopts +3 -2
  6. data/README.md +8 -145
  7. data/Rakefile +23 -6
  8. data/bin/gooddata +3 -400
  9. data/doc/pages/GET_STARTED.md +5 -4
  10. data/doc/pages/HOMEPAGE.md +2 -0
  11. data/doc/pages/TUTORIALS.md +3 -3
  12. data/doc/pages/tutorial/BRICKS.md +4 -1
  13. data/doc/pages/tutorial/CREATING_A_MODEL.md +2 -0
  14. data/doc/pages/tutorial/CRUNCHING_NUMBERS.md +1 -3
  15. data/doc/pages/tutorial/TEST_DRIVEN_DEVELOPMENT.md +2 -0
  16. data/doc/pages/tutorial/YOUR_FIRST_PROJECT.md +4 -3
  17. data/doc/templates/default/class/setup.rb +1 -0
  18. data/doc/templates/default/method_details/setup.rb +2 -1
  19. data/doc/templates/default/module/setup.rb +1 -1
  20. data/gooddata +7 -0
  21. data/gooddata.gemspec +1 -0
  22. data/lib/gooddata.rb +15 -4
  23. data/lib/gooddata/bricks/base_downloader.rb +1 -0
  24. data/lib/gooddata/bricks/brick.rb +17 -12
  25. data/lib/gooddata/bricks/bricks.rb +7 -0
  26. data/lib/gooddata/bricks/middleware/base_middleware.rb +13 -0
  27. data/lib/gooddata/bricks/middleware/bench_middleware.rb +1 -0
  28. data/lib/gooddata/bricks/middleware/bulk_salesforce_middleware.rb +2 -1
  29. data/lib/gooddata/bricks/middleware/fs_upload_middleware.rb +30 -0
  30. data/lib/gooddata/bricks/middleware/gooddata_middleware.rb +10 -8
  31. data/lib/gooddata/bricks/middleware/logger_middleware.rb +3 -2
  32. data/lib/gooddata/bricks/middleware/middleware.rb +4 -11
  33. data/lib/gooddata/bricks/middleware/restforce_middleware.rb +2 -0
  34. data/lib/gooddata/bricks/middleware/stdout_middleware.rb +2 -0
  35. data/lib/gooddata/bricks/middleware/twitter_middleware.rb +2 -0
  36. data/lib/gooddata/cli/cli.rb +28 -0
  37. data/lib/gooddata/cli/commands/api_cmd.rb +30 -0
  38. data/lib/gooddata/cli/commands/auth_cmd.rb +17 -0
  39. data/lib/gooddata/cli/commands/console_cmd.rb +17 -0
  40. data/lib/gooddata/cli/commands/process_cmd.rb +55 -0
  41. data/lib/gooddata/cli/commands/profile_cmd.rb +22 -0
  42. data/lib/gooddata/cli/commands/project_cmd.rb +143 -0
  43. data/lib/gooddata/cli/commands/run_ruby_cmd.rb +55 -0
  44. data/lib/gooddata/cli/commands/scaffold_cmd.rb +32 -0
  45. data/lib/gooddata/cli/hooks.rb +43 -0
  46. data/lib/gooddata/cli/shared.rb +51 -0
  47. data/lib/gooddata/client.rb +37 -24
  48. data/lib/gooddata/commands/api.rb +1 -0
  49. data/lib/gooddata/commands/auth.rb +8 -4
  50. data/lib/gooddata/commands/base.rb +2 -80
  51. data/lib/gooddata/commands/commands.rb +4 -9
  52. data/lib/gooddata/commands/datasets.rb +1 -1
  53. data/lib/gooddata/commands/runners.rb +6 -7
  54. data/lib/gooddata/connection.rb +40 -35
  55. data/lib/gooddata/core/core.rb +8 -0
  56. data/lib/gooddata/exceptions.rb +1 -1
  57. data/lib/gooddata/goodzilla/goodzilla.rb +12 -0
  58. data/lib/gooddata/models/attribute.rb +2 -0
  59. data/lib/gooddata/models/dashboard.rb +9 -2
  60. data/lib/gooddata/models/data_result.rb +3 -256
  61. data/lib/gooddata/models/data_set.rb +2 -0
  62. data/lib/gooddata/models/display_form.rb +2 -0
  63. data/lib/gooddata/models/empty_result.rb +37 -0
  64. data/lib/gooddata/models/fact.rb +2 -0
  65. data/lib/gooddata/models/metadata.rb +6 -1
  66. data/lib/gooddata/models/metric.rb +2 -1
  67. data/lib/gooddata/{model.rb → models/model.rb} +1 -1
  68. data/lib/gooddata/models/models.rb +4 -0
  69. data/lib/gooddata/models/project.rb +10 -6
  70. data/lib/gooddata/models/report.rb +6 -0
  71. data/lib/gooddata/models/report_data_result.rb +167 -0
  72. data/lib/gooddata/models/report_definition.rb +2 -0
  73. data/lib/gooddata/version.rb +15 -1
  74. data/spec/bricks/bricks_spec.rb +39 -0
  75. data/spec/helpers/blueprint_helper.rb +1 -1
  76. data/spec/helpers/connection_helper.rb +12 -0
  77. data/spec/{project_build_and_update_spec.rb → integration/command_projects_spec.rb} +0 -3
  78. data/spec/{full_project_spec.rb → integration/full_project_spec.rb} +0 -3
  79. data/spec/logging_in_logging_out_spec.rb +17 -0
  80. data/spec/spec_helper.rb +6 -1
  81. data/spec/unit/bricks/bricks_spec.rb +23 -0
  82. data/spec/unit/bricks/middleware/bench_middleware_spec.rb +9 -0
  83. data/spec/unit/bricks/middleware/bulk_salesforce_middleware_spec.rb +9 -0
  84. data/spec/unit/bricks/middleware/gooddata_middleware_spec.rb +9 -0
  85. data/spec/unit/bricks/middleware/logger_middleware_spec.rb +9 -0
  86. data/spec/unit/bricks/middleware/restforce_middleware_spec.rb +9 -0
  87. data/spec/unit/bricks/middleware/stdout_middleware_spec.rb +9 -0
  88. data/spec/unit/bricks/middleware/twitter_middleware_spec.rb +9 -0
  89. data/spec/unit/cli/cli_spec.rb +11 -0
  90. data/spec/unit/cli/commands/cmd_api_spec.rb +11 -0
  91. data/spec/unit/cli/commands/cmd_auth_spec.rb +11 -0
  92. data/spec/unit/cli/commands/cmd_process_spec.rb +11 -0
  93. data/spec/unit/cli/commands/cmd_profile_spec.rb +11 -0
  94. data/spec/unit/cli/commands/cmd_project_spec.rb +11 -0
  95. data/spec/unit/cli/commands/cmd_run_ruby_spec.rb +11 -0
  96. data/spec/unit/cli/commands/cmd_scaffold_spec.rb +11 -0
  97. data/spec/unit/commands/command_api_spec.rb +12 -0
  98. data/spec/unit/commands/command_auth_spec.rb +12 -0
  99. data/spec/unit/commands/command_dataset_spec.rb +12 -0
  100. data/spec/unit/commands/command_process_spec.rb +12 -0
  101. data/spec/unit/commands/command_profile_spec.rb +12 -0
  102. data/spec/unit/commands/command_projects_spec.rb +12 -0
  103. data/spec/unit/commands/command_scaffold_spec.rb +12 -0
  104. data/spec/unit/core/connection_spec.rb +25 -0
  105. data/spec/unit/core/core_spec.rb +7 -0
  106. data/spec/{goodzilla_spec.rb → unit/godzilla/goodzilla_spec.rb} +0 -0
  107. data/spec/{blueprint_spec.rb → unit/model/blueprint_spec.rb} +3 -3
  108. data/spec/{merging_blueprints_spec.rb → unit/model/model_spec.rb} +28 -26
  109. data/spec/{model_spec.rb → unit/model/project_blueprint_spec.rb} +0 -0
  110. data/spec/{model_dsl_spec.rb → unit/model/schema_builder_spec.rb} +1 -1
  111. metadata +77 -61
@@ -0,0 +1,9 @@
1
+ require 'gooddata/bricks/brick'
2
+ require 'gooddata/bricks/bricks'
3
+ require 'gooddata/bricks/middleware/twitter_middleware'
4
+
5
+ describe GoodData::Bricks::TwitterMiddleware do
6
+ it "Has GoodData::Bricks::TwitterMiddleware class" do
7
+ GoodData::Bricks::TwitterMiddleware.should_not == nil
8
+ end
9
+ end
@@ -0,0 +1,11 @@
1
+ require 'gooddata/cli/cli'
2
+
3
+ describe GoodData::CLI do
4
+ it "Has GoodData::CLI class" do
5
+ GoodData::CLI.should_not == nil
6
+ end
7
+
8
+ it "Has GoodData::CLI::main() working" do
9
+ GoodData::CLI.main([])
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ require 'gooddata/cli/cli'
2
+
3
+ describe GoodData::CLI do
4
+ it "Has working 'api' command" do
5
+ args = [
6
+ 'api'
7
+ ]
8
+
9
+ GoodData::CLI.main(args)
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ require 'gooddata/cli/cli'
2
+
3
+ describe GoodData::CLI do
4
+ it "Has working 'auth' command" do
5
+ args = [
6
+ 'auth'
7
+ ]
8
+
9
+ GoodData::CLI.main(args)
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ require 'gooddata/cli/cli'
2
+
3
+ describe GoodData::CLI do
4
+ it "Has working 'process' command" do
5
+ args = [
6
+ 'process'
7
+ ]
8
+
9
+ GoodData::CLI.main(args)
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ require 'gooddata/cli/cli'
2
+
3
+ describe GoodData::CLI do
4
+ it "Has working 'profile' command" do
5
+ args = [
6
+ 'profile'
7
+ ]
8
+
9
+ GoodData::CLI.main(args)
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ require 'gooddata/cli/cli'
2
+
3
+ describe GoodData::CLI do
4
+ it "Has working 'project' command" do
5
+ args = [
6
+ 'project'
7
+ ]
8
+
9
+ GoodData::CLI.main(args)
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ require 'gooddata/cli/cli'
2
+
3
+ describe GoodData::CLI do
4
+ it "Has working 'run_ruby' command" do
5
+ args = [
6
+ 'run_ruby'
7
+ ]
8
+
9
+ GoodData::CLI.main(args)
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ require 'gooddata/cli/cli'
2
+
3
+ describe GoodData::CLI do
4
+ it "Has working 'scaffold' command" do
5
+ args = [
6
+ 'scaffold'
7
+ ]
8
+
9
+ GoodData::CLI.main(args)
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ require 'gooddata/commands/api'
2
+
3
+ describe GoodData::Command::Api do
4
+ before(:each) do
5
+ @connection = ConnectionHelper::create_default_connection
6
+ end
7
+
8
+ it "Is Possible to create GoodData::Command::Profile instance" do
9
+ cmd = GoodData::Command::Api.new()
10
+ cmd.should be_a(GoodData::Command::Api)
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'gooddata/commands/auth'
2
+
3
+ describe GoodData::Command::Auth do
4
+ before(:each) do
5
+ @connection = ConnectionHelper::create_default_connection
6
+ end
7
+
8
+ it "Is Possible to create GoodData::Command::Auth instance" do
9
+ cmd = GoodData::Command::Auth.new()
10
+ cmd.should be_a(GoodData::Command::Auth)
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'gooddata/commands/datasets'
2
+
3
+ describe GoodData::Command::Datasets do
4
+ before(:each) do
5
+ @connection = ConnectionHelper::create_default_connection
6
+ end
7
+
8
+ it "Is Possible to create GoodData::Command::Datasets instance" do
9
+ cmd = GoodData::Command::Datasets.new()
10
+ cmd.should be_a(GoodData::Command::Datasets)
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'gooddata/commands/process'
2
+
3
+ describe GoodData::Command::Process do
4
+ before(:each) do
5
+ @connection = ConnectionHelper::create_default_connection
6
+ end
7
+
8
+ it "Is Possible to create GoodData::Command::Process instance" do
9
+ cmd = GoodData::Command::Process.new()
10
+ cmd.should be_a(GoodData::Command::Process)
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'gooddata/commands/profile'
2
+
3
+ describe GoodData::Command::Profile do
4
+ before(:each) do
5
+ @connection = ConnectionHelper::create_default_connection
6
+ end
7
+
8
+ it "Is Possible to create GoodData::Command::Profile instance" do
9
+ cmd = GoodData::Command::Profile.new()
10
+ cmd.should be_a(GoodData::Command::Profile)
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'gooddata/commands/projects'
2
+
3
+ describe GoodData::Command::Projects do
4
+ before(:each) do
5
+ @connection = ConnectionHelper::create_default_connection
6
+ end
7
+
8
+ it "Is Possible to create GoodData::Command::Projects instance" do
9
+ cmd = GoodData::Command::Projects.new()
10
+ cmd.should be_a(GoodData::Command::Projects)
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'gooddata/commands/scaffold'
2
+
3
+ describe GoodData::Command::Scaffold do
4
+ before(:each) do
5
+ @connection = ConnectionHelper::create_default_connection
6
+ end
7
+
8
+ it "Is Possible to create GoodData::Command::Scaffold instance" do
9
+ cmd = GoodData::Command::Scaffold.new()
10
+ cmd.should be_a(GoodData::Command::Scaffold)
11
+ end
12
+ end
@@ -0,0 +1,25 @@
1
+ require 'gooddata/connection'
2
+
3
+ describe GoodData::Connection do
4
+ before(:all) do
5
+ USERNAME = DEFAULT_USERNAME
6
+ PASSWORD = DEFAULT_PASSWORD
7
+ end
8
+
9
+ it "Has DEFAULT_URL defined" do
10
+ GoodData::Connection::DEFAULT_URL.should be_a(String)
11
+ end
12
+
13
+ it "Has LOGIN_PATH defined" do
14
+ GoodData::Connection::LOGIN_PATH.should be_a(String)
15
+ end
16
+
17
+ it "Has TOKEN_PATH defined" do
18
+ GoodData::Connection::TOKEN_PATH.should be_a(String)
19
+ end
20
+
21
+ it "Connects using username and password" do
22
+ c = ConnectionHelper::create_default_connection(USERNAME, PASSWORD)
23
+ c.should be_a(GoodData::Connection)
24
+ end
25
+ end
@@ -0,0 +1,7 @@
1
+ require 'gooddata/core/core'
2
+
3
+ describe GoodData::Core do
4
+ it "Has GoodData::Core class" do
5
+ GoodData::Core.should_not be(nil)
6
+ end
7
+ end
@@ -1,5 +1,5 @@
1
- require 'gooddata/model'
2
1
  require 'pry'
2
+ require 'gooddata/models/model'
3
3
 
4
4
  describe GoodData::Model::ProjectBlueprint do
5
5
 
@@ -80,9 +80,9 @@ describe GoodData::Model::ProjectBlueprint do
80
80
  }
81
81
  ]})
82
82
 
83
- # @valid_blueprint = blueprint = BlueprintHelper.blueprint_from_file(File.join(File.dirname(__FILE__), 'data', 'blueprint_valid.json'))
83
+ # @valid_blueprint = blueprint = BlueprintHelper.blueprint_from_file(File.join(File.dirname(__FILE__), '../data', 'blueprint_valid.json'))
84
84
 
85
- # @invalid_blueprint = BlueprintHelper.blueprint_from_file(File.join(File.dirname(__FILE__), 'data', 'blueprint_valid.json'))
85
+ # @invalid_blueprint = BlueprintHelper.blueprint_from_file(File.join(File.dirname(__FILE__), '../data', 'blueprint_valid.json'))
86
86
  end
87
87
 
88
88
  it "valid blueprint should be marked as valid" do
@@ -1,59 +1,61 @@
1
- require 'gooddata/model'
2
1
  require 'pry'
2
+ require 'gooddata/models/model'
3
3
 
4
- describe GoodData::Model::ProjectBlueprint do
4
+ describe GoodData::Model do
5
5
 
6
6
  before(:each) do
7
7
  @base_blueprint = GoodData::Model::ProjectBlueprint.from_json("./spec/data/test_project_model_spec.json")
8
8
  @additional_blueprint = GoodData::Model::ProjectBlueprint.from_json("./spec/data/model_module.json")
9
9
 
10
10
  @blueprint_with_duplicate = GoodData::Model::ProjectBlueprint.new(
11
- {
12
- :title => "x",
13
- :datasets => [
14
11
  {
15
- :name=>"commits",
16
- :columns => [
17
- {:type=>"fact", :name=>"lines_changed"}
18
- ]
19
- }
20
- ]})
12
+ :title => "x",
13
+ :datasets => [
14
+ {
15
+ :name => "commits",
16
+ :columns => [
17
+ {:type => "fact", :name => "lines_changed"}
18
+ ]
19
+ }
20
+ ]})
21
21
 
22
22
  @conflicting_blueprint = GoodData::Model::ProjectBlueprint.new(
23
- {
24
- :title => "x",
25
- :datasets => [
26
23
  {
27
- :name=>"commits",
28
- :columns => [
29
- {:type=>"attribute", :name=>"lines_changed"}
30
- ]
31
- }
32
- ]})
24
+ :title => "x",
25
+ :datasets => [
26
+ {
27
+ :name => "commits",
28
+ :columns => [
29
+ {:type => "attribute", :name => "lines_changed"}
30
+ ]
31
+ }
32
+ ]})
33
33
  end
34
34
 
35
35
  it "should be possible to merge Schema blueprints" do
36
36
  first_dataset = @base_blueprint.get_dataset("devs").to_hash
37
37
  additional_blueprint = @additional_blueprint.get_dataset("devs").to_hash
38
38
  stuff = GoodData::Model.merge_dataset_columns(first_dataset, additional_blueprint)
39
- stuff[:columns].include?({:type=>"attribute", :name=>"region"}).should == true
40
- stuff[:columns].include?({:type=>"anchor", :name=>"id"}).should == true
39
+ stuff[:columns].include?({:type => "attribute", :name => "region"}).should == true
40
+ stuff[:columns].include?({:type => "anchor", :name => "id"}).should == true
41
41
  end
42
42
 
43
43
  it "should pass when merging 2 columns with the same name if both columns are identical" do
44
44
  first_dataset = @base_blueprint.get_dataset("commits").to_hash
45
45
  additional_blueprint = @blueprint_with_duplicate.get_dataset("commits").to_hash
46
+
46
47
  stuff = GoodData::Model.merge_dataset_columns(first_dataset, additional_blueprint)
48
+
47
49
  stuff[:columns].count.should == 4
48
- stuff[:columns].include?({:type=>"fact", :name=>"lines_changed"}).should == true
49
- stuff[:columns].group_by {|col| col[:name]}["lines_changed"].count.should == 1
50
+ stuff[:columns].include?({:type => "fact", :name => "lines_changed"}).should == true
51
+ stuff[:columns].group_by { |col| col[:name] }["lines_changed"].count.should == 1
50
52
  end
51
-
53
+
52
54
  it "should pass when merging 2 columns with the same name if all attributes are identical" do
53
55
  first_dataset = @base_blueprint.get_dataset("commits").to_hash
54
56
  additional_blueprint = @conflicting_blueprint.get_dataset("commits").to_hash
55
57
 
56
- expect{GoodData::Model.merge_dataset_columns(first_dataset, additional_blueprint)}.to raise_error
58
+ expect { GoodData::Model.merge_dataset_columns(first_dataset, additional_blueprint) }.to raise_error
57
59
  end
58
60
 
59
61
  it "should be possible to merge directly whole bleuprints. Blueprint is changed in place when merge! is used" do
@@ -1,5 +1,5 @@
1
- require 'gooddata/model'
2
1
  require 'pry'
2
+ require 'gooddata/models/model'
3
3
 
4
4
  describe GoodData::Model::SchemaBuilder do
5
5
 
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gooddata
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0.pre10
5
- prerelease: 6
4
+ version: 0.6.0.pre11
6
5
  platform: ruby
7
6
  authors:
8
7
  - Pavel Kolesnikov
@@ -15,7 +14,6 @@ dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: rake
17
16
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
17
  requirements:
20
18
  - - ~>
21
19
  - !ruby/object:Gem::Version
@@ -23,7 +21,6 @@ dependencies:
23
21
  type: :development
24
22
  prerelease: false
25
23
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
24
  requirements:
28
25
  - - ~>
29
26
  - !ruby/object:Gem::Version
@@ -31,7 +28,6 @@ dependencies:
31
28
  - !ruby/object:Gem::Dependency
32
29
  name: redcarpet
33
30
  requirement: !ruby/object:Gem::Requirement
34
- none: false
35
31
  requirements:
36
32
  - - ~>
37
33
  - !ruby/object:Gem::Version
@@ -39,7 +35,6 @@ dependencies:
39
35
  type: :development
40
36
  prerelease: false
41
37
  version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
38
  requirements:
44
39
  - - ~>
45
40
  - !ruby/object:Gem::Version
@@ -47,7 +42,6 @@ dependencies:
47
42
  - !ruby/object:Gem::Dependency
48
43
  name: rspec
49
44
  requirement: !ruby/object:Gem::Requirement
50
- none: false
51
45
  requirements:
52
46
  - - ~>
53
47
  - !ruby/object:Gem::Version
@@ -55,7 +49,6 @@ dependencies:
55
49
  type: :development
56
50
  prerelease: false
57
51
  version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
52
  requirements:
60
53
  - - ~>
61
54
  - !ruby/object:Gem::Version
@@ -63,7 +56,6 @@ dependencies:
63
56
  - !ruby/object:Gem::Dependency
64
57
  name: simplecov
65
58
  requirement: !ruby/object:Gem::Requirement
66
- none: false
67
59
  requirements:
68
60
  - - ~>
69
61
  - !ruby/object:Gem::Version
@@ -71,7 +63,6 @@ dependencies:
71
63
  type: :development
72
64
  prerelease: false
73
65
  version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
66
  requirements:
76
67
  - - ~>
77
68
  - !ruby/object:Gem::Version
@@ -79,7 +70,6 @@ dependencies:
79
70
  - !ruby/object:Gem::Dependency
80
71
  name: yard
81
72
  requirement: !ruby/object:Gem::Requirement
82
- none: false
83
73
  requirements:
84
74
  - - ~>
85
75
  - !ruby/object:Gem::Version
@@ -87,7 +77,6 @@ dependencies:
87
77
  type: :development
88
78
  prerelease: false
89
79
  version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
80
  requirements:
92
81
  - - ~>
93
82
  - !ruby/object:Gem::Version
@@ -95,7 +84,6 @@ dependencies:
95
84
  - !ruby/object:Gem::Dependency
96
85
  name: yard-rspec
97
86
  requirement: !ruby/object:Gem::Requirement
98
- none: false
99
87
  requirements:
100
88
  - - ~>
101
89
  - !ruby/object:Gem::Version
@@ -103,15 +91,27 @@ dependencies:
103
91
  type: :development
104
92
  prerelease: false
105
93
  version_requirements: !ruby/object:Gem::Requirement
106
- none: false
107
94
  requirements:
108
95
  - - ~>
109
96
  - !ruby/object:Gem::Version
110
97
  version: '0.1'
98
+ - !ruby/object:Gem::Dependency
99
+ name: ZenTest
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ~>
103
+ - !ruby/object:Gem::Version
104
+ version: 4.9.5
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ~>
110
+ - !ruby/object:Gem::Version
111
+ version: 4.9.5
111
112
  - !ruby/object:Gem::Dependency
112
113
  name: activesupport
113
114
  requirement: !ruby/object:Gem::Requirement
114
- none: false
115
115
  requirements:
116
116
  - - ~>
117
117
  - !ruby/object:Gem::Version
@@ -119,7 +119,6 @@ dependencies:
119
119
  type: :runtime
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
- none: false
123
122
  requirements:
124
123
  - - ~>
125
124
  - !ruby/object:Gem::Version
@@ -127,7 +126,6 @@ dependencies:
127
126
  - !ruby/object:Gem::Dependency
128
127
  name: bundler
129
128
  requirement: !ruby/object:Gem::Requirement
130
- none: false
131
129
  requirements:
132
130
  - - ~>
133
131
  - !ruby/object:Gem::Version
@@ -135,7 +133,6 @@ dependencies:
135
133
  type: :runtime
136
134
  prerelease: false
137
135
  version_requirements: !ruby/object:Gem::Requirement
138
- none: false
139
136
  requirements:
140
137
  - - ~>
141
138
  - !ruby/object:Gem::Version
@@ -143,7 +140,6 @@ dependencies:
143
140
  - !ruby/object:Gem::Dependency
144
141
  name: erubis
145
142
  requirement: !ruby/object:Gem::Requirement
146
- none: false
147
143
  requirements:
148
144
  - - ~>
149
145
  - !ruby/object:Gem::Version
@@ -151,7 +147,6 @@ dependencies:
151
147
  type: :runtime
152
148
  prerelease: false
153
149
  version_requirements: !ruby/object:Gem::Requirement
154
- none: false
155
150
  requirements:
156
151
  - - ~>
157
152
  - !ruby/object:Gem::Version
@@ -159,7 +154,6 @@ dependencies:
159
154
  - !ruby/object:Gem::Dependency
160
155
  name: gli
161
156
  requirement: !ruby/object:Gem::Requirement
162
- none: false
163
157
  requirements:
164
158
  - - ~>
165
159
  - !ruby/object:Gem::Version
@@ -167,7 +161,6 @@ dependencies:
167
161
  type: :runtime
168
162
  prerelease: false
169
163
  version_requirements: !ruby/object:Gem::Requirement
170
- none: false
171
164
  requirements:
172
165
  - - ~>
173
166
  - !ruby/object:Gem::Version
@@ -175,7 +168,6 @@ dependencies:
175
168
  - !ruby/object:Gem::Dependency
176
169
  name: highline
177
170
  requirement: !ruby/object:Gem::Requirement
178
- none: false
179
171
  requirements:
180
172
  - - ~>
181
173
  - !ruby/object:Gem::Version
@@ -183,7 +175,6 @@ dependencies:
183
175
  type: :runtime
184
176
  prerelease: false
185
177
  version_requirements: !ruby/object:Gem::Requirement
186
- none: false
187
178
  requirements:
188
179
  - - ~>
189
180
  - !ruby/object:Gem::Version
@@ -191,7 +182,6 @@ dependencies:
191
182
  - !ruby/object:Gem::Dependency
192
183
  name: i18n
193
184
  requirement: !ruby/object:Gem::Requirement
194
- none: false
195
185
  requirements:
196
186
  - - ~>
197
187
  - !ruby/object:Gem::Version
@@ -199,7 +189,6 @@ dependencies:
199
189
  type: :runtime
200
190
  prerelease: false
201
191
  version_requirements: !ruby/object:Gem::Requirement
202
- none: false
203
192
  requirements:
204
193
  - - ~>
205
194
  - !ruby/object:Gem::Version
@@ -207,7 +196,6 @@ dependencies:
207
196
  - !ruby/object:Gem::Dependency
208
197
  name: json
209
198
  requirement: !ruby/object:Gem::Requirement
210
- none: false
211
199
  requirements:
212
200
  - - ~>
213
201
  - !ruby/object:Gem::Version
@@ -215,7 +203,6 @@ dependencies:
215
203
  type: :runtime
216
204
  prerelease: false
217
205
  version_requirements: !ruby/object:Gem::Requirement
218
- none: false
219
206
  requirements:
220
207
  - - ~>
221
208
  - !ruby/object:Gem::Version
@@ -223,7 +210,6 @@ dependencies:
223
210
  - !ruby/object:Gem::Dependency
224
211
  name: json_pure
225
212
  requirement: !ruby/object:Gem::Requirement
226
- none: false
227
213
  requirements:
228
214
  - - ~>
229
215
  - !ruby/object:Gem::Version
@@ -231,7 +217,6 @@ dependencies:
231
217
  type: :runtime
232
218
  prerelease: false
233
219
  version_requirements: !ruby/object:Gem::Requirement
234
- none: false
235
220
  requirements:
236
221
  - - ~>
237
222
  - !ruby/object:Gem::Version
@@ -239,7 +224,6 @@ dependencies:
239
224
  - !ruby/object:Gem::Dependency
240
225
  name: multi_json
241
226
  requirement: !ruby/object:Gem::Requirement
242
- none: false
243
227
  requirements:
244
228
  - - ~>
245
229
  - !ruby/object:Gem::Version
@@ -247,7 +231,6 @@ dependencies:
247
231
  type: :runtime
248
232
  prerelease: false
249
233
  version_requirements: !ruby/object:Gem::Requirement
250
- none: false
251
234
  requirements:
252
235
  - - ~>
253
236
  - !ruby/object:Gem::Version
@@ -255,7 +238,6 @@ dependencies:
255
238
  - !ruby/object:Gem::Dependency
256
239
  name: parseconfig
257
240
  requirement: !ruby/object:Gem::Requirement
258
- none: false
259
241
  requirements:
260
242
  - - ~>
261
243
  - !ruby/object:Gem::Version
@@ -263,7 +245,6 @@ dependencies:
263
245
  type: :runtime
264
246
  prerelease: false
265
247
  version_requirements: !ruby/object:Gem::Requirement
266
- none: false
267
248
  requirements:
268
249
  - - ~>
269
250
  - !ruby/object:Gem::Version
@@ -271,7 +252,6 @@ dependencies:
271
252
  - !ruby/object:Gem::Dependency
272
253
  name: pry
273
254
  requirement: !ruby/object:Gem::Requirement
274
- none: false
275
255
  requirements:
276
256
  - - ~>
277
257
  - !ruby/object:Gem::Version
@@ -279,7 +259,6 @@ dependencies:
279
259
  type: :runtime
280
260
  prerelease: false
281
261
  version_requirements: !ruby/object:Gem::Requirement
282
- none: false
283
262
  requirements:
284
263
  - - ~>
285
264
  - !ruby/object:Gem::Version
@@ -287,7 +266,6 @@ dependencies:
287
266
  - !ruby/object:Gem::Dependency
288
267
  name: restforce
289
268
  requirement: !ruby/object:Gem::Requirement
290
- none: false
291
269
  requirements:
292
270
  - - ~>
293
271
  - !ruby/object:Gem::Version
@@ -295,7 +273,6 @@ dependencies:
295
273
  type: :runtime
296
274
  prerelease: false
297
275
  version_requirements: !ruby/object:Gem::Requirement
298
- none: false
299
276
  requirements:
300
277
  - - ~>
301
278
  - !ruby/object:Gem::Version
@@ -303,7 +280,6 @@ dependencies:
303
280
  - !ruby/object:Gem::Dependency
304
281
  name: rest-client
305
282
  requirement: !ruby/object:Gem::Requirement
306
- none: false
307
283
  requirements:
308
284
  - - ~>
309
285
  - !ruby/object:Gem::Version
@@ -311,7 +287,6 @@ dependencies:
311
287
  type: :runtime
312
288
  prerelease: false
313
289
  version_requirements: !ruby/object:Gem::Requirement
314
- none: false
315
290
  requirements:
316
291
  - - ~>
317
292
  - !ruby/object:Gem::Version
@@ -319,7 +294,6 @@ dependencies:
319
294
  - !ruby/object:Gem::Dependency
320
295
  name: rubyzip
321
296
  requirement: !ruby/object:Gem::Requirement
322
- none: false
323
297
  requirements:
324
298
  - - ~>
325
299
  - !ruby/object:Gem::Version
@@ -327,7 +301,6 @@ dependencies:
327
301
  type: :runtime
328
302
  prerelease: false
329
303
  version_requirements: !ruby/object:Gem::Requirement
330
- none: false
331
304
  requirements:
332
305
  - - ~>
333
306
  - !ruby/object:Gem::Version
@@ -335,7 +308,6 @@ dependencies:
335
308
  - !ruby/object:Gem::Dependency
336
309
  name: salesforce_bulk
337
310
  requirement: !ruby/object:Gem::Requirement
338
- none: false
339
311
  requirements:
340
312
  - - ~>
341
313
  - !ruby/object:Gem::Version
@@ -343,7 +315,6 @@ dependencies:
343
315
  type: :runtime
344
316
  prerelease: false
345
317
  version_requirements: !ruby/object:Gem::Requirement
346
- none: false
347
318
  requirements:
348
319
  - - ~>
349
320
  - !ruby/object:Gem::Version
@@ -358,9 +329,11 @@ extra_rdoc_files:
358
329
  - LICENSE
359
330
  - README.md
360
331
  files:
332
+ - .autotest
361
333
  - .document
362
334
  - .gitignore
363
335
  - .rspec
336
+ - .travis.yml
364
337
  - .yardopts
365
338
  - Gemfile
366
339
  - LICENSE
@@ -431,12 +404,16 @@ files:
431
404
  - doc/templates/default/tags/text/see.erb
432
405
  - doc/templates/default/tags/text/tag.erb
433
406
  - examples.rb
407
+ - gooddata
434
408
  - gooddata.gemspec
435
409
  - lib/gooddata.rb
436
410
  - lib/gooddata/bricks/base_downloader.rb
437
411
  - lib/gooddata/bricks/brick.rb
412
+ - lib/gooddata/bricks/bricks.rb
413
+ - lib/gooddata/bricks/middleware/base_middleware.rb
438
414
  - lib/gooddata/bricks/middleware/bench_middleware.rb
439
415
  - lib/gooddata/bricks/middleware/bulk_salesforce_middleware.rb
416
+ - lib/gooddata/bricks/middleware/fs_upload_middleware.rb
440
417
  - lib/gooddata/bricks/middleware/gooddata_middleware.rb
441
418
  - lib/gooddata/bricks/middleware/logger_middleware.rb
442
419
  - lib/gooddata/bricks/middleware/middleware.rb
@@ -444,6 +421,17 @@ files:
444
421
  - lib/gooddata/bricks/middleware/stdout_middleware.rb
445
422
  - lib/gooddata/bricks/middleware/twitter_middleware.rb
446
423
  - lib/gooddata/bricks/utils.rb
424
+ - lib/gooddata/cli/cli.rb
425
+ - lib/gooddata/cli/commands/api_cmd.rb
426
+ - lib/gooddata/cli/commands/auth_cmd.rb
427
+ - lib/gooddata/cli/commands/console_cmd.rb
428
+ - lib/gooddata/cli/commands/process_cmd.rb
429
+ - lib/gooddata/cli/commands/profile_cmd.rb
430
+ - lib/gooddata/cli/commands/project_cmd.rb
431
+ - lib/gooddata/cli/commands/run_ruby_cmd.rb
432
+ - lib/gooddata/cli/commands/scaffold_cmd.rb
433
+ - lib/gooddata/cli/hooks.rb
434
+ - lib/gooddata/cli/shared.rb
447
435
  - lib/gooddata/client.rb
448
436
  - lib/gooddata/commands/api.rb
449
437
  - lib/gooddata/commands/auth.rb
@@ -456,25 +444,29 @@ files:
456
444
  - lib/gooddata/commands/runners.rb
457
445
  - lib/gooddata/commands/scaffold.rb
458
446
  - lib/gooddata/connection.rb
447
+ - lib/gooddata/core/core.rb
459
448
  - lib/gooddata/exceptions.rb
460
449
  - lib/gooddata/extract.rb
461
450
  - lib/gooddata/goodzilla/goodzilla.rb
462
451
  - lib/gooddata/helpers.rb
463
- - lib/gooddata/model.rb
464
452
  - lib/gooddata/models/attribute.rb
465
453
  - lib/gooddata/models/dashboard.rb
466
454
  - lib/gooddata/models/data_result.rb
467
455
  - lib/gooddata/models/data_set.rb
468
456
  - lib/gooddata/models/display_form.rb
457
+ - lib/gooddata/models/empty_result.rb
469
458
  - lib/gooddata/models/fact.rb
470
459
  - lib/gooddata/models/links.rb
471
460
  - lib/gooddata/models/metadata.rb
472
461
  - lib/gooddata/models/metric.rb
462
+ - lib/gooddata/models/model.rb
463
+ - lib/gooddata/models/models.rb
473
464
  - lib/gooddata/models/process.rb
474
465
  - lib/gooddata/models/profile.rb
475
466
  - lib/gooddata/models/project.rb
476
467
  - lib/gooddata/models/project_metadata.rb
477
468
  - lib/gooddata/models/report.rb
469
+ - lib/gooddata/models/report_data_result.rb
478
470
  - lib/gooddata/models/report_definition.rb
479
471
  - lib/gooddata/version.rb
480
472
  - lib/templates/bricks/brick.rb.erb
@@ -484,20 +476,48 @@ files:
484
476
  - lib/templates/project/data/devs.csv
485
477
  - lib/templates/project/data/repos.csv
486
478
  - lib/templates/project/model/model.rb.erb
487
- - spec/blueprint_spec.rb
479
+ - spec/bricks/bricks_spec.rb
488
480
  - spec/data/additional_dataset_module.json
489
481
  - spec/data/blueprint_invalid.json
490
482
  - spec/data/blueprint_valid.json
491
483
  - spec/data/model_module.json
492
484
  - spec/data/test_project_model_spec.json
493
- - spec/full_project_spec.rb
494
- - spec/goodzilla_spec.rb
495
485
  - spec/helpers/blueprint_helper.rb
496
- - spec/merging_blueprints_spec.rb
497
- - spec/model_dsl_spec.rb
498
- - spec/model_spec.rb
499
- - spec/project_build_and_update_spec.rb
486
+ - spec/helpers/connection_helper.rb
487
+ - spec/integration/command_projects_spec.rb
488
+ - spec/integration/full_project_spec.rb
489
+ - spec/logging_in_logging_out_spec.rb
500
490
  - spec/spec_helper.rb
491
+ - spec/unit/bricks/bricks_spec.rb
492
+ - spec/unit/bricks/middleware/bench_middleware_spec.rb
493
+ - spec/unit/bricks/middleware/bulk_salesforce_middleware_spec.rb
494
+ - spec/unit/bricks/middleware/gooddata_middleware_spec.rb
495
+ - spec/unit/bricks/middleware/logger_middleware_spec.rb
496
+ - spec/unit/bricks/middleware/restforce_middleware_spec.rb
497
+ - spec/unit/bricks/middleware/stdout_middleware_spec.rb
498
+ - spec/unit/bricks/middleware/twitter_middleware_spec.rb
499
+ - spec/unit/cli/cli_spec.rb
500
+ - spec/unit/cli/commands/cmd_api_spec.rb
501
+ - spec/unit/cli/commands/cmd_auth_spec.rb
502
+ - spec/unit/cli/commands/cmd_process_spec.rb
503
+ - spec/unit/cli/commands/cmd_profile_spec.rb
504
+ - spec/unit/cli/commands/cmd_project_spec.rb
505
+ - spec/unit/cli/commands/cmd_run_ruby_spec.rb
506
+ - spec/unit/cli/commands/cmd_scaffold_spec.rb
507
+ - spec/unit/commands/command_api_spec.rb
508
+ - spec/unit/commands/command_auth_spec.rb
509
+ - spec/unit/commands/command_dataset_spec.rb
510
+ - spec/unit/commands/command_process_spec.rb
511
+ - spec/unit/commands/command_profile_spec.rb
512
+ - spec/unit/commands/command_projects_spec.rb
513
+ - spec/unit/commands/command_scaffold_spec.rb
514
+ - spec/unit/core/connection_spec.rb
515
+ - spec/unit/core/core_spec.rb
516
+ - spec/unit/godzilla/goodzilla_spec.rb
517
+ - spec/unit/model/blueprint_spec.rb
518
+ - spec/unit/model/model_spec.rb
519
+ - spec/unit/model/project_blueprint_spec.rb
520
+ - spec/unit/model/schema_builder_spec.rb
501
521
  - test/test_commands.rb
502
522
  - test/test_guessing.rb
503
523
  - test/test_model.rb
@@ -507,30 +527,26 @@ files:
507
527
  homepage: http://github.com/gooddata/gooddata-ruby
508
528
  licenses:
509
529
  - BSD
530
+ metadata: {}
510
531
  post_install_message:
511
532
  rdoc_options: []
512
533
  require_paths:
513
534
  - lib
514
535
  required_ruby_version: !ruby/object:Gem::Requirement
515
- none: false
516
536
  requirements:
517
- - - ! '>='
537
+ - - '>='
518
538
  - !ruby/object:Gem::Version
519
539
  version: '0'
520
- segments:
521
- - 0
522
- hash: -3772311143330636693
523
540
  required_rubygems_version: !ruby/object:Gem::Requirement
524
- none: false
525
541
  requirements:
526
- - - ! '>='
542
+ - - '>='
527
543
  - !ruby/object:Gem::Version
528
544
  version: '0'
529
545
  requirements: []
530
546
  rubyforge_project:
531
- rubygems_version: 1.8.25
547
+ rubygems_version: 2.2.0
532
548
  signing_key:
533
- specification_version: 3
549
+ specification_version: 4
534
550
  summary: A convenient Ruby wrapper around the GoodData RESTful API
535
551
  test_files: []
536
552
  has_rdoc: