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]}