filecluster 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
data/lib/fc/item.rb CHANGED
@@ -113,5 +113,11 @@ module FC
113
113
  def get_item_storages
114
114
  FC::ItemStorage.where("item_id = #{id}")
115
115
  end
116
+
117
+ def get_available_storages
118
+ r = FC::DB.connect.query("SELECT st.* FROM #{FC::Storage.table_name} as st, #{FC::ItemStorage.table_name} as ist WHERE
119
+ ist.item_id = #{id} AND ist.status='ready' AND ist.storage_name = st.name")
120
+ r.map{|data| FC::Storage.create_from_fiels(data)}.select {|storage| storage.up? }
121
+ end
116
122
  end
117
123
  end
data/lib/fc/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module FC
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
data/test/item_test.rb CHANGED
@@ -11,7 +11,7 @@ class ItemTest < Test::Unit::TestCase
11
11
  @@storages << FC::Storage.new(:name => 'rec2-sda', :host => 'rec2')
12
12
  @@item_storages = @@storages.map do |storage|
13
13
  storage.save
14
- item_storage = FC::ItemStorage.new(:item_id => @@item.id, :storage_name => storage.name)
14
+ item_storage = FC::ItemStorage.new(:item_id => @@item.id, :storage_name => storage.name, :status => 'ready')
15
15
  item_storage.save
16
16
  item_storage
17
17
  end
@@ -21,10 +21,6 @@ class ItemTest < Test::Unit::TestCase
21
21
  FC::DB.connect.query("DELETE FROM items")
22
22
  FC::DB.connect.query("DELETE FROM storages")
23
23
  end
24
- end
25
-
26
- should "get_item_storages" do
27
- assert_same_elements @@item_storages.map(&:id), @@item.get_item_storages.map(&:id)
28
24
  end
29
25
 
30
26
  should "create_from_local" do
@@ -46,4 +42,13 @@ class ItemTest < Test::Unit::TestCase
46
42
  end
47
43
  end
48
44
 
45
+ should "get_item_storages" do
46
+ assert_same_elements @@item_storages.map(&:id), @@item.get_item_storages.map(&:id)
47
+ end
48
+
49
+ should "item get_available_storages" do
50
+ @@storages[0].update_check_time
51
+ assert_equal 1, @@item.get_available_storages.count
52
+ assert_equal @@storages[0].name, @@item.get_available_storages.first.name
53
+ end
49
54
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: filecluster
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-04-25 00:00:00.000000000 Z
12
+ date: 2013-05-13 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rb-readline
@@ -186,7 +186,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
186
186
  version: '0'
187
187
  segments:
188
188
  - 0
189
- hash: -1105440005900324058
189
+ hash: 191961039
190
190
  required_rubygems_version: !ruby/object:Gem::Requirement
191
191
  none: false
192
192
  requirements:
@@ -195,7 +195,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
195
195
  version: '0'
196
196
  segments:
197
197
  - 0
198
- hash: -1105440005900324058
198
+ hash: 191961039
199
199
  requirements: []
200
200
  rubyforge_project:
201
201
  rubygems_version: 1.8.24