dradis-plugins 3.13.0 → 3.14.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 48866e86484cd3a726845a572978f84380da38f6
4
- data.tar.gz: '0548b1b291b44bb57eda538ddeb6390cc6a143f9'
2
+ SHA256:
3
+ metadata.gz: 2c2c50ad9fb6fab4f1e5b85a9c4586b666fc418299b6b603ff1556662165bfc3
4
+ data.tar.gz: 3603125d69092bf35542ec51628f9e59abfebdc9dc0a45ecb8f85c219d9b52f9
5
5
  SHA512:
6
- metadata.gz: a1775f4428de67f019857203785b5dc78e8e8370b38c9862b0655365f6b15938f4207b85c5ccd47a29dcaf77c6790f3bd815a32467f2a325b8599b56d920353a
7
- data.tar.gz: c7b312a85459bc9f9c0b665c5baa78283171b33c5d6bcc83d253d219e4ca50f8da11b75b7d0d08dae431e6def65f3c6ae402288dfe3525a79dbee14967ff1ae9
6
+ metadata.gz: d2b5bed67bb4fba361447daf70d8a104b606770af23af972dfeb4e395d26d8f6881041cd86a3118906d041d1cb3364dbf491dff33cd8f44b9e6ece3eb71586af
7
+ data.tar.gz: 5e2e98ea8c75f6c795460e9c51192a0f3da5520d956865e528dad614c552fbbbd114b2c465181e1917f609421e86f09f56b13c3007eecb853bd70346ffbcdbe0
@@ -1,4 +1,8 @@
1
- ## Dradis Framework 3.12 (June, 2019) ##
1
+ ## Dradis Framework 3.14 (August, 2019) ##
2
+
3
+ * Add node to boards
4
+
5
+ ## Dradis Framework 3.13 (June, 2019) ##
2
6
 
3
7
  * No changes.
4
8
 
@@ -3,17 +3,26 @@ module Dradis::Plugins::ContentService
3
3
  extend ActiveSupport::Concern
4
4
 
5
5
  def all_boards
6
- Board.where(project_id: project.id)
6
+ project.boards
7
+ end
8
+
9
+ def project_boards
10
+ project.methodology_library.boards
7
11
  end
8
12
 
9
13
  def create_board(args={})
10
- name = args.fetch(:name, default_board_name)
11
- Board.create(name: name, project_id: project.id)
14
+ name = args.fetch(:name, default_board_name)
15
+ node_id = args.fetch(:node_id, default_node_id)
16
+ Board.create(name: name, project_id: project.id, node_id: node_id)
12
17
  end
13
18
 
14
19
  private
15
20
  def default_board_name
16
21
  "create_board() invoked by #{plugin} without a :name parameter"
17
22
  end
23
+
24
+ def default_node_id
25
+ project.methodology_library.id
26
+ end
18
27
  end
19
28
  end
@@ -7,7 +7,7 @@ module Dradis
7
7
 
8
8
  module VERSION
9
9
  MAJOR = 3
10
- MINOR = 13
10
+ MINOR = 14
11
11
  TINY = 0
12
12
  PRE = nil
13
13
 
@@ -0,0 +1,45 @@
1
+ require 'rails_helper'
2
+
3
+ # To run, execute from Dradis main app folder:
4
+ # bin/rspec [dradis-plugins path]/spec/lib/dradis/plugins/content_service/boards_spec.rb
5
+ describe Dradis::Plugins::ContentService::Boards do
6
+ let(:plugin) { Dradis::Plugins::Nessus }
7
+ let(:project) { create(:project) }
8
+ let(:service) do
9
+ Dradis::Plugins::ContentService::Base.new(
10
+ plugin: plugin,
11
+ logger: Rails.logger,
12
+ project: project
13
+ )
14
+ end
15
+
16
+ describe 'Boards' do
17
+ describe '#all_boards' do
18
+ it 'returns all the project-level boards' do
19
+ board = create(:board, project: project)
20
+ node = create(:node, project: project)
21
+ node_board = create(:board, node: node, project: project)
22
+
23
+ boards = service.all_boards
24
+
25
+ expect(boards).to include(board)
26
+ expect(boards).to_not include(node_board)
27
+ end
28
+ end
29
+
30
+ describe '#create_board' do
31
+ it 'creates a board without a node' do
32
+ service.create_board(name: 'NodelessBoard')
33
+
34
+ expect(project.reload.boards.where(name: 'NodelessBoard')).to_not be_nil
35
+ end
36
+
37
+ it 'creates a board with a node' do
38
+ node = create(:node, project: project)
39
+ service.create_board(name: 'NodeBoard', node_id: node.id)
40
+
41
+ expect(project.reload.boards.where(name: 'NodeBoard')).to_not be_nil
42
+ end
43
+ end
44
+ end
45
+ end
@@ -2,7 +2,7 @@ require 'rails_helper'
2
2
 
3
3
  # These specs are coming from engines/dradispro-rules/spec/content_service_spec.rb
4
4
  # To run, execute from Dradis main app folder:
5
- # bin/rspec [dradis-plugins path]/spec/lib/dradis/plugins/content_service_spec.rb
5
+ # bin/rspec [dradis-plugins path]/spec/lib/dradis/plugins/content_service/issues_spec.rb
6
6
 
7
7
  describe Dradis::Plugins::ContentService::Base do
8
8
  let(:plugin) { Dradis::Plugins::Nessus }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dradis-plugins
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.13.0
4
+ version: 3.14.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Martin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-06-10 00:00:00.000000000 Z
11
+ date: 2019-08-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -102,7 +102,8 @@ files:
102
102
  - lib/dradis/plugins/upload/importer.rb
103
103
  - lib/dradis/plugins/version.rb
104
104
  - spec/internal/log/test.log
105
- - spec/lib/dradis/plugins/content_service_spec.rb
105
+ - spec/lib/dradis/plugins/content_service/boards_spec.rb
106
+ - spec/lib/dradis/plugins/content_service/issues_spec.rb
106
107
  - spec/settings_spec.rb
107
108
  - spec/spec_helper.rb
108
109
  homepage: http://dradisframework.org
@@ -124,13 +125,13 @@ required_rubygems_version: !ruby/object:Gem::Requirement
124
125
  - !ruby/object:Gem::Version
125
126
  version: '0'
126
127
  requirements: []
127
- rubyforge_project:
128
- rubygems_version: 2.6.12
128
+ rubygems_version: 3.0.2
129
129
  signing_key:
130
130
  specification_version: 4
131
131
  summary: Plugin manager for the Dradis Framework project.
132
132
  test_files:
133
133
  - spec/internal/log/test.log
134
- - spec/lib/dradis/plugins/content_service_spec.rb
134
+ - spec/lib/dradis/plugins/content_service/boards_spec.rb
135
+ - spec/lib/dradis/plugins/content_service/issues_spec.rb
135
136
  - spec/settings_spec.rb
136
137
  - spec/spec_helper.rb