ama_layout 2.0.3 → 2.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 42f4b3fcaf888d3339a9bc5fc159675c8b94d645
4
- data.tar.gz: b7480f70a323debef2e025f150c656dab6848318
3
+ metadata.gz: c4db5089973b6e7066f64cd9bf24940c808837cf
4
+ data.tar.gz: 9d455c9898557b73a5928816de78e0e559510708
5
5
  SHA512:
6
- metadata.gz: 866f9fa30e60231d98bf4a9ece7a6a5c19812b39d4c08f29c84c4a50b23d02ce2adbf2d6a03214a0d980938b25b6d9c056c73bbd6ee2a77b26e07ebe818abad8
7
- data.tar.gz: 7884b7f3fd498bf45207268e57c8fc37ea0d56e00ef6e47703a74d4121a7963f5ebe5992cf011731c484eaffa1e3f5360f9971fc3f285e78fe37f41c0b8df027
6
+ metadata.gz: 31280142bcdeedd5e710990ae3e354578d1787ce7a4b047aef1fa5382d5830e591d178da22d55831f02c68f7601b0146126b7582f417ac7efdb2d8c0b1b8daf5
7
+ data.tar.gz: 7073014fafe17d148cdd61ec4bf37ff5f3b2f50cc07b516f5c5141c365dbd346e76aee2c6a24c619274455c9685cb253b5d8468f888c46799b430c46a364a167
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.2.2
4
+ sudo: false
data/Rakefile CHANGED
@@ -1,2 +1,6 @@
1
1
  require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
2
3
 
4
+ RSpec::Core::RakeTask.new :spec
5
+
6
+ task default: :spec
@@ -26,6 +26,7 @@ Gem::Specification.new do |spec|
26
26
  spec.add_development_dependency "bundler", "~> 1.7"
27
27
  spec.add_development_dependency "rake", "~> 10.0"
28
28
  spec.add_development_dependency "rspec-rails"
29
+ spec.add_development_dependency "factory_girl"
29
30
  spec.add_development_dependency "simplecov"
30
31
  spec.add_development_dependency "pry"
31
32
  spec.add_development_dependency "combustion"
@@ -67,6 +67,9 @@ member-in-renewal-late:
67
67
  alt: "Back to my dashboard"
68
68
  link: "<%= Rails.configuration.gatekeeper_site %>/"
69
69
  icon: "fa-tachometer"
70
+ - text: "Renew"
71
+ link: "<%= Rails.configuration.youraccount_site %>/renew"
72
+ icon: "fa-credit-card"
70
73
  - text: "Driver Education"
71
74
  link: "<%= Rails.configuration.driveredonline_site %>"
72
75
  icon: "fa-car"
@@ -1,3 +1,3 @@
1
1
  module AmaLayout
2
- VERSION = "2.0.3"
2
+ VERSION = "2.0.5"
3
3
  end
