spec/build/dependency/provider_spec.rb in build-dependency-1.3.0 vs spec/build/dependency/provider_spec.rb in build-dependency-1.4.0

- old
+ new

@@ -16,17 +16,19 @@ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. +require_relative 'package' + RSpec.describe Build::Dependency::Provider do include_context "app packages" let(:provider) do Package.new("test").tap do |package| package.depends "a", private: true - package.depends "b" + package.depends "b", public: true package.depends :variant package.provides "c" do puts "Hello World" end @@ -58,11 +60,11 @@ expect(subject.to_s).to be == 'provides "c"' end end describe Build::Dependency::Depends do - subject {provider.dependencies.first} + subject {provider.dependencies["a"]} it "should have a name" do expect(subject.name).to be == "a" end @@ -70,9 +72,41 @@ is_expected.to_not be_alias end it "should format nicely" do expect(subject.to_s).to be == 'depends on "a" {:private=>true}' + end + + it "should be private" do + expect(subject).to be_private + end + + it "should not be public" do + expect(subject).to_not be_public + end + end + + describe Build::Dependency::Depends do + subject {provider.dependencies["b"]} + + it "should be public" do + expect(subject).to be_public + end + + it "should not be private" do + expect(subject).to_not be_private + end + end + + describe Build::Dependency::Depends do + subject {provider.dependencies[:variant]} + + it "should not be public" do + expect(subject).to_not be_public + end + + it "should not be private" do + expect(subject).to_not be_private end end describe Build::Dependency::Alias do subject {provider.provisions[:platform]}