rfusefs 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,29 @@
1
+ require 'rfusefs'
2
+ require 'tmpdir'
3
+ require 'pathname'
4
+ require 'samples/hello'
5
+
6
+ describe "Access Hello World sample from Ruby file operations" do
7
+ before(:all) do
8
+ tmpdir = Pathname.new(Dir.tmpdir) + "rfusefs"
9
+ tmpdir.mkdir unless tmpdir.directory?
10
+ @mountpoint = tmpdir + "sample_spec"
11
+ @mountpoint.mkdir unless @mountpoint.directory?
12
+ hello = HelloDir.new()
13
+ FuseFS.mount(@mountpoint,hello)
14
+ #Give FUSE some time to get started
15
+ sleep(1)
16
+ end
17
+
18
+ after(:all) do
19
+ FuseFS.unmount(@mountpoint)
20
+ end
21
+
22
+ it "should list expected root directory contents" do
23
+ Dir.entries(@mountpoint.to_s).should =~ [".","..","hello.txt"]
24
+ end
25
+
26
+ it "should output the expected sample contents" do
27
+ (@mountpoint + "hello.txt").read().should == "Hello, World!\n"
28
+ end
29
+ end
@@ -0,0 +1,41 @@
1
+ require 'rfusefs'
2
+ require 'fusefs/metadir'
3
+ require 'fcntl'
4
+ require 'tmpdir'
5
+ require 'pathname'
6
+ require 'fileutils'
7
+
8
+ module RFuseFSHelper
9
+
10
+ def pathnames(*args)
11
+ args.collect {|x| Pathname.new(x) }
12
+ end
13
+
14
+ def permissions(mode)
15
+ return (mode & 07777)
16
+ end
17
+
18
+ def filetype(mode)
19
+ return (mode & FuseFS::Stat::S_IFMT)
20
+ end
21
+
22
+ FuseContext = Struct.new(:uid,:gid)
23
+ def fuse_context(uid=Process.uid,gid=Process.gid)
24
+ FuseContext.new(uid,gid)
25
+ end
26
+
27
+ def pathmap(real_file,mapped_path)
28
+ File.open(real_file.to_s,"w") do |f|
29
+ f << mapped_path
30
+ end
31
+ end
32
+
33
+ def mktmpdir(name)
34
+ tmpdir = Pathname.new(Dir.tmpdir) + "rfusefs"
35
+ tmpdir = tmpdir + name
36
+ FileUtils.mkdir_p(tmpdir.to_s) unless tmpdir.directory?
37
+ tmpdir
38
+ end
39
+ end
40
+
41
+ include RFuseFSHelper
@@ -0,0 +1,12 @@
1
+ require 'fusefs'
2
+
3
+ describe "Using fusefs compatibility mode" do
4
+ describe FuseFS do
5
+
6
+ it "should indicate FuseFS compatibility" do
7
+ FuseFS::RFUSEFS_COMPATIBILITY.should be_false
8
+ end
9
+
10
+ it "should use FuseFS compatible raw calls"
11
+ end
12
+ end
data.tar.gz.sig ADDED
Binary file
metadata ADDED
@@ -0,0 +1,166 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rfusefs
3
+ version: !ruby/object:Gem::Version
4
+ hash: 63
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 8
9
+ - 0
10
+ version: 0.8.0
11
+ platform: ruby
12
+ authors:
13
+ - Grant Gardner
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain:
17
+ - |
18
+ -----BEGIN CERTIFICATE-----
19
+ MIIDYDCCAkigAwIBAgIBADANBgkqhkiG9w0BAQUFADBWMQ4wDAYDVQQDDAVncmFu
20
+ dDEbMBkGCgmSJomT8ixkARkWC2xhc3R3ZWVrZW5kMRMwEQYKCZImiZPyLGQBGRYD
21
+ Y29tMRIwEAYKCZImiZPyLGQBGRYCYXUwHhcNMTEwMzA0MDgyMDU4WhcNMTIwMzAz
22
+ MDgyMDU4WjBWMQ4wDAYDVQQDDAVncmFudDEbMBkGCgmSJomT8ixkARkWC2xhc3R3
23
+ ZWVrZW5kMRMwEQYKCZImiZPyLGQBGRYDY29tMRIwEAYKCZImiZPyLGQBGRYCYXUw
24
+ ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZMivZ63DzwHyC2Zzk23fA
25
+ GbTwLVi1WY/X36F3YIss8rDG9iiIcgSjS1fwarbenTdbOenWtRkTgh5zQdg2gker
26
+ KlXCTdklILDYoSMlopnVXgnqbvwdGhylyWwIp6kkZxaSbRBht35x02RgQmaVEb1N
27
+ iHvfHSdsH7tc2mAi8C+fDP2QcJSSo50NXrpW/vis2oo8TcRGVIIp+Y/APZ4KJx1J
28
+ WVrZAZZAICviJCOhNLZiNT1npsllCEo3b+6sy591ijmEuPFjfJu0gEAjRt+kfptr
29
+ PrTm5zP5QPv5w5NS5gkkSjP1q0uqsrhSdm9ONIJc+e9287YbM3SqdWNc3whlOmhp
30
+ AgMBAAGjOTA3MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBT+Vezp
31
+ 3TzNqB1QggX4rz4LLrVNzjANBgkqhkiG9w0BAQUFAAOCAQEAWYauurgZeHF828KI
32
+ 9BPEAdtGquNjl3XUNer8VffxYyTDp+coDEm2X8f25irMP8oeHcPu9MUjWHFC8Tlq
33
+ keYnjSdQ+TeJSsdehNbD57hyC4+jKrLzFIKvx7TVVn/Wqmd2JtYQgb+ebv/BVCFp
34
+ /da/vfFv5nceMQIfRAwBbCG0garjLvcyim7eIGECj3scJmpNuDuX44B8uDmV3sIG
35
+ TUJYDcP33dfa6DU4jou4EQ644VBbSuIt8+FAgg/EtkfUzR0n3ThCBZ3EpEVrjnE8
36
+ 1ZkYUwzHrmKA8VmcjrJbpIWr9ZTqHbql73UDS7eRCxlWP+MDCegVMIXkUFQWvvuy
37
+ zheZVw==
38
+ -----END CERTIFICATE-----
39
+
40
+ date: 2011-03-04 00:00:00 +11:00
41
+ default_executable:
42
+ dependencies:
43
+ - !ruby/object:Gem::Dependency
44
+ name: rfuse-ng
45
+ prerelease: false
46
+ requirement: &id001 !ruby/object:Gem::Requirement
47
+ none: false
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ hash: 13
52
+ segments:
53
+ - 0
54
+ - 5
55
+ - 3
56
+ version: 0.5.3
57
+ type: :runtime
58
+ version_requirements: *id001
59
+ - !ruby/object:Gem::Dependency
60
+ name: hoe-yard
61
+ prerelease: false
62
+ requirement: &id002 !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ hash: 31
68
+ segments:
69
+ - 0
70
+ - 1
71
+ - 2
72
+ version: 0.1.2
73
+ type: :development
74
+ version_requirements: *id002
75
+ - !ruby/object:Gem::Dependency
76
+ name: hoe
77
+ prerelease: false
78
+ requirement: &id003 !ruby/object:Gem::Requirement
79
+ none: false
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ hash: 41
84
+ segments:
85
+ - 2
86
+ - 9
87
+ - 1
88
+ version: 2.9.1
89
+ type: :development
90
+ version_requirements: *id003
91
+ description: |-
92
+ RFuseFS is a port of the FuseFS[http://rubyforge.org/projects/fusefs]
93
+ library aimed at allowing Ruby programmers to quickly and easily create
94
+ virtual filesystems with little more than a few lines of code.
95
+
96
+ RFuseFS is api compatible with {FuseFS (0.7.0)}[https://github.com/duairc/fusefs]
97
+ email:
98
+ - grant@lastweekend.com.au
99
+ executables: []
100
+
101
+ extensions: []
102
+
103
+ extra_rdoc_files:
104
+ - TODO.txt
105
+ - History.txt
106
+ files:
107
+ - lib/rfusefs.rb
108
+ - README.rdoc
109
+ - Rakefile
110
+ - TODO.txt
111
+ - lib/fusefs.rb
112
+ - lib/fusefs/metadir.rb
113
+ - lib/fusefs/pathmapper.rb
114
+ - lib/fusefs/dirlink.rb
115
+ - lib/fuse/rfusefs-fuse.rb
116
+ - samples/demo.rb
117
+ - samples/dictfs.rb
118
+ - samples/hello.rb
119
+ - samples/openurifs.rb
120
+ - samples/railsfs.rb
121
+ - samples/sqlfs.rb
122
+ - samples/yamlfs.rb
123
+ - spec-fusefs/fusefs_spec.rb
124
+ - spec/rfusefs_spec.rb
125
+ - spec/sample_spec.rb
126
+ - spec/spec_helper.rb
127
+ - History.txt
128
+ - .gemtest
129
+ has_rdoc: true
130
+ homepage: https://github.com/lwoggardner/rfusefs
131
+ licenses: []
132
+
133
+ post_install_message:
134
+ rdoc_options:
135
+ - --title
136
+ - Rfusefs Documentation
137
+ - --quiet
138
+ require_paths:
139
+ - lib
140
+ required_ruby_version: !ruby/object:Gem::Requirement
141
+ none: false
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ hash: 3
146
+ segments:
147
+ - 0
148
+ version: "0"
149
+ required_rubygems_version: !ruby/object:Gem::Requirement
150
+ none: false
151
+ requirements:
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ hash: 3
155
+ segments:
156
+ - 0
157
+ version: "0"
158
+ requirements: []
159
+
160
+ rubyforge_project: rfusefs
161
+ rubygems_version: 1.6.0
162
+ signing_key:
163
+ specification_version: 3
164
+ summary: RFuseFS is a port of the FuseFS[http://rubyforge.org/projects/fusefs] library aimed at allowing Ruby programmers to quickly and easily create virtual filesystems with little more than a few lines of code
165
+ test_files: []
166
+
metadata.gz.sig ADDED
@@ -0,0 +1 @@
1
+ ��/� û���'�=��5,P1K��ۜ��wdj��ϧ�E�%����WN��D���+Oy�%