@@ -0,0 +1,70 @@
1
+ describe AmaLayout::MonerisDecorator, type: :decorator do
2
+ let(:moneris) { AmaLayout::Moneris.new }
3
+ let(:moneris_presenter) { moneris.decorate }
4
+
5
+ describe "#textbox" do
6
+ it "return textbox style file" do
7
+ expect(moneris_presenter.textbox).to include "-webkit-appearance: none;"
8
+ expect(moneris_presenter.textbox).to include "-webkit-box-shadow: rgba(0, 0, 0, 0.0980392) 0px 1px 2px 0px inset;"
9
+ expect(moneris_presenter.textbox).to include "-webkit-rtl-ordering: logical;"
10
+ expect(moneris_presenter.textbox).to include "-webkit-transition-delay: 0s, 0s;"
11
+ expect(moneris_presenter.textbox).to include "-webkit-transition-duration: 0.45s, 0.45s;"
12
+ expect(moneris_presenter.textbox).to include "-webkit-transition-property: box-shadow, border-color;"
13
+ expect(moneris_presenter.textbox).to include "-webkit-transition-timing-function: ease, ease-in-out;"
14
+ expect(moneris_presenter.textbox).to include "-webkit-user-select: text;"
15
+ expect(moneris_presenter.textbox).to include "-webkit-writing-mode: horizontal-tb;"
16
+ expect(moneris_presenter.textbox).to include "background-color: rgb(255, 255, 255);"
17
+ expect(moneris_presenter.textbox).to include "border-bottom-color: rgb(204, 204, 204);"
18
+ expect(moneris_presenter.textbox).to include "border-bottom-left-radius: 3px;"
19
+ expect(moneris_presenter.textbox).to include "border-bottom-right-radius: 3px;"
20
+ expect(moneris_presenter.textbox).to include "border-bottom-style: solid;"
21
+ expect(moneris_presenter.textbox).to include "border-bottom-width: 1px;"
22
+ expect(moneris_presenter.textbox).to include "border-image-outset: 0px;"
23
+ expect(moneris_presenter.textbox).to include "border-image-repeat: stretch;"
24
+ expect(moneris_presenter.textbox).to include "border-image-slice: 100%;"
25
+ expect(moneris_presenter.textbox).to include "border-image-source: none;"
26
+ expect(moneris_presenter.textbox).to include "border-image-width: 1;"
27
+ expect(moneris_presenter.textbox).to include "border-left-color: rgb(204, 204, 204);"
28
+ expect(moneris_presenter.textbox).to include "border-left-style: solid;"
29
+ expect(moneris_presenter.textbox).to include "border-left-width: 1px;"
30
+ expect(moneris_presenter.textbox).to include "border-right-color: rgb(204, 204, 204);"
31
+ expect(moneris_presenter.textbox).to include "border-right-style: solid;"
32
+ expect(moneris_presenter.textbox).to include "border-right-width: 1px;"
33
+ expect(moneris_presenter.textbox).to include "border-top-color: rgb(204, 204, 204);"
34
+ expect(moneris_presenter.textbox).to include "border-top-left-radius: 3px;"
35
+ expect(moneris_presenter.textbox).to include "border-top-right-radius: 3px;"
36
+ expect(moneris_presenter.textbox).to include "border-top-style: solid;"
37
+ expect(moneris_presenter.textbox).to include "border-top-width: 1px;"
38
+ expect(moneris_presenter.textbox).to include "box-shadow: rgba(0, 0, 0, 0.0980392) 0px 1px 2px 0px inset;"
39
+ expect(moneris_presenter.textbox).to include "box-sizing: border-box;"
40
+ expect(moneris_presenter.textbox).to include "color: rgba(0, 0, 0, 0.74902);"
41
+ expect(moneris_presenter.textbox).to include "cursor: auto;"
42
+ expect(moneris_presenter.textbox).to include "display: block;"
43
+ expect(moneris_presenter.textbox).to include "font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif;font-size: 14px;"
44
+ expect(moneris_presenter.textbox).to include "font-style: normal;font-variant: normal;"
45
+ expect(moneris_presenter.textbox).to include "font-weight: normal;"
46
+ expect(moneris_presenter.textbox).to include "height: 37px;"
47
+ expect(moneris_presenter.textbox).to include "letter-spacing: normal;"
48
+ expect(moneris_presenter.textbox).to include "line-height: normal;"
49
+ expect(moneris_presenter.textbox).to include "margin-bottom: 0px;"
50
+ expect(moneris_presenter.textbox).to include "margin-left: 0px;"
51
+ expect(moneris_presenter.textbox).to include "margin-right: 0px;"
52
+ expect(moneris_presenter.textbox).to include "margin-top: 0px;"
53
+ expect(moneris_presenter.textbox).to include "padding-bottom: 8px;"
54
+ expect(moneris_presenter.textbox).to include "padding-left: 8px;"
55
+ expect(moneris_presenter.textbox).to include "padding-right: 8px;"
56
+ expect(moneris_presenter.textbox).to include "padding-top: 8px;"
57
+ expect(moneris_presenter.textbox).to include "text-align: start;"
58
+ expect(moneris_presenter.textbox).to include "text-indent: 0px;"
59
+ expect(moneris_presenter.textbox).to include "text-shadow: none;"
60
+ expect(moneris_presenter.textbox).to include "text-transform: none;"
61
+ expect(moneris_presenter.textbox).to include "transition-delay: 0s, 0s;"
62
+ expect(moneris_presenter.textbox).to include "transition-duration: 0.45s, 0.45s;"
63
+ expect(moneris_presenter.textbox).to include "transition-property: box-shadow, border-color;"
64
+ expect(moneris_presenter.textbox).to include "transition-timing-function: ease, ease-in-out;"
65
+ expect(moneris_presenter.textbox).to include "width: 100%;"
66
+ expect(moneris_presenter.textbox).to include "word-spacing: 0px;"
67
+ expect(moneris_presenter.textbox).to include "writing-mode: lr-tb;"
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,81 @@
1
+ describe AmaLayout::NavigationDecorator do
2
+ let(:navigation) { FactoryGirl.build(:navigation) }
3
+ let(:navigation_presenter) { navigation.decorate }
4
+ let(:gatekeeper_site) { "http://auth.waffles.ca" }
5
+ let(:youraccount_site) { "http://youraccount.waffles.ca" }
6
+ let(:insurance_site) { "http://insurance.waffles.ca" }
7
+ let(:membership_site) { "http://membership.waffles.ca" }
8
+ let(:driveredonline_site) { "http://driveredonline.waffles.ca" }
9
+
10
+ before(:each) do
11
+ allow(Rails.configuration).to receive(:gatekeeper_site).and_return(gatekeeper_site)
12
+ allow(Rails.configuration).to receive(:youraccount_site).and_return(youraccount_site)
13
+ allow(Rails.configuration).to receive(:insurance_site).and_return(insurance_site)
14
+ allow(Rails.configuration).to receive(:membership_site).and_return(membership_site)
15
+ allow(Rails.configuration).to receive(:driveredonline_site).and_return(driveredonline_site)
16
+ end
17
+
18
+ describe "#items" do
19
+ before(:each) do
20
+ allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member"))
21
+ end
22
+
23
+ it "returns an array of navigation items" do
24
+ expect(navigation_presenter.items).to be_an Array
25
+ end
26
+
27
+ it "array contains decorated navigation items" do
28
+ items = navigation_presenter.items
29
+ items.each do |i|
30
+ expect(i).to be_a AmaLayout::NavigationItemDecorator
31
+ end
32
+ end
33
+ end
34
+
35
+ describe "#sign_out_link" do
36
+ context "with user" do
37
+ it "returns link" do
38
+ allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member"))
39
+ expect(navigation_presenter.sign_out_link).to include "Sign Out"
40
+ end
41
+ end
42
+
43
+ context "without user" do
44
+ it "does not return the link" do
45
+ expect(navigation_presenter.sign_out_link).to eq ""
46
+ end
47
+ end
48
+ end
49
+
50
+ describe "#top_nav" do
51
+ context "with items" do
52
+ it "renders the partial" do
53
+ allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member"))
54
+ allow_any_instance_of(Draper::HelperProxy).to receive(:render).and_return "render"
55
+ expect(navigation_presenter.top_nav).to eq "render"
56
+ end
57
+ end
58
+
59
+ context "without items" do
60
+ it "does not renders the partial" do
61
+ expect(navigation_presenter.top_nav).to eq nil
62
+ end
63
+ end
64
+ end
65
+
66
+ describe "#sidebar" do
67
+ context "with items" do
68
+ it "renders the partial" do
69
+ allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member"))
70
+ allow_any_instance_of(Draper::HelperProxy).to receive(:render).and_return "render"
71
+ expect(navigation_presenter.sidebar).to eq "render"
72
+ end
73
+ end
74
+
75
+ context "without items" do
76
+ it "does not renders the partial" do
77
+ expect(navigation_presenter.sidebar).to eq nil
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,85 @@
1
+ describe AmaLayout::NavigationItemDecorator do
2
+ let(:navigation_item) { FactoryGirl.build(:navigation_item) }
3
+ let(:navigation_item_presenter) { navigation_item.decorate }
4
+ let(:items) { [{ text: "Othersite Overview", link: "othersite.com"}] }
5
+
6
+ describe "#sub_nav" do
7
+ before(:each) do
8
+ navigation_item.sub_nav = items
9
+ end
10
+
11
+ it "returns an array of navigation items" do
12
+ expect(navigation_item_presenter.sub_nav).to be_an Array
13
+ end
14
+
15
+ it "array contains decorated navigation items" do
16
+ items = navigation_item_presenter.sub_nav
17
+ items.each do |i|
18
+ expect(i).to be_a AmaLayout::NavigationItemDecorator
19
+ end
20
+ end
21
+ end
22
+
23
+ describe "#sub_nav_class" do
24
+ context "with sub_nav" do
25
+ it "return the class" do
26
+ navigation_item.sub_nav = items
27
+ expect(navigation_item_presenter.sub_nav_class).to eq "has-dropdown"
28
+ end
29
+ end
30
+
31
+ context "without sub_nav" do
32
+ it "does not returns the class" do
33
+ expect(navigation_item_presenter.sub_nav_class).to eq nil
34
+ end
35
+ end
36
+ end
37
+
38
+ describe "#top_sub_nav" do
39
+ context "with items" do
40
+ it "renders the partial" do
41
+ navigation_item.sub_nav = items
42
+ allow_any_instance_of(Draper::HelperProxy).to receive(:render).and_return "render"
43
+ expect(navigation_item_presenter.top_sub_nav).to eq "render"
44
+ end
45
+ end
46
+
47
+ context "without items" do
48
+ it "does not renders the partial" do
49
+ expect(navigation_item_presenter.top_sub_nav).to eq nil
50
+ end
51
+ end
52
+ end
53
+
54
+ describe "#sidebar_sub_nav" do
55
+ context "with items" do
56
+ it "renders the partial" do
57
+ navigation_item.sub_nav = items
58
+ allow_any_instance_of(Draper::HelperProxy).to receive(:render).and_return "render"
59
+ expect(navigation_item_presenter.sidebar_sub_nav).to eq "render"
60
+ end
61
+ end
62
+
63
+ context "without items" do
64
+ it "does not renders the partial" do
65
+ expect(navigation_item_presenter.sidebar_sub_nav).to eq nil
66
+ end
67
+ end
68
+ end
69
+
70
+ describe "#active_class" do
71
+ context "with active_link" do
72
+ it "return the class" do
73
+ navigation_item.current_url = "othersite.com"
74
+ navigation_item.sub_nav = items
75
+ expect(navigation_item_presenter.active_class).to eq "activepage"
76
+ end
77
+ end
78
+
79
+ context "without active_link" do
80
+ it "does not returns the class" do
81
+ expect(navigation_item_presenter.active_class).to eq nil
82
+ end
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,8 @@
1
+ describe AmaLayout::Moneris do
2
+
3
+ describe "#textbox_style_file" do
4
+ it "return file path" do
5
+ expect(subject.textbox_style_file).to include "lib/ama_layout/moneris/textbox.txt"
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,21 @@
1
+ describe AmaLayout::NavigationItem do
2
+ let(:site_domain) { "http://waffleemporium.ca" }
3
+
4
+ describe "#initialize" do
5
+ it "returns a navigation item" do
6
+ params = { text: "Gotham Overview", icon: "fa-tachometer", link: "#{site_domain}/gotica", alt: "Back to my dashboard", current_url: "#{site_domain}" }
7
+ expect(AmaLayout::NavigationItem.new(params)).to be_a AmaLayout::NavigationItem
8
+ end
9
+ end
10
+
11
+ describe "#sub_nav" do
12
+ it "set the subnav" do
13
+ subject.current_url = "#{site_domain}"
14
+ items = [{ text: "Othersite Overview", link: "#{site_domain}/othersite"}]
15
+ subject.sub_nav = items
16
+ expect(subject.sub_nav).to be_an Array
17
+ expect(subject.sub_nav.first.link).to include items.first[:link]
18
+ expect(subject.sub_nav.first.text).to include items.first[:text]
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,118 @@
1
+ describe AmaLayout::Navigation do
2
+ let(:gatekeeper_site) { "http://auth.waffles.ca" }
3
+ let(:youraccount_site) { "http://youraccount.waffles.ca" }
4
+ let(:insurance_site) { "http://insurance.waffles.ca" }
5
+ let(:membership_site) { "http://membership.waffles.ca" }
6
+ let(:driveredonline_site) { "http://driveredonline.waffles.ca" }
7
+
8
+ before(:each) do
9
+ allow(Rails.configuration).to receive(:gatekeeper_site).and_return(gatekeeper_site)
10
+ allow(Rails.configuration).to receive(:youraccount_site).and_return(youraccount_site)
11
+ allow(Rails.configuration).to receive(:insurance_site).and_return(insurance_site)
12
+ allow(Rails.configuration).to receive(:membership_site).and_return(membership_site)
13
+ allow(Rails.configuration).to receive(:driveredonline_site).and_return(driveredonline_site)
14
+ end
15
+
16
+ describe "#items" do
17
+ context "member" do
18
+ before(:each) do
19
+ allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member"))
20
+ end
21
+
22
+ it "returns member navigation items" do
23
+ expect(subject.items[0].text).to eq "My Account Overview"
24
+ expect(subject.items[0].alt).to eq "Back to my dashboard"
25
+ expect(subject.items[0].link).to eq "#{gatekeeper_site}/"
26
+ expect(subject.items[0].icon).to eq "fa-tachometer"
27
+
28
+ expect(subject.items[1].text).to eq "My Membership"
29
+ expect(subject.items[1].link).to eq "#"
30
+ expect(subject.items[1].icon).to eq "fa-credit-card"
31
+
32
+ expect(subject.items[2].text).to eq "My Driver Education"
33
+ expect(subject.items[2].link).to eq "#{driveredonline_site}"
34
+ expect(subject.items[2].icon).to eq "fa-car"
35
+
36
+ expect(subject.items[3].text).to eq "My Reward Dollars"
37
+ expect(subject.items[3].link).to eq "#{youraccount_site}/reward_dollars"
38
+ expect(subject.items[3].icon).to eq "fa-usd"
39
+
40
+ expect(subject.items[4].text).to eq "Reload Esso Gift Cards"
41
+ expect(subject.items[4].link).to eq "#{membership_site}/reward_cards"
42
+ expect(subject.items[4].icon).to eq "fa-arrow-up"
43
+
44
+ expect(subject.items[5].text).to eq "My Account Settings"
45
+ expect(subject.items[5].link).to eq "#"
46
+ expect(subject.items[5].icon).to eq "fa-cogs"
47
+ end
48
+ end
49
+
50
+ context "non-member" do
51
+ before(:each) do
52
+ allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "non-member"))
53
+ end
54
+
55
+ it "returns non-member navigation items" do
56
+ expect(subject.items[0].text).to eq "Account Dashboard"
57
+ expect(subject.items[0].alt).to eq "Back to my dashboard"
58
+ expect(subject.items[0].link).to eq "#{gatekeeper_site}/"
59
+ expect(subject.items[0].icon).to eq "fa-tachometer"
60
+
61
+ expect(subject.items[1].text).to eq "Join AMA"
62
+ expect(subject.items[1].alt).to eq "Join AMA"
63
+ expect(subject.items[1].link).to eq membership_site
64
+ expect(subject.items[1].icon).to eq "fa-credit-card"
65
+
66
+ expect(subject.items[2].text).to eq "Driver Education"
67
+ expect(subject.items[2].link).to eq "#{driveredonline_site}"
68
+ expect(subject.items[2].icon).to eq "fa-car"
69
+
70
+ expect(subject.items[3].text).to eq "Change Email/Password"
71
+ expect(subject.items[3].link).to eq "#{gatekeeper_site}/user/edit"
72
+ expect(subject.items[3].icon).to eq "fa-cogs"
73
+ end
74
+ end
75
+
76
+ context "member-in-renewal" do
77
+ before(:each) do
78
+ allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member-in-renewal"))
79
+ end
80
+
81
+ it "returns member-in-renewal navigation items" do
82
+ expect(subject.items[0].text).to eq "Account Dashboard"
83
+ expect(subject.items[0].alt).to eq "Back to my dashboard"
84
+ expect(subject.items[0].link).to eq "#{gatekeeper_site}/"
85
+ expect(subject.items[0].icon).to eq "fa-tachometer"
86
+
87
+ expect(subject.items[1].text).to eq "Renew"
88
+ expect(subject.items[1].link).to eq "#{youraccount_site}/renew"
89
+ expect(subject.items[1].icon).to eq "fa-credit-card"
90
+
91
+ expect(subject.items[2].text).to eq "Driver Education"
92
+ expect(subject.items[2].link).to eq "#{driveredonline_site}"
93
+ expect(subject.items[2].icon).to eq "fa-car"
94
+ end
95
+ end
96
+
97
+ context "member-in-renewal-late" do
98
+ before(:each) do
99
+ allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member-in-renewal-late"))
100
+ end
101
+
102
+ it "returns member-in-renewal-late navigation items" do
103
+ expect(subject.items[0].text).to eq "Account Dashboard"
104
+ expect(subject.items[0].alt).to eq "Back to my dashboard"
105
+ expect(subject.items[0].link).to eq "#{gatekeeper_site}/"
106
+ expect(subject.items[0].icon).to eq "fa-tachometer"
107
+
108
+ expect(subject.items[1].text).to eq "Renew"
109
+ expect(subject.items[1].link).to eq "#{youraccount_site}/renew"
110
+ expect(subject.items[1].icon).to eq "fa-credit-card"
111
+
112
+ expect(subject.items[2].text).to eq "Driver Education"
113
+ expect(subject.items[2].link).to eq driveredonline_site
114
+ expect(subject.items[2].icon).to eq "fa-car"
115
+ end
116
+ end
117
+ end
118
+ end
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :navigation, class: AmaLayout::Navigation do
3
+ current_url "http://waffleemporium.ca"
4
+ end
5
+ end
@@ -0,0 +1,8 @@
1
+ FactoryGirl.define do
2
+ factory :navigation_item, class: AmaLayout::NavigationItem do
3
+ text "Gotham Overview"
4
+ icon "fa-tachometer"
5
+ link "http://waffleemporium.ca/gotica"
6
+ alt "Back to my dashboard"
7
+ end
8
+ end
@@ -3,6 +3,7 @@ describe AmaLayoutContentHelper do
3
3
  let(:site_name) { "Waffle Emporium" }
