Sha256: 3647b28cbd48184c910aa0dc89db9033f6d34c5470a369a42442c1c59dc8ef0a
Contents?: true
Size: 1.75 KB
Versions: 1
Compression:
Stored size: 1.75 KB
Contents
require "spec_helper" require "fx/function" module Fx describe Function do describe "#<=>" do it "delegates to `name`" do function_a = Function.new( "name" => "name_a", "definition" => "some defintion", ) function_b = Function.new( "name" => "name_b", "definition" => "some defintion", ) function_c = Function.new( "name" => "name_c", "definition" => "some defintion", ) expect(function_b).to be_between(function_a, function_c) end end describe "#==" do it "compares `name` and `definition`" do function_a = Function.new( "name" => "name_a", "definition" => "some defintion", ) function_b = Function.new( "name" => "name_b", "definition" => "some other defintion", ) expect(function_a).not_to eq(function_b) end end describe "#to_schema" do it "returns a schema compatible version of the function" do function = Function.new( "name" => "uppercase_users_name", "definition" => "CREATE OR REPLACE TRIGGER uppercase_users_name ...", ) expect(function.to_schema).to eq <<-'EOS' create_function :uppercase_users_name, sql_definition: <<-'SQL' CREATE OR REPLACE TRIGGER uppercase_users_name ... SQL EOS end it "maintains backslashes" do function = Function.new( "name" => "regex", "definition" => "CREATE OR REPLACE FUNCTION regex \\1", ) expect(function.to_schema).to eq <<-'EOS' create_function :regex, sql_definition: <<-'SQL' CREATE OR REPLACE FUNCTION regex \1 SQL EOS end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fx-jets-0.6.3s | spec/fx/function_spec.rb |