ruby-maidcafe 0.0.1
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.
- data/History.txt +5 -0
- data/Manifest.txt +11 -0
- data/README.txt +103 -0
- data/Rakefile +15 -0
- data/bin/ruby-maidcafe +49 -0
- data/lib/cui.rb +71 -0
- data/lib/ruby-maidcafe.rb +231 -0
- data/test/data/shop_t_13.xml +10049 -0
- data/test/data/t_list.xml +49 -0
- data/test/test_resultset.rb +27 -0
- data/test/test_ruby-maidcafe.rb +42 -0
- metadata +65 -0
@@ -0,0 +1,49 @@
|
|
1
|
+
<?xml version='1.0' encoding='UTF-8'?>
|
2
|
+
<channel>
|
3
|
+
<title>メイドカフェでGO!XMLでお店情報取得!β版</title>
|
4
|
+
<link>http://moeten.info/maidcafe/?m=api</link>
|
5
|
+
<description>メイドカフェでGO!から情報を取得します</description>
|
6
|
+
<language>ja</language>
|
7
|
+
<generator>http://moeten.info/maidcafe/?m=api</generator>
|
8
|
+
<docs/>
|
9
|
+
<item>
|
10
|
+
<todouhuken>北海道</todouhuken>
|
11
|
+
<tid>1</tid>
|
12
|
+
</item>
|
13
|
+
<item>
|
14
|
+
<todouhuken>栃木県</todouhuken>
|
15
|
+
<tid>9</tid>
|
16
|
+
</item>
|
17
|
+
<item>
|
18
|
+
<todouhuken>埼玉県</todouhuken>
|
19
|
+
<tid>11</tid>
|
20
|
+
</item>
|
21
|
+
<item>
|
22
|
+
<todouhuken>東京都</todouhuken>
|
23
|
+
<tid>13</tid>
|
24
|
+
</item>
|
25
|
+
<item>
|
26
|
+
<todouhuken>神奈川県</todouhuken>
|
27
|
+
<tid>14</tid>
|
28
|
+
</item>
|
29
|
+
<item>
|
30
|
+
<todouhuken>岐阜県</todouhuken>
|
31
|
+
<tid>21</tid>
|
32
|
+
</item>
|
33
|
+
<item>
|
34
|
+
<todouhuken>愛知県</todouhuken>
|
35
|
+
<tid>23</tid>
|
36
|
+
</item>
|
37
|
+
<item>
|
38
|
+
<todouhuken>大阪府</todouhuken>
|
39
|
+
<tid>27</tid>
|
40
|
+
</item>
|
41
|
+
<item>
|
42
|
+
<todouhuken>福岡県</todouhuken>
|
43
|
+
<tid>40</tid>
|
44
|
+
</item>
|
45
|
+
<item>
|
46
|
+
<todouhuken>鹿児島県</todouhuken>
|
47
|
+
<tid>46</tid>
|
48
|
+
</item>
|
49
|
+
</channel>
|
@@ -0,0 +1,27 @@
|
|
1
|
+
$KCODE = 'u'
|
2
|
+
$:.unshift File.join(File.dirname(__FILE__), '../lib')
|
3
|
+
require 'test/unit'
|
4
|
+
require 'ruby-maidcafe'
|
5
|
+
|
6
|
+
class MaidcafeTest < Test::Unit::TestCase
|
7
|
+
def setup
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_specialities
|
11
|
+
rs = Maidcafe::ResultSet.new(nil, read_xml('t_list'))
|
12
|
+
assert_equal 'Maidcafe::Prefecture', rs.items.first.class.name
|
13
|
+
|
14
|
+
rs = Maidcafe::ResultSet.new(:shop, read_xml('shop_t_13'))
|
15
|
+
assert_equal 'Maidcafe::Moe', rs.items.first.class.name
|
16
|
+
assert_equal 'Maidcafe::Moe::Shop', rs.items.first.instance_eval{@specialities}.class.name
|
17
|
+
assert_equal "17:00〜23:00
|
18
|
+
(平日 18:00〜22:30)
|
19
|
+
(金土祝前日 翌日5:00)", rs.items.first.opening_hour
|
20
|
+
end
|
21
|
+
|
22
|
+
def read_xml(dataname)
|
23
|
+
File.open("#{File.dirname(File.expand_path(__FILE__))}/data/#{dataname}.xml") do |f|
|
24
|
+
REXML::Document.new f
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
$KCODE = 'u'
|
2
|
+
$:.unshift File.join(File.dirname(__FILE__), '../lib')
|
3
|
+
require 'test/unit'
|
4
|
+
require 'ruby-maidcafe'
|
5
|
+
|
6
|
+
class MaidcafeTest < Test::Unit::TestCase
|
7
|
+
def setup
|
8
|
+
@api = Maidcafe::API.new
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_request_url
|
12
|
+
assert_equal "http://moeten.info/maidcafe/?type=list&tid=27&m=api",
|
13
|
+
@api.request_url(:list, :tid => 27)
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_list
|
17
|
+
type_list = @api.list :type
|
18
|
+
assert_equal 'http://moeten.info/maidcafe/?m=api', type_list.link
|
19
|
+
assert !type_list.items.empty?
|
20
|
+
assert_equal Maidcafe::Type, type_list.items.first.class
|
21
|
+
|
22
|
+
category_list = @api.list :category
|
23
|
+
assert_equal 'http://moeten.info/maidcafe/?m=api', category_list.link
|
24
|
+
assert !category_list.items.empty?
|
25
|
+
assert_equal Maidcafe::Category, category_list.items.first.class
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_invoke
|
29
|
+
cafes = @api.shop :category => 1
|
30
|
+
assert_equal 'http://moeten.info/maidcafe/?m=api', cafes.link
|
31
|
+
assert !cafes.items.empty?
|
32
|
+
assert_not_nil cafes.items.first.name # in main
|
33
|
+
assert_not_nil cafes.items.first.opening_hour # in specialities
|
34
|
+
assert_equal Maidcafe::Moe, cafes.items.first.class
|
35
|
+
assert_equal Maidcafe::Moe::Shop, cafes.items.first.instance_eval{@specialities}.class
|
36
|
+
|
37
|
+
events_in_osaka = @api.event :prefecture => Maidcafe::Prefecture::OSAKA
|
38
|
+
assert !events_in_osaka.items.empty?
|
39
|
+
assert_equal Maidcafe::Moe, events_in_osaka.items.first.class
|
40
|
+
assert_equal Maidcafe::Moe::Event, events_in_osaka.items.first.instance_eval{@specialities}.class
|
41
|
+
end
|
42
|
+
end
|
metadata
ADDED
@@ -0,0 +1,65 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
rubygems_version: 0.9.0
|
3
|
+
specification_version: 1
|
4
|
+
name: ruby-maidcafe
|
5
|
+
version: !ruby/object:Gem::Version
|
6
|
+
version: 0.0.1
|
7
|
+
date: 2007-06-24 00:00:00 +09:00
|
8
|
+
summary: ruby interface for Maidcafe API (http://moeten.info/maidcafe/?m=api)
|
9
|
+
require_paths:
|
10
|
+
- lib
|
11
|
+
email: ryand-ruby@zenspider.com
|
12
|
+
homepage: " by ANDO Yasushi (andyjpn@gmail.com)"
|
13
|
+
rubyforge_project: ruby-maidcafe
|
14
|
+
description: "By utilizing this library, you can retrieve information of Japanese Maidcafe via Maidcafe API web service (http://moeten.info/maidcafe/?m=api). This can be used as interactive command line tool, non-interactive one, and library. == SYNOPSIS: In your code: * get shop list api = Maidcafe::API.new rs = api.list :shop puts rs.description rs.items.each do |item| puts item.name puts item.id end\t * get shop information in osaka rs = api.shop :prefecture => Maidcafe::Prefecture::OSAKA puts rs.description rs.items.each do |item| puts item.name puts item.description puts item.opening_hour end"
|
15
|
+
autorequire:
|
16
|
+
default_executable:
|
17
|
+
bindir: bin
|
18
|
+
has_rdoc: true
|
19
|
+
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">"
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.0.0
|
24
|
+
version:
|
25
|
+
platform: ruby
|
26
|
+
signing_key:
|
27
|
+
cert_chain:
|
28
|
+
post_install_message:
|
29
|
+
authors:
|
30
|
+
- Ryan Davis
|
31
|
+
files:
|
32
|
+
- History.txt
|
33
|
+
- Rakefile
|
34
|
+
- Manifest.txt
|
35
|
+
- README.txt
|
36
|
+
- bin/ruby-maidcafe
|
37
|
+
- lib/ruby-maidcafe.rb
|
38
|
+
- lib/cui.rb
|
39
|
+
- test/test_ruby-maidcafe.rb
|
40
|
+
- test/test_resultset.rb
|
41
|
+
- test/data/shop_t_13.xml
|
42
|
+
- test/data/t_list.xml
|
43
|
+
test_files:
|
44
|
+
- test/test_ruby-maidcafe.rb
|
45
|
+
- test/test_resultset.rb
|
46
|
+
rdoc_options: []
|
47
|
+
|
48
|
+
extra_rdoc_files: []
|
49
|
+
|
50
|
+
executables:
|
51
|
+
- ruby-maidcafe
|
52
|
+
extensions: []
|
53
|
+
|
54
|
+
requirements: []
|
55
|
+
|
56
|
+
dependencies:
|
57
|
+
- !ruby/object:Gem::Dependency
|
58
|
+
name: hoe
|
59
|
+
version_requirement:
|
60
|
+
version_requirements: !ruby/object:Gem::Version::Requirement
|
61
|
+
requirements:
|
62
|
+
- - ">="
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: 1.2.0
|
65
|
+
version:
|