4
4
  let(:site_domain) { "http://waffleemporium.ca" }
5
5
  let(:site_url) { "#{site_domain}/wafflesauce" }
6
+ let(:nav_item) { FactoryGirl.build(:navigation_item) }
6
7
 
7
8
  describe "#greeting" do
8
9
  it "returns the greeting set in the domain cookie" do
@@ -18,13 +19,24 @@ describe AmaLayoutContentHelper do
18
19
  end
19
20
  end
20
21
 
22
+ describe "#active_section" do
23
+ it "returns active if request include the path" do
24
+ allow_any_instance_of(ActionController::TestRequest).to receive(:fullpath).and_return("#{site_domain}/gotica")
25
+ expect(helper.active_section(nav_item)).to eq "activepage"
26
+ end
27
+
28
+ it "returns nil if request does not include the path" do
29
+ expect(helper.active_section(nav_item)).to eq nil
30
+ end
31
+ end
32
+
21
33
  describe "#active_page" do
22
34
  before(:each) do
23
35
  allow(helper.request).to receive(:fullpath).and_return(site_url)
24
36
  end
25
37
 
26
38
  it "returns active if the given path matches the request path" do
27
- expect(helper.active_page(site_url)).to eq "active"
39
+ expect(helper.active_page(site_url)).to eq "activepage"
28
40
  end
