aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/helpers/table_builder_helper/column.rb4
-rw-r--r--spec/helpers/table_builder_helper/column_spec.rb23
2 files changed, 27 insertions, 0 deletions
diff --git a/app/helpers/table_builder_helper/column.rb b/app/helpers/table_builder_helper/column.rb
index ef3c0b629..b4c569882 100644
--- a/app/helpers/table_builder_helper/column.rb
+++ b/app/helpers/table_builder_helper/column.rb
@@ -31,6 +31,10 @@ module TableBuilderHelper
I18n.t("activerecord.attributes.#{model_key}.#{@key}")
end
+ def linkable?
+ !@link_to.nil?
+ end
+
def link_to(obj)
@link_to.call(obj)
end
diff --git a/spec/helpers/table_builder_helper/column_spec.rb b/spec/helpers/table_builder_helper/column_spec.rb
index 0c5c89e8a..e0bfd8a6a 100644
--- a/spec/helpers/table_builder_helper/column_spec.rb
+++ b/spec/helpers/table_builder_helper/column_spec.rb
@@ -21,6 +21,29 @@ describe TableBuilderHelper::Column do
end
end
+ describe "#linkable?" do
+ it "returns true if :link_to is not nil" do
+ expect(
+ TableBuilderHelper::Column.new(
+ name: 'unused',
+ attribute: nil,
+ link_to: lambda do
+ train.kind
+ end
+ ).linkable?
+ ).to be true
+ end
+
+ it "returns false if :link_to is nil" do
+ expect(
+ TableBuilderHelper::Column.new(
+ name: 'unused',
+ attribute: nil
+ ).linkable?
+ ).to be false
+ end
+ end
+
describe "#link_to" do
it "calls the block passed in and returns the result" do
train = double('train', kind: 'TGV')