summaryrefslogtreecommitdiff
path: root/spec/unit/chef_fs/file_system_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/unit/chef_fs/file_system_spec.rb')
-rw-r--r--spec/unit/chef_fs/file_system_spec.rb135
1 files changed, 0 insertions, 135 deletions
diff --git a/spec/unit/chef_fs/file_system_spec.rb b/spec/unit/chef_fs/file_system_spec.rb
deleted file mode 100644
index 383a2c81ab..0000000000
--- a/spec/unit/chef_fs/file_system_spec.rb
+++ /dev/null
@@ -1,135 +0,0 @@
-#
-# Author:: John Keiser (<jkeiser@opscode.com>)
-# Copyright:: Copyright (c) 2012 Opscode, Inc.
-# License:: Apache License, Version 2.0
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-require 'spec_helper'
-require 'chef/chef_fs/file_system'
-require 'chef/chef_fs/file_pattern'
-
-describe Chef::ChefFS::FileSystem do
- include FileSystemSupport
-
- context 'with empty filesystem' do
- let(:fs) { memory_fs('', {}) }
-
- context 'list' do
- it '/' do
- list_should_yield_paths(fs, '/', '/')
- end
- it '/a' do
- list_should_yield_paths(fs, '/a', '/a')
- end
- it '/a/b' do
- list_should_yield_paths(fs, '/a/b', '/a/b')
- end
- it '/*' do
- list_should_yield_paths(fs, '/*', '/')
- end
- end
-
- context 'resolve_path' do
- it '/' do
- Chef::ChefFS::FileSystem.resolve_path(fs, '/').path.should == '/'
- end
- it 'nonexistent /a' do
- Chef::ChefFS::FileSystem.resolve_path(fs, '/a').path.should == '/a'
- end
- it 'nonexistent /a/b' do
- Chef::ChefFS::FileSystem.resolve_path(fs, '/a/b').path.should == '/a/b'
- end
- end
- end
-
- context 'with a populated filesystem' do
- let(:fs) {
- memory_fs('', {
- :a => {
- :aa => {
- :c => '',
- :zz => ''
- },
- :ab => {
- :c => '',
- }
- },
- :x => ''
- })
- }
- context 'list' do
- it '/**' do
- list_should_yield_paths(fs, '/**', '/', '/a', '/x', '/a/aa', '/a/aa/c', '/a/aa/zz', '/a/ab', '/a/ab/c')
- end
- it '/' do
- list_should_yield_paths(fs, '/', '/')
- end
- it '/*' do
- list_should_yield_paths(fs, '/*', '/', '/a', '/x')
- end
- it '/*/*' do
- list_should_yield_paths(fs, '/*/*', '/a/aa', '/a/ab')
- end
- it '/*/*/*' do
- list_should_yield_paths(fs, '/*/*/*', '/a/aa/c', '/a/aa/zz', '/a/ab/c')
- end
- it '/*/*/?' do
- list_should_yield_paths(fs, '/*/*/?', '/a/aa/c', '/a/ab/c')
- end
- it '/a/*/c' do
- list_should_yield_paths(fs, '/a/*/c', '/a/aa/c', '/a/ab/c')
- end
- it '/**b/c' do
- list_should_yield_paths(fs, '/**b/c', '/a/ab/c')
- end
- it '/a/ab/c' do
- no_blocking_calls_allowed
- list_should_yield_paths(fs, '/a/ab/c', '/a/ab/c')
- end
- it 'nonexistent /a/ab/blah' do
- no_blocking_calls_allowed
- list_should_yield_paths(fs, '/a/ab/blah', '/a/ab/blah')
- end
- it 'nonexistent /a/ab/blah/bjork' do
- no_blocking_calls_allowed
- list_should_yield_paths(fs, '/a/ab/blah/bjork', '/a/ab/blah/bjork')
- end
- end
-
- context 'resolve_path' do
- before(:each) do
- no_blocking_calls_allowed
- end
- it 'resolves /' do
- Chef::ChefFS::FileSystem.resolve_path(fs, '/').path.should == '/'
- end
- it 'resolves /x' do
- Chef::ChefFS::FileSystem.resolve_path(fs, '/x').path.should == '/x'
- end
- it 'resolves /a' do
- Chef::ChefFS::FileSystem.resolve_path(fs, '/a').path.should == '/a'
- end
- it 'resolves /a/aa' do
- Chef::ChefFS::FileSystem.resolve_path(fs, '/a/aa').path.should == '/a/aa'
- end
- it 'resolves /a/aa/zz' do
- Chef::ChefFS::FileSystem.resolve_path(fs, '/a/aa/zz').path.should == '/a/aa/zz'
- end
- it 'resolves nonexistent /y/x/w' do
- Chef::ChefFS::FileSystem.resolve_path(fs, '/y/x/w').path.should == '/y/x/w'
- end
- end
- end
-end