29
41
 
30
42
  it "returns nothing if the given patch does not match the request path" do
@@ -10,7 +10,7 @@ describe AmaLayoutPathHelper do
10
10
  allow(Rails.configuration).to receive(:youraccount_site).and_return(youraccount_site)
11
11
  allow(Rails.configuration).to receive(:insurance_site).and_return(insurance_site)
12
12
  allow(Rails.configuration).to receive(:membership_site).and_return(membership_site)
13
- allow(Rails.configuration).to receive(:driveredonline_site).and_return(:driveredonline_site)
13
+ allow(Rails.configuration).to receive(:driveredonline_site).and_return(driveredonline_site)
14
14
  end
15
15
 
16
16
  describe "#gatekeeper_profile_path" do
@@ -105,13 +105,13 @@ describe AmaLayoutPathHelper do
105
105
 
106
106
  describe "#membership_path" do
107
107
  it "returns the membership esso reload path" do
108
- expect(helper.membership_esso_reload_path).to eq "#{membership_site}/reward_"
108
+ expect(helper.membership_esso_reload_path).to eq "#{membership_site}/reward_cards"
109
109
  end
110
110
  end
111
111
 
112
112
  describe "#driveredonline_path" do
113
113
  it "returns the driveredonile path" do
114
- expect(helper.driveredonline_path).to eq "#{driveredonline_site}/login"
114
+ expect(helper.driveredonline_path).to eq "#{driveredonline_site}"
115
115
  end
