spec/helpers/argyle_helper_spec.rb in argyle-0.0.1 vs spec/helpers/argyle_helper_spec.rb in argyle-0.1.0

- old
+ new

@@ -1,11 +1,11 @@ require 'spec_helper' describe ArgyleHelper do before(:each) do Argyle.configuration.key = 'key' - @options = {form_id: 'ohai', name: 'ohai', action: plaid_index_path} + @options = {form_id: 'ohai', name: 'ohai', action: plaid_index_path, token: 'myToken', webhook: 'http://myhook.com'} end describe "#plaid_link" do it "responds to plaid_link" do expect(helper).to respond_to(:plaid_link) @@ -31,21 +31,21 @@ expect(helper).to receive(:plaid_link_form).with('plaidForm', plaid_index_path).and_return("") helper.plaid_link(@options) end it "sets a default product" do - expect(helper).to receive(:plaid_link_script).with('ohai', 'ohai', 'auth', 'tartan').and_return("") + expect(helper).to receive(:plaid_link_script).with('ohai', 'ohai', 'auth', 'tartan', @options).and_return("") helper.plaid_link(@options) end it "sets a default env" do - expect(helper).to receive(:plaid_link_script).with('ohai', 'ohai', 'auth', 'tartan').and_return("") + expect(helper).to receive(:plaid_link_script).with('ohai', 'ohai', 'auth', 'tartan', @options).and_return("") helper.plaid_link(@options) end it "returns the form and script HTML" do - expect(helper.plaid_link(@options)).to eq("<form id=\"ohai\" action=\"/plaid/index\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" /><script src=\"https://cdn.plaid.com/link/stable/link-initialize.js\" data-client-name=\"ohai\" data-form-id=\"ohai\" data-key=\"key\" data-product=\"auth\" data-env=\"tartan\">\n//<![CDATA[\n\n//]]>\n</script>") + expect(helper.plaid_link(@options)).to eq("<form id=\"ohai\" action=\"/plaid/index\" accept-charset=\"UTF-8\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" /><script src=\"https://cdn.plaid.com/link/stable/link-initialize.js\" data-client-name=\"ohai\" data-form-id=\"ohai\" data-key=\"key\" data-product=\"auth\" data-env=\"tartan\" data-webhook=\"http://myhook.com\" data-token=\"myToken\">\n//<![CDATA[\n\n//]]>\n</script>") end end describe "#plaid_link_form" do it "returns plaid form with specified action" do @@ -56,10 +56,20 @@ expect(helper.plaid_link_form('myId', plaid_index_path)).to eq('<form id="myId" action="/plaid/index" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="&#x2713;" />') end end describe "#plaid_link_script" do - it "returns plaid script with" do - expect(helper.plaid_link_script('id', 'name', 'product', 'env')).to eq("<script src=\"https://cdn.plaid.com/link/stable/link-initialize.js\" data-client-name=\"name\" data-form-id=\"id\" data-key=\"key\" data-product=\"product\" data-env=\"env\">\n//<![CDATA[\n\n//]]>\n</script>") + it "returns plaid script tag" do + expect(helper.plaid_link_script('id', 'name', 'product', 'env', @options)).to eq("<script src=\"https://cdn.plaid.com/link/stable/link-initialize.js\" data-client-name=\"name\" data-form-id=\"id\" data-key=\"key\" data-product=\"product\" data-env=\"env\" data-webhook=\"http://myhook.com\" data-token=\"myToken\">\n//<![CDATA[\n\n//]]>\n</script>") end + + it "optionally returns plaid script tag with webhook" do + @options.delete :webhook + expect(helper.plaid_link_script('id', 'name', 'product', 'env', @options)).to eq("<script src=\"https://cdn.plaid.com/link/stable/link-initialize.js\" data-client-name=\"name\" data-form-id=\"id\" data-key=\"key\" data-product=\"product\" data-env=\"env\" data-token=\"myToken\">\n//<![CDATA[\n\n//]]>\n</script>") + end + + it "optionally returns plaid script tag with token" do + @options.delete :token + expect(helper.plaid_link_script('id', 'name', 'product', 'env', @options)).to eq("<script src=\"https://cdn.plaid.com/link/stable/link-initialize.js\" data-client-name=\"name\" data-form-id=\"id\" data-key=\"key\" data-product=\"product\" data-env=\"env\" data-webhook=\"http://myhook.com\">\n//<![CDATA[\n\n//]]>\n</script>") + end end -end \ No newline at end of file +end