oscal 0.2.0 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 562c827a391c4d86af9edb5cdf98ee1a61fb3a7d57374aa29a3a70609df09bb3
4
- data.tar.gz: 2031cf36b122b094cb3532bff51534de756907327d7f3bb09456a9120a510607
3
+ metadata.gz: 48c506201a2d0400f0757c293c18f52a421de5d9bc4650d74ae38c7250328e8b
4
+ data.tar.gz: 5918daf1884cd7a483748c058f32f3c0520572a68b9a29167272f9d514503ae9
5
5
  SHA512:
6
- metadata.gz: cbd11774c99f75b1e8b365488fb3fdd4969a7917de692cbf7546118b2a3102767af8b9ed9a140c2998a0d4cff9f282061eeea03da47371b864d67067307433c3
7
- data.tar.gz: d7510b9543be93b734be45f0d4140d32413af2d8a5462339bac65db9de3ff9a98c3b696537af73a9f23c1f491e85b269e898008df07da5180b2036e52fdff48a
6
+ metadata.gz: dfe64417748c6305b5ac8b44f092eedaf2d853defd9f39efd5ed13b1a82a1c510099fb948cc9b1d5558256f27e8fc19c4285c4f22e1eea76464f0489136dfa92
7
+ data.tar.gz: 6966ed7ea89daad3d90ca0423bf7053126bb4546ee4e1aa1ccafb0c1ccc7e11391d4b3513ddcfc24a9396c2d6e06522b036d15bdcbbff24b9a09c8718b6b7890
@@ -1,6 +1,7 @@
1
1
  require_relative "parsing_functions"
2
2
  require_relative "logger"
3
3
  require_relative "metadata_block"
4
+ require "json"
4
5
 
5
6
  module Oscal
6
7
  class MetadataBlockWrapper < Oscal::MetadataBlock
@@ -32,8 +33,8 @@ module Oscal
32
33
  end
33
34
  end
34
35
 
35
- def to_json
36
- to_h.to_json
36
+ def to_json(*args)
37
+ to_h.to_json(*args)
37
38
  end
38
39
 
39
40
  def to_h
@@ -41,6 +41,7 @@ module Oscal
41
41
  parts: AssessmentResult::PartArray,
42
42
  party_uuids: AssessmentResult::PartyUuidArray,
43
43
  props: AssessmentResult::PropArray,
44
+ reason: TokenDataType,
44
45
  related_controls: AssessmentResult::RelatedControls,
45
46
  related_observations: AssessmentResult::RelatedObservationArray,
46
47
  related_risks: AssessmentResult::RelatedRiskArray,
data/lib/oscal/logger.rb CHANGED
@@ -1,8 +1,12 @@
1
1
  module Oscal
2
2
  module ParsingLogger
3
3
  require "logger"
4
+ def self.logger=(value)
5
+ @@logger = value
6
+ end
7
+
4
8
  def get_logger
5
- Logger.new($stdout)
9
+ @@logger ||= Logger.new($stdout)
6
10
  end
7
11
  end
8
12
  end
@@ -1,4 +1,5 @@
1
1
  require "yaml"
2
+ require "json"
2
3
 
3
4
  module Oscal
4
5
  module Serializer
data/lib/oscal/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Oscal
4
- VERSION = "0.2.0"
4
+ VERSION = "0.2.3"
5
5
  end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../spec_helper"
4
+
5
+ RSpec.describe Oscal::AssessmentPlan::AssessmentPlan do
6
+ let(:fields) do
7
+ {
8
+ uuid: "4d56d1ab-d91e-4f7a-9055-1883c4e580b8",
9
+ metadata: {},
10
+ import_ssp: { href: "./ssp.json" },
11
+ reviewed_controls: { control_selections: [] },
12
+ }
13
+ end
14
+ subject { described_class.new(fields) }
15
+
16
+ describe "#to_json" do
17
+ it "generates a json representation of the assessment plan" do
18
+ expect(subject.to_json).to eq(JSON.generate(fields))
19
+ end
20
+ end
21
+ end
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require_relative "../spec_helper"
4
+
3
5
  RSpec.describe Oscal::Catalog do
4
6
  let(:subject) do
5
7
  Oscal::Catalog.load_from_yaml(
data/spec/oscal_spec.rb CHANGED
@@ -4,4 +4,15 @@ RSpec.describe Oscal do
4
4
  it "has a version number" do
5
5
  expect(Oscal::VERSION).not_to be nil
6
6
  end
7
+
8
+ it "allows setting a new logger" do
9
+ logger = double(Logger)
10
+ Oscal::ParsingLogger.logger = logger
11
+
12
+ class LoggerTest
13
+ include Oscal::ParsingLogger
14
+ end
15
+
16
+ expect(LoggerTest.new.get_logger).to eq logger
17
+ end
7
18
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oscal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-06-07 00:00:00.000000000 Z
11
+ date: 2024-07-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: yaml
@@ -120,6 +120,7 @@ files:
120
120
  - lib/oscal/with_id.rb
121
121
  - oscal.gemspec
122
122
  - sig/oscal.rbs
123
+ - spec/oscal/assessment_plan_spec.rb
123
124
  - spec/oscal/catalog_spec.rb
124
125
  - spec/oscal_spec.rb
125
126
  - spec/sample_inputs/import-ap.json
@@ -132,7 +133,7 @@ metadata:
132
133
  source_code_uri: https://github.com/metanorma/oscal-ruby/
133
134
  changelog_uri: https://github.com/metanorma/oscal-ruby/CHANGELOG
134
135
  rubygems_mfa_required: 'true'
135
- post_install_message:
136
+ post_install_message:
136
137
  rdoc_options: []
137
138
  require_paths:
138
139
  - lib
@@ -147,8 +148,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
147
148
  - !ruby/object:Gem::Version
148
149
  version: '0'
149
150
  requirements: []
150
- rubygems_version: 3.4.10
151
- signing_key:
151
+ rubygems_version: 3.3.27
152
+ signing_key:
152
153
  specification_version: 4
153
154
  summary: Interact with OSCAL models
154
155
  test_files: []