116
116
  end
117
117
  end
@@ -1,4 +1,5 @@
1
1
  require "simplecov"
2
+ require "factory_girl"
2
3
  require "ama_layout"
3
4
  require "pry"
4
5
  require "rspec/rails"
@@ -10,6 +11,8 @@ Combustion.initialize! :all
10
11
 
11
12
  Dir["./spec/support/**/*.rb"].sort.each { |file| require file }
12
13
 
14
+ FactoryGirl.find_definitions
15
+
13
16
  ActionView::TestCase::TestController.instance_eval do
14
17
  helper Rails.application.routes.url_helpers
15
18
  end
@@ -20,6 +23,9 @@ ActionView::TestCase::TestController.class_eval do
20
23
  end
21
24
  end
22
25
 
26
+ Draper::ViewContext.test_strategy :fast
27
+
23
28
  RSpec.configure do |config|
29
+ config.infer_spec_type_from_file_location!
24
30
  config.include Rails.application.routes.url_helpers
25
31
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ama_layout
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3
4
+ version: 2.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael van den Beuken
@@ -17,7 +17,7 @@ authors:
17
17
  autorequire:
18
18
  bindir: bin
19
19
  cert_chain: []
20
- date: 2015-11-09 00:00:00.000000000 Z
20
+ date: 2015-11-17 00:00:00.000000000 Z
21
21
  dependencies:
