diff --git a/.rubocop.yml b/.rubocop.yml index 9ba5a70..71064eb 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -4,7 +4,7 @@ AllCops: Exclude: - vendor/bundle/**/* -require: +plugins: - rubocop-rspec - rubocop-performance - rubocop-rake diff --git a/Gemfile b/Gemfile index c4f6ba7..6d71ddb 100644 --- a/Gemfile +++ b/Gemfile @@ -14,11 +14,11 @@ group :development do gem "codecov", "~> 0.6" gem "grpc_mock", "~> 0.4" gem "pry-byebug", "~> 3.10" - gem "rspec", "~> 3.0" - gem "rubocop-performance", "~> 1.14" - gem "rubocop-rspec", "~> 2.11" + gem "rspec", "~> 3.5" + gem "rubocop-performance", "~> 1.24" + gem "rubocop-rspec", "~> 3.5" gem "rake", "~> 13.1" - gem "rubocop-rake", "~> 0.6.0" + gem "rubocop-rake", "~> 0.7.1" end diff --git a/aserto.gemspec b/aserto.gemspec index 8515541..6def2cf 100644 --- a/aserto.gemspec +++ b/aserto.gemspec @@ -31,8 +31,8 @@ Gem::Specification.new do |spec| spec.metadata["rubygems_mfa_required"] = "true" # runtime dependencies - spec.add_runtime_dependency "aserto-authorizer", "~> 0.20", ">= 0.20.2" - spec.add_runtime_dependency "aserto-directory", "~> 0.31", ">= 0.31.4" - spec.add_runtime_dependency "jwt", "~> 2.4" - spec.add_runtime_dependency "rack", ">= 2.0", "< 4.0" + spec.add_dependency "aserto-authorizer", "~> 0.20", ">= 0.20.2" + spec.add_dependency "aserto-directory", "~> 0.31", ">= 0.31.6" + spec.add_dependency "jwt", "~> 2.4" + spec.add_dependency "rack", ">= 2.0", "< 4.0" end diff --git a/lib/aserto/directory/v3/client.rb b/lib/aserto/directory/v3/client.rb index 56cd878..9043a61 100644 --- a/lib/aserto/directory/v3/client.rb +++ b/lib/aserto/directory/v3/client.rb @@ -68,6 +68,16 @@ def initialize(config) @model = create_client(:model, base_config.model) end + SERVICE_MAP = { + reader: ::Aserto::Directory::Reader::V3::Reader::Stub, + writer: ::Aserto::Directory::Writer::V3::Writer::Stub, + importer: ::Aserto::Directory::Importer::V3::Importer::Stub, + exporter: ::Aserto::Directory::Exporter::V3::Exporter::Stub, + model: ::Aserto::Directory::Model::V3::Model::Stub + }.freeze + + private_constant :SERVICE_MAP + private attr_reader :reader, :writer, :model, :importer, :exporter @@ -86,14 +96,6 @@ def respond_to_missing?(_name, _include_private) end end - SERVICE_MAP = { - reader: ::Aserto::Directory::Reader::V3::Reader::Stub, - writer: ::Aserto::Directory::Writer::V3::Writer::Stub, - importer: ::Aserto::Directory::Importer::V3::Importer::Stub, - exporter: ::Aserto::Directory::Exporter::V3::Exporter::Stub, - model: ::Aserto::Directory::Model::V3::Model::Stub - }.freeze - def create_client(type, config) return NullClient.new(type) unless config diff --git a/lib/aserto/policy_path_mapper.rb b/lib/aserto/policy_path_mapper.rb index 7b33b3d..072edfc 100644 --- a/lib/aserto/policy_path_mapper.rb +++ b/lib/aserto/policy_path_mapper.rb @@ -21,7 +21,7 @@ def execute(policy_root, request) path = route[:path] if route end - policy_path = +"#{policy_root}.#{method}.#{path}" + policy_path = "#{policy_root}.#{method}.#{path}" policy_path.tr!("/", ".") policy_path.gsub!("..", ".") policy_path.gsub!(":", "__") diff --git a/spec/aserto/directory/client_spec.rb b/spec/aserto/directory/client_spec.rb index b07a74c..e5b4e8b 100644 --- a/spec/aserto/directory/client_spec.rb +++ b/spec/aserto/directory/client_spec.rb @@ -17,13 +17,9 @@ it "returns the correct object" do expect(client.object(type: "type", key: "key").to_h).to eq( { - created_at: nil, display_name: "display_name", - hash: "", key: "key", - properties: nil, - type: "type", - updated_at: nil + type: "type" } ) end diff --git a/spec/aserto/directory/v3/client_spec.rb b/spec/aserto/directory/v3/client_spec.rb index 994bd8c..a93e287 100644 --- a/spec/aserto/directory/v3/client_spec.rb +++ b/spec/aserto/directory/v3/client_spec.rb @@ -76,16 +76,10 @@ ).to_h).to eq( { result: { - created_at: nil, display_name: "display_name", - etag: "", id: "id", - properties: nil, - type: "type", - updated_at: nil - }, - relations: [], - page: nil + type: "type" + } } ) end diff --git a/spec/integration/directory_spec.rb b/spec/integration/directory_spec.rb index 9fe1854..e698079 100644 --- a/spec/integration/directory_spec.rb +++ b/spec/integration/directory_spec.rb @@ -144,8 +144,7 @@ subject_type: "user", relation: "member", object_id: "my-group", - object_type: "group", - subject_relation: "" } + object_type: "group" } ) end @@ -157,7 +156,7 @@ object_id: "my-group", object_type: "group" ).to_h).to eq( - { check: true, trace: [] } + { check: true } ) end @@ -169,7 +168,7 @@ object_id: "my-group", object_type: "group" ).to_h).to eq( - { check: true, trace: [] } + { check: true, context: {} } ) end @@ -181,7 +180,7 @@ object_id: "my-group", object_type: "group" ).to_h).to eq( - { check: true, trace: [] } + { check: true } ) end @@ -195,8 +194,7 @@ subject_type: "user", relation: "member", object_id: "my-group", - object_type: "group", - subject_relation: "" + object_type: "group" } ) end diff --git a/spec/integration/topaz.rb b/spec/integration/topaz.rb index e548044..85f6ccb 100644 --- a/spec/integration/topaz.rb +++ b/spec/integration/topaz.rb @@ -53,8 +53,7 @@ def stop end def configure - system "topaz config new -r ghcr.io/aserto-policies/policy-todo:2.1.0 -n todo -d -f" - system "topaz config use todo" + system "topaz templates install todo -f --no-console -i" end def cleanup