lib/r_spec.rb in r_spec-1.0.1 vs lib/r_spec.rb in r_spec-1.0.2

- old
+ new

@@ -1,170 +1,8 @@ # frozen_string_literal: true -require_relative File.join("r_spec", "dsl") - # Top level namespace for the RSpec clone. -# -# @example The true from the false -# require "r_spec" -# -# RSpec.describe "The true from the false" do -# it { expect(false).not_to be true } -# end -# -# # Output to the console -# # Success: expected false not to be true. -# -# @example The basic behavior of arrays -# require "r_spec" -# -# RSpec.describe Array do -# describe "#size" do -# it "correctly reports the number of elements in the Array" do -# expect([1, 2, 3].size).to eq 3 -# end -# end -# -# describe "#empty?" do -# it "is empty when no elements are in the array" do -# expect([].empty?).to be_true -# end -# -# it "is not empty if there are elements in the array" do -# expect([1].empty?).to be_false -# end -# end -# end -# -# # Output to the console -# # Success: expected to eq 3. -# # Success: expected true to be true. -# # Success: expected false to be false. -# -# @example An inherited definition of let -# require "r_spec" -# -# RSpec.describe Integer do -# let(:answer) { 42 } -# -# it "returns the value" do -# expect(answer).to be(42) -# end -# -# context "when the number is incremented" do -# let(:answer) { super().next } -# -# it "returns the next value" do -# expect(answer).to be(43) -# end -# end -# end -# -# # Output to the console -# # Success: expected to be 42. -# # Success: expected to be 43. -# -# @api public +# @see https://github.com/cyril/r_spec-clone.rb module RSpec - # Defines an example group that establishes a specific context, like _empty - # array_ versus _array with elements_. - # - # Unlike {.describe}, the block is evaluated in isolation in order to scope - # possible side effects inside its context. - # - # @example - # require "r_spec" - # - # RSpec.context "when divided by zero" do - # subject { 42 / 0 } - # - # it { is_expected.to raise_exception ZeroDivisionError } - # end - # - # # Output to the console - # # Success: divided by 0. - # - # @param description [String] A description that usually begins with "when", - # "with" or "without". - # @param block [Proc] The block to define the specs. - # - # @api public - def self.context(description, &block) - Dsl.context(description, &block) - end - - # Defines an example group that describes a unit to be tested. - # - # @example - # require "r_spec" - # - # RSpec.describe String do - # describe "+" do - # it("concats") { expect("foo" + "bar").to eq "foobar" } - # end - # end - # - # # Output to the console - # # Success: expected to eq "foobar". - # - # @param const [Module, String] A module to include in block context. - # @param block [Proc] The block to define the specs. - # - # @api public - def self.describe(const, &block) - Dsl.describe(const, &block) - end - - # Defines a concrete test case. - # - # The test is performed by the block supplied to &block. - # - # @example The integer after 41 - # require "r_spec" - # - # RSpec.it { expect(41.next).to be 42 } - # - # # Output to the console - # # Success: expected to be 42. - # - # It is usually used inside a {Dsl.describe} or {Dsl.context} section. - # - # @param name [String, nil] The name of the spec. - # @param block [Proc] An expectation to evaluate. - # - # @raise (see RSpec::ExpectationTarget::Base#result) - # @return (see RSpec::ExpectationTarget::Base#result) - # - # @api public - def self.it(name = nil, &block) - Dsl.it(name, &block) - end - - # Defines a pending test case. - # - # `&block` is never evaluated. It can be used to describe behaviour that is - # not yet implemented. - # - # @example - # require "r_spec" - # - # RSpec.pending "is implemented but waiting" do - # expect something to be finished - # end - # - # RSpec.pending "is not yet implemented and waiting" - # - # # Output to the console - # # Warning: is implemented but waiting. - # # Warning: is not yet implemented and waiting. - # - # It is usually used inside a {Dsl.describe} or {Dsl.context} section. - # - # @param message [String] The reason why the example is pending. - # - # @return [nil] Write a message to STDOUT. - # - # @api public - def self.pending(message) - Dsl.pending(message) - end end + +require "r_spec/clone"