22
22
  - !ruby/object:Gem::Dependency
23
23
  name: foundation-rails
@@ -37,157 +37,171 @@ dependencies:
37
37
  name: rails
38
38
  requirement: !ruby/object:Gem::Requirement
39
39
  requirements:
40
- - - ">="
40
+ - - '>='
41
41
  - !ruby/object:Gem::Version
42
42
  version: '4'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - ">="
47
+ - - '>='
48
48
  - !ruby/object:Gem::Version
49
49
  version: '4'
50
50
  - !ruby/object:Gem::Dependency
51
51
  name: sass-rails
52
52
  requirement: !ruby/object:Gem::Requirement
53
53
  requirements:
54
- - - ">="
54
+ - - '>='
55
55
  - !ruby/object:Gem::Version
56
56
  version: '0'
57
57
  type: :runtime
58
58
  prerelease: false
59
59
  version_requirements: !ruby/object:Gem::Requirement
60
60
  requirements:
61
- - - ">="
61
+ - - '>='
62
62
  - !ruby/object:Gem::Version
63
63
  version: '0'
64
64
  - !ruby/object:Gem::Dependency
65
65
  name: font-awesome-sass
66
66
  requirement: !ruby/object:Gem::Requirement
67
67
  requirements:
68
- - - ">="
68
+ - - '>='
69
69
  - !ruby/object:Gem::Version
