Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix generators specs target branch #9284

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
15 changes: 15 additions & 0 deletions decidim-generators/lib/decidim/generators.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# frozen_string_literal: true

require "decidim/generators/version"

module Decidim
module Generators
def self.edge_git_branch
if Decidim::Generators.version.match?(/\.dev$/)
"develop"
else
"release/#{Decidim::Generators.version.match(/^[0-9]+\.[0-9]+/)[0]}-stable"
end
end
end
end
4 changes: 2 additions & 2 deletions decidim-generators/lib/decidim/generators/app_generator.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
require "bundler"
require "rails/generators"
require "rails/generators/rails/app/app_generator"
require "decidim/generators/version"
require "decidim/generators"
require_relative "install_generator"

module Decidim
Expand Down Expand Up @@ -332,7 +332,7 @@ def gem_modifier
def branch
return if options[:path]

@branch ||= options[:edge] ? "develop" : options[:branch].presence
@branch ||= options[:edge] ? Decidim::Generators.edge_git_branch : options[:branch].presence
end

def repository
Expand Down
65 changes: 65 additions & 0 deletions decidim-generators/spec/lib/generators_spec.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# frozen_string_literal: true

require "simplecov" if ENV["SIMPLECOV"]

require "decidim/generators"

module Decidim
describe Generators do
describe ".edge_git_branch" do
let(:test_version) { nil }

before do
allow(described_class).to receive(:version).and_return(test_version)
end

context "with dev version" do
let(:test_version) { "0.27.0.dev" }

it "returns the develop branch" do
expect(subject.edge_git_branch).to eq("develop")
end
end

context "with pre version" do
let(:test_version) { "0.27.0.pre1" }

it "returns the release branch" do
expect(subject.edge_git_branch).to eq("release/0.27-stable")
end
end

context "with alpha version" do
let(:test_version) { "0.27.0.alpha9" }

it "returns the release branch" do
expect(subject.edge_git_branch).to eq("release/0.27-stable")
end
end

context "with beta version" do
let(:test_version) { "0.27.0.beta2" }

it "returns the release branch" do
expect(subject.edge_git_branch).to eq("release/0.27-stable")
end
end

context "with release candidate version" do
let(:test_version) { "0.27.0.rc4" }

it "returns the release branch" do
expect(subject.edge_git_branch).to eq("release/0.27-stable")
end
end

context "with release version" do
let(:test_version) { "0.27.99" }

it "returns the release branch" do
expect(subject.edge_git_branch).to eq("release/0.27-stable")
end
end
end
end
end
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ module Decidim
end

context "with --branch flag" do
let(:default_branch) { "develop" }
let(:default_branch) { Decidim::Generators.edge_git_branch }
let(:command) { "decidim --branch #{default_branch} #{test_app}" }

it_behaves_like "a new production application"
Expand Down Expand Up @@ -125,7 +125,7 @@ module Decidim
private

def repo_root
File.expand_path(File.join("..", ".."), __dir__)
File.expand_path(File.join("..", "..", ".."), __dir__)
end

def json_secrets_for(path, env)
Expand Down
2 changes: 2 additions & 0 deletions decidim-generators/spec/spec_helper.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# frozen_string_literal: true

require "decidim/generators"

RSpec.configure do |config|
config.fail_fast = ENV.fetch("FAIL_FAST", nil) == "true"
end