diff --git a/spec/foobara/generators/generate_domain_spec.rb b/spec/foobara/generators/generate_domain_spec.rb index 56bc5d8..26e0f93 100644 --- a/spec/foobara/generators/generate_domain_spec.rb +++ b/spec/foobara/generators/generate_domain_spec.rb @@ -1,5 +1,5 @@ RSpec.describe Foobara::Generators::DomainGenerator::GenerateDomain do - let(:domain_name) { "SomeOrg::SomeDomain::SomeDomain" } + let(:domain_name) { "SomeOrg::SomeDomain" } let(:inputs) do { @@ -14,10 +14,9 @@ it "generates a domain" do expect(outcome).to be_success - domain_file = result["src/some_org/some_domain/some_domain.rb"] + domain_file = result["src/some_org/some_domain.rb"] expect(domain_file).to include("module SomeOrg") expect(domain_file).to include("module SomeDomain") - expect(domain_file).to include("class SomeDomain") end context "with all options" do @@ -26,18 +25,16 @@ domain_name: "SomeDomain", description: "whatever", organization_name: "SomeOrg", - domain_name: "SomeDomain", - full_module_name: "SomeOrg::SomeDomain::SomeDomain" + full_module_name: "SomeOrg::SomeDomain" } end it "generates a domain using the given options" do expect(outcome).to be_success - domain_file = result["src/some_org/some_domain/some_domain.rb"] + domain_file = result["src/some_org/some_domain.rb"] expect(domain_file).to include("module SomeOrg") expect(domain_file).to include("module SomeDomain") - expect(domain_file).to include("class SomeDomain") end end end diff --git a/spec/foobara/generators/write_domain_to_disk_spec.rb b/spec/foobara/generators/write_domain_to_disk_spec.rb index 65e4868..da34356 100644 --- a/spec/foobara/generators/write_domain_to_disk_spec.rb +++ b/spec/foobara/generators/write_domain_to_disk_spec.rb @@ -15,7 +15,7 @@ description: "whatever" } end - let(:domain_name) { "SomeOrg::SomeDomain::SomeDomain" } + let(:domain_name) { "SomeOrg::SomeDomain" } let(:output_directory) { "#{__dir__}/../../../tmp/domain_test_suite_output" } before do @@ -30,7 +30,7 @@ it "contains base files" do expect(outcome).to be_success - expect(domain.paths_to_source_code.keys).to include("src/some_org/some_domain/some_domain.rb") + expect(domain.paths_to_source_code.keys).to include("src/some_org/some_domain.rb") end end diff --git a/src/domain_config.rb b/src/domain_config.rb index a2c4cca..1e4812b 100644 --- a/src/domain_config.rb +++ b/src/domain_config.rb @@ -8,7 +8,6 @@ class DomainConfig < Foobara::Model domain_name :string, :required description :string, :allow_nil organization_name :string, :allow_nil - domain_name :string, :allow_nil full_module_name :string end @@ -20,15 +19,12 @@ def initialize(attributes = nil, options = {}) domain_name = attributes[:domain_name] description = attributes[:description] organization_name = attributes[:organization_name] - domain_name = attributes[:domain_name] - if organization_name.nil? && domain_name.nil? && full_module_name.nil? + if organization_name.nil? && full_module_name.nil? full_module_name = domain_name module_path = full_module_name.split("::") - *prefix, domain_name = module_path - - *organization_parts, domain_name = prefix + *organization_parts, domain_name = module_path unless organization_parts.empty? organization_name = organization_parts.join("::") @@ -40,7 +36,6 @@ def initialize(attributes = nil, options = {}) domain_name:, description:, organization_name:, - domain_name:, full_module_name: }, options diff --git a/src/write_domain_to_disk.rb b/src/write_domain_to_disk.rb index 5b88c75..66c74fb 100644 --- a/src/write_domain_to_disk.rb +++ b/src/write_domain_to_disk.rb @@ -38,7 +38,7 @@ def default_output_directory def generate_file_contents # TODO: just pass this in as the inputs instead of the domain?? - self.paths_to_source_code = run_subdomain!(GenerateDomain, domain_config.attributes) + self.paths_to_source_code = run_subcommand!(GenerateDomain, domain_config.attributes) end def run_post_generation_tasks