70
70
  version: '0'
71
71
  type: :runtime
72
72
  prerelease: false
73
73
  version_requirements: !ruby/object:Gem::Requirement
74
74
  requirements:
75
- - - ">="
75
+ - - '>='
76
76
  - !ruby/object:Gem::Version
77
77
  version: '0'
78
78
  - !ruby/object:Gem::Dependency
79
79
  name: draper
80
80
  requirement: !ruby/object:Gem::Requirement
81
81
  requirements:
82
- - - ">="
82
+ - - '>='
83
83
  - !ruby/object:Gem::Version
84
84
  version: '0'
85
85
  type: :runtime
86
86
  prerelease: false
87
87
  version_requirements: !ruby/object:Gem::Requirement
88
88
  requirements:
89
- - - ">="
89
+ - - '>='
90
90
  - !ruby/object:Gem::Version
91
91
  version: '0'
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: bundler
94
94
  requirement: !ruby/object:Gem::Requirement
95
95
  requirements:
96
- - - "~>"
96
+ - - ~>
97
97
  - !ruby/object:Gem::Version
98
98
  version: '1.7'
99
99
  type: :development
100
100
  prerelease: false
101
101
  version_requirements: !ruby/object:Gem::Requirement
102
102
  requirements:
103
- - - "~>"
103
+ - - ~>
104
104
  - !ruby/object:Gem::Version
105
105
  version: '1.7'
106
106
  - !ruby/object:Gem::Dependency
107
107
  name: rake
108
108
  requirement: !ruby/object:Gem::Requirement
109
109
  requirements:
110
- - - "~>"
110
+ - - ~>
111
111
  - !ruby/object:Gem::Version
112
112
  version: '10.0'
113
113
  type: :development
114
114
  prerelease: false
115
115
  version_requirements: !ruby/object:Gem::Requirement
116
116
  requirements:
117
- - - "~>"
117
+ - - ~>
118
118
  - !ruby/object:Gem::Version
119
119
  version: '10.0'
120
120
  - !ruby/object:Gem::Dependency
121
121
  name: rspec-rails
122
122
  requirement: !ruby/object:Gem::Requirement
123
123
  requirements:
124
- - - ">="
124
+ - - '>='
125
125
  - !ruby/object:Gem::Version
126
126
  version: '0'
127
127
  type: :development
128
128
  prerelease: false
129
129
  version_requirements: !ruby/object:Gem::Requirement
130
130
  requirements:
131
- - - ">="
131
+ - - '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
+ - !ruby/object:Gem::Dependency
135
+ name: factory_girl
136
+ requirement: !ruby/object:Gem::Requirement
137
+ requirements:
138
+ - - '>='
139
+ - !ruby/object:Gem::Version
140
+ version: '0'
141
+ type: :development
142
+ prerelease: false
143
+ version_requirements: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - '>='
132
146
  - !ruby/object:Gem::Version
133
147
  version: '0'
134
148
  - !ruby/object:Gem::Dependency
135
149
  name: simplecov
136
150
  requirement: !ruby/object:Gem::Requirement
137
151
  requirements:
138
- - - ">="
152
+ - - '>='
139
153
  - !ruby/object:Gem::Version
140
154
  version: '0'
141
155
  type: :development
142
156
  prerelease: false
143
157
  version_requirements: !ruby/object:Gem::Requirement
144
158
  requirements:
145
- - - ">="
159
+ - - '>='
146
160
  - !ruby/object:Gem::Version
147
161
  version: '0'
148
162
  - !ruby/object:Gem::Dependency
149
163
  name: pry
150
164
  requirement: !ruby/object:Gem::Requirement
151
165
  requirements:
152
- - - ">="
166
+ - - '>='
153
167
  - !ruby/object:Gem::Version
154
168
  version: '0'
155
169
  type: :development
156
170
  prerelease: false
157
171
  version_requirements: !ruby/object:Gem::Requirement
158
172
  requirements:
159
- - - ">="
173
+ - - '>='
160
174
  - !ruby/object:Gem::Version
161
175
  version: '0'
162
176
  - !ruby/object:Gem::Dependency
163
177
  name: combustion
164
178
  requirement: !ruby/object:Gem::Requirement
165
179
  requirements:
166
- - - ">="
180
+ - - '>='
167
181
  - !ruby/object:Gem::Version
168
182
  version: '0'
169
183
  type: :development
170
184
  prerelease: false
171
185
  version_requirements: !ruby/object:Gem::Requirement
172
186
  requirements:
173
- - - ">="
187
+ - - '>='
174
188
  - !ruby/object:Gem::Version
175
189
  version: '0'
176
190
  - !ruby/object:Gem::Dependency
177
191
  name: sqlite3
178
192
  requirement: !ruby/object:Gem::Requirement
179
193
  requirements:
180
- - - ">="
194
+ - - '>='
181
195
  - !ruby/object:Gem::Version
182
196
  version: '0'
183
197
  type: :development
184
198
  prerelease: false
185
199
  version_requirements: !ruby/object:Gem::Requirement
186
200
  requirements:
187
- - - ">="
201
+ - - '>='
188
202
  - !ruby/object:Gem::Version
189
203
  version: '0'
190
- description: ".ama.ab.ca site layouts"
204
+ description: .ama.ab.ca site layouts
191
205
  email:
192
206
  - michael.beuken@gmail.com
193
207
  - ruben.a.estevez@gmail.com
@@ -203,9 +217,10 @@ executables: []
203
217
  extensions: []
204
218
  extra_rdoc_files: []
205
219
  files:
206
- - ".gitignore"
207
- - ".rspec"
208
- - ".simplecov"
220
+ - .gitignore
221
+ - .rspec
222
+ - .simplecov
223
+ - .travis.yml
209
224
  - Gemfile
210
225
  - LICENSE.txt
211
226
  - README.md
@@ -284,6 +299,14 @@ files:
284
299
  - lib/ama_layout/navigation.yml
285
300
  - lib/ama_layout/navigation_item.rb
286
301
  - lib/ama_layout/version.rb
302
+ - spec/ama_layout/decorators/moneris_decorator_spec.rb
303
+ - spec/ama_layout/decorators/navigation_decorator_spec.rb
304
+ - spec/ama_layout/decorators/navigation_item_decorator_spec.rb
305
+ - spec/ama_layout/moneris_spec.rb
306
+ - spec/ama_layout/navigation_item_spec.rb
307
+ - spec/ama_layout/navigation_spec.rb
308
+ - spec/factories/navigation.rb
309
+ - spec/factories/navigation_item.rb
287
310
  - spec/helpers/ama_layout_content_helper_spec.rb
288
311
  - spec/helpers/ama_layout_path_helper_spec.rb
289
312
  - spec/internal/config/database.yml
@@ -303,21 +326,29 @@ require_paths:
303
326
  - lib
304
327
  required_ruby_version: !ruby/object:Gem::Requirement
305
328
  requirements:
306
- - - ">="
329
+ - - '>='
307
330
  - !ruby/object:Gem::Version
308
331
  version: '0'
309
332
  required_rubygems_version: !ruby/object:Gem::Requirement
310
333
  requirements:
311
- - - ">="
334
+ - - '>='
312
335
  - !ruby/object:Gem::Version
313
336
  version: '0'
314
337
  requirements: []
315
338
  rubyforge_project:
316
- rubygems_version: 2.4.5
339
+ rubygems_version: 2.0.0
317
340
  signing_key:
318
341
  specification_version: 4
319
- summary: ".ama.ab.ca site layouts"
342
+ summary: .ama.ab.ca site layouts
320
343
  test_files:
344
+ - spec/ama_layout/decorators/moneris_decorator_spec.rb
345
+ - spec/ama_layout/decorators/navigation_decorator_spec.rb
346
+ - spec/ama_layout/decorators/navigation_item_decorator_spec.rb
347
+ - spec/ama_layout/moneris_spec.rb
348
+ - spec/ama_layout/navigation_item_spec.rb
349
+ - spec/ama_layout/navigation_spec.rb
350
+ - spec/factories/navigation.rb
351
+ - spec/factories/navigation_item.rb
321
352
  - spec/helpers/ama_layout_content_helper_spec.rb
322
353
  - spec/helpers/ama_layout_path_helper_spec.rb
323
354
  - spec/internal/config/database.yml