quiyo 0.1.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/.document CHANGED
File without changes
data/Gemfile CHANGED
File without changes
data/LICENSE.txt CHANGED
File without changes
data/README.rdoc CHANGED
File without changes
data/Rakefile CHANGED
File without changes
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.2.1
data/bin/quiyo CHANGED
@@ -11,19 +11,67 @@ print " __
11
11
  \\/_/ \\/__/ is starting. Have patience, fool!
12
12
  "
13
13
 
14
- unless File.exists?("#{ENV["HOME"]}/.config/quiyo")
15
- p "Generating configuration"
16
- Dir.mkdir("#{ENV["HOME"]}/.config/quiyo")
17
- File.open("#{ENV["HOME"]}/.config/quiyo/config.yml", "w") { |f| f.write("
14
+ config_path = (ENV["XDG_CONFIG_HOME"] == NIL ? ENV["HOME"] + "/.config" : ENV["XDG_CONFIG_HOME"]) + "/quiyo"
15
+
16
+ unless File.exists?("#{config_path}/config.yml")
17
+ p "Generating configuration"
18
+ Dir.mkdir(config_path)
19
+ File.open("#{config_path}/config.yml", "w") { |f| f.write("
18
20
  server: localhost
19
21
  port: 6600
20
22
  mpd_user: #{ENV["USER"]}
21
23
 
22
24
  music_path: #{ENV["HOME"]}/Music
23
- database: #{ENV["HOME"]}/.config/quiyo/database.db") }
24
- p "Sample configuration can be found at #{ENV["HOME"]}/.config/quiyo"
25
- p "Edit the configuration, and re-run Quiyo"
26
- abort
25
+ database: #{config_path}/database.db
26
+
27
+ #
28
+ # Colors:
29
+ # %<color number (0-255)> - start color
30
+ # %n - stop color
31
+ #
32
+ # Placeholders:
33
+ # $state - Current state (play/pause/stop)
34
+ # $flags - Status flags (as in ncmpc: z = random, x = crossfade, r = repeat)
35
+ #
36
+ # Everything else is printed verbatim
37
+ #
38
+
39
+ prompt: %4$state%n(%7$flags%n) %2>>>%n
40
+
41
+ separator: ----~---~-~---------~~------~-
42
+
43
+ colors:
44
+ artist: 4
45
+ title: 1
46
+ album: 2
47
+ year: 7
48
+ separator: 238
49
+ info_key: 99
50
+ info_value: 185
51
+ error: 196
52
+ smiley_frown: 202
53
+
54
+ aliases:
55
+ np: nowplaying
56
+ stats: info
57
+ pl: play(action[1])
58
+ pa: pause
59
+ st: stop
60
+ nx: playnext
61
+ prev: playprevious
62
+ lspl: lsplist
63
+ clear: clearplist
64
+ add: addtoplist(action)
65
+ del: removefromplist(action[1])
66
+ lsartists: list('artists')
67
+ lsalbums: list('albums', action)
68
+ loves: loved
69
+ vol: vol(action[1])
70
+ exit: quit
71
+ v: action.drop(1).join(' ')" }
72
+ p "Sample configuration can be found at #{config_path}"
73
+ p "Edit the configuration, and re-run Quiyo"
74
+ abort
27
75
  end
28
76
 
29
77
  require "quiyo"
data/lib/quiyo/colors.rb CHANGED
@@ -1,9 +1,18 @@
1
- module Colors
2
- def colorize(text, color_code)
3
- "\001\e[38;5;#{color_code}m\002#{text}\001\e[0m\002"
4
- end
5
- end
6
-
7
1
  class Quiyo
8
- include Colors
2
+ module Colors
3
+ def colorize(text, color_code)
4
+ "\001\e[38;5;#{color_code}m\002#{text}\001\e[0m\002"
5
+ end
6
+
7
+ def printsonglist(song)
8
+ print "[%s] %s : %s [%s]\n" % [
9
+ song["pos"],
10
+ colorize(song["artist"], CONF["colors"]["artist"]),
11
+ colorize(song["title"], CONF["colors"]["title"]),
12
+ colorize(song["album"], CONF["colors"]["album"])
13
+ ]
14
+ end
15
+
16
+ end
17
+ include Colors
9
18
  end
data/lib/quiyo/core.rb CHANGED
@@ -1,59 +1,55 @@
1
- module Core
2
- def showprompt
3
- Readline.completion_append_character = " "
4
- Readline.completion_proc = Proc.new { |str|
5
- Dir[PATH+str+'*'].grep( /^#{Regexp.escape(str)}/ )
6
- }
7
-
8
- def readline_hist
9
- line = Readline.readline(prompt, true)
10
- return nil if line.nil?
11
- if line =~ /^\s*$/ or Readline::HISTORY.to_a[-2] == line
12
- Readline::HISTORY.pop
13
- end
14
- line
15
- end
16
-
17
- while line = readline_hist
18
- @mpd.connect unless @mpd.connected?
19
- action = line.split
20
- case action[0]
21
- when "np", "now-playing"; nowplaying
22
- when "info", "stats"; info
23
-
24
- when "pl", "play"; play(action[1])
25
- when "pa", "pause"; pause
26
- when "st", "stop"; stop
27
- when "nx", "next"; playnext
28
- when "prev", "previous"; playprevious
29
-
30
- when "lspl", "lsplaylist"; lsplist
31
- when "clear", "clearplaylist"; clearplist
32
- when "add", "addtoplaylist"; addtoplist(action)
33
-
34
- when "search"; search(action)
35
- when "lsartists", "list-artists"; list("artists")
36
- when "lsalbums", "list-albums"; list("albums", action)
37
-
38
- when "love"; love
39
- when "loved", "loves"; loved
40
-
41
- when "vol", "volume"; vol(action[1])
42
-
43
- when "quit", "exit"; quit
44
-
45
- when "v", "verbose"; eval(action.drop(1).join(" "))
46
-
47
- else; help
48
- end
49
- end
50
- end
51
-
52
- def help
53
- p "Some help text here"
54
- end
55
- end
56
-
57
1
  class Quiyo
58
- include Core
2
+ module Core
3
+ def readline_hist
4
+ line = Readline.readline(prompt, true)
5
+ return nil if line.nil?
6
+ if line =~ /^\s*$/ or Readline::HISTORY.to_a[-2] == line
7
+ Readline::HISTORY.pop
8
+ end
9
+ line
10
+ end
11
+
12
+ def showprompt
13
+ Readline.completion_append_character = " "
14
+ Readline.completion_proc = Proc.new { |str|
15
+ Dir[PATH+str+'*'].grep( /^#{Regexp.escape(str)}/ )
16
+ }
17
+
18
+ while line = self.readline_hist
19
+ @mpd.connect unless @mpd.connected?
20
+ action = line.split
21
+ actions = {
22
+ "np" => lambda { nowplaying() },
23
+ "info" => lambda { info },
24
+ "play" => lambda { play(action[1]) },
25
+ "pause" => lambda { pause },
26
+ "stop" => lambda { stop },
27
+ "next" => lambda { playnext },
28
+ "previous" => lambda { playprevious },
29
+ "lsplaylist" => lambda { lsplist },
30
+ "clearplaylist" => lambda { clearplist },
31
+ "addtoplaylist" => lambda { addtoplist(action) },
32
+ "delfromplaylist" => lambda { removefromplist(action[1]) },
33
+ "search" => lambda { search(action) },
34
+ "list-artists" => lambda { list("artists") },
35
+ "list-albums" => lambda { list("albums", action) },
36
+ "love" => lambda { love },
37
+ "loved" => lambda { loved },
38
+ "volume" => lambda { vol(action[1]) },
39
+ "quit" => lambda { quit },
40
+ "verbose" => lambda { eval(action.drop(1).join(" ")) }
41
+ }
42
+
43
+ CONF["aliases"].each { |k,v| actions[k] = lambda { eval(v) } }
44
+
45
+ actions[action[0]].call
46
+
47
+ end
48
+ end
49
+
50
+ def help
51
+ p "Some help text here"
52
+ end
53
+ end
54
+ include Core
59
55
  end
@@ -1,40 +1,39 @@
1
- module Database
2
- DataMapper.setup(:default, "sqlite3://" + CONF["database"])
3
-
4
- class Love # {{{
5
- include DataMapper::Resource
1
+ class Quiyo
2
+ module Database
3
+ DataMapper.setup(:default, "sqlite3://" + CONF["database"])
6
4
 
7
- property :id, Serial
8
- property :song, String
9
- property :loved_at, Time
10
- end # }}}
5
+ class Love
6
+ include DataMapper::Resource
11
7
 
12
- def love
13
- @love = Love.create(
14
- :song => @mpd.current_song["file"],
15
- :loved_at => Time.now
16
- )
17
- end
8
+ property :id, Serial
9
+ property :song, String
10
+ property :loved_at, Time
11
+ end
18
12
 
19
- def loved
20
- Love.each { |s|
21
- song = @mpd.songs(s.song).first
22
- printf "[%s] %s : %s [%s]\n" % [
23
- s.id,
24
- colorize(song["artist"], 99),
25
- colorize(song["title"], 202),
26
- colorize(song["album"], 107)
27
- ]
28
- }
29
- end
13
+ def love
14
+ @love = Love.create(
15
+ :song => @mpd.current_song["file"],
16
+ :loved_at => Time.now
17
+ )
18
+ end
30
19
 
31
- if(!File.exists?(CONF["database"]))
32
- DataMapper.auto_migrate!
33
- else
34
- DataMapper.auto_upgrade!
35
- end
36
- end
20
+ def loved
21
+ Love.each { |s|
22
+ song = @mpd.songs(s.song).first
23
+ printf "[%s] %s : %s [%s]\n" % [
24
+ s.id,
25
+ colorize(song["artist"], CONF["colors"]["artist"]),
26
+ colorize(song["title"], CONF["colors"]["title"]),
27
+ colorize(song["album"], CONF["colors"]["album"])
28
+ ]
29
+ }
30
+ end
37
31
 
38
- class Quiyo
39
- include Database
32
+ if(!File.exists?(CONF["database"]))
33
+ DataMapper.auto_migrate!
34
+ else
35
+ DataMapper.auto_upgrade!
36
+ end
37
+ end
38
+ include Database
40
39
  end
@@ -1,14 +1,13 @@
1
- module Playback
2
- def play(arg = nil); @mpd.play(arg); nowplaying; end
3
- def playnext; @mpd.next; nowplaying; end
4
- def playprevious; @mpd.previous; nowplaying; end
5
- def stop; @mpd.stop; nowplaying; end
6
- def pause
7
- @mpd.paused? ? @mpd.pause=(false) : @mpd.pause=(true)
8
- nowplaying
9
- end
10
- end
11
-
12
1
  class Quiyo
13
- include Playback
2
+ module Playback
3
+ def play(arg = nil); @mpd.play(arg); nowplaying; end
4
+ def playnext; @mpd.next; nowplaying; end
5
+ def playprevious; @mpd.previous; nowplaying; end
6
+ def stop; @mpd.stop; nowplaying; end
7
+ def pause
8
+ @mpd.paused? ? @mpd.pause=(false) : @mpd.pause=(true)
9
+ nowplaying
10
+ end
11
+ end
12
+ include Playback
14
13
  end
@@ -1,28 +1,25 @@
1
- module Playlist
2
- def lsplist
3
- @mpd.playlist.each { |s|
4
- printf "[%s] %s : %s [%s]\n" % [
5
- s.pos,
6
- colorize(s.artist, 99),
7
- colorize(s.title, 202),
8
- colorize(s.album, 107)
9
- ]
10
- }
11
- end
1
+ class Quiyo
2
+ module Playlist
3
+ def lsplist
4
+ @mpd.playlist.each { |s| printsonglist(s) }
5
+ end
12
6
 
13
- def clearplist
14
- @mpd.clear
15
- end
7
+ def clearplist
8
+ @mpd.clear
9
+ end
16
10
 
17
- def addtoplist(action)
18
- @mpd.search(action[1], action.drop(2).join(" ")).each { |s|
19
- @mpd.add(s.file)
20
- }
21
- rescue
22
- puts "Usage: addtoplaylist searchstring"
23
- end
24
- end
11
+ def addtoplist(action)
12
+ @mpd.search(action[1], action.drop(2).join(" ")).each { |s|
13
+ @mpd.add(s.file)
14
+ }
15
+ rescue
16
+ puts "Usage: addtoplaylist searchstring"
17
+ end
25
18
 
26
- class Quiyo
27
- include Playlist
19
+ def removefromplist(id)
20
+ @mpd.delete(id)
21
+ end
22
+
23
+ end
24
+ include Playlist
28
25
  end
data/lib/quiyo/server.rb CHANGED
@@ -1,45 +1,43 @@
1
- module Server
2
- def quit
3
- @mpd.disconnect
4
- Process.exit
5
- end
1
+ class Quiyo
6
2
 
7
- def vol(arg)
8
- @mpd.volume=(arg)
9
- rescue
10
- p "Usage: vol [0-100]"
11
- end
3
+ def initialize(server, port, version)
4
+ print colorize("++", 197) + " Connecting to MPD at #{server}:#{port}..."
5
+ @mpd = MPD.new server, port
6
+ @mpd.connect
7
+ print colorize("Connected!\n", 70)
8
+ print colorize("++", 197) + " This is quiyo #{version}\n\n"
9
+ end
12
10
 
13
- def search(action)
14
- @mpd.search(action[1], action.drop(2).join(" ")).each { |s|
15
- printf "%s : %s [%s]\n" % [
16
- yellow(s.artist),
17
- blue(s.title),
18
- green(s.album)
19
- ]
20
- }
21
- rescue
22
- p "Usage: search [artist|title|album] name"
23
- end
11
+ module Server
12
+ def quit
13
+ @mpd.disconnect
14
+ Process.exit
15
+ end
24
16
 
25
- def list(type, arg = nil)
26
- case type
27
- when "artists"
28
- @mpd.artists.each { |s| p s }
29
- when "albums"
30
- @mpd.albums(arg.drop(1).join(" ")).each { |s| p s }
31
- end
32
- end
33
- end
17
+ def vol(arg)
18
+ @mpd.volume=(arg)
19
+ rescue
20
+ p "Usage: vol [0-100]"
21
+ end
34
22
 
35
- class Quiyo
36
- include Server
23
+ def search(action)
24
+ @mpd.search(action[1], action.drop(2).join(" ")).each { |s|
25
+ printf "%s : %s [%s]\n" % [
26
+ colorize(s.artist, 99),
27
+ colorize(s.title, 202),
28
+ colorize(s.album, 107)
29
+ ]
30
+ }
31
+ end
37
32
 
38
- def initialize(server, port, version)
39
- print colorize("++", 197) + " Connecting to MPD at #{server}:#{port}..."
40
- @mpd = MPD.new server, port
41
- @mpd.connect
42
- print colorize("Connected!\n", 70)
43
- print colorize("++", 197) + " This is quiyo #{version}\n\n"
44
- end
33
+ def list(type, arg = nil)
34
+ case type
35
+ when "artists"
36
+ @mpd.artists.each { |s| p s }
37
+ when "albums"
38
+ @mpd.albums(arg.drop(1).join(" ")).each { |s| p s }
39
+ end
40
+ end
41
+ end
42
+ include Server
45
43
  end
data/lib/quiyo/status.rb CHANGED
@@ -1,77 +1,81 @@
1
- module Status
2
- def nowplaying
3
- song = @mpd.current_song
4
- puts colorize(song["title"], 202) +
5
- " by " +
6
- colorize(song["artist"], 99) +
7
- " on " +
8
- colorize(song["album"], 107) +
9
- " [" + colorize(song["date"], 213) + "]"
10
- rescue
11
- puts "#{colorize("Nothing", 196)} playing right now #{colorize(":(", 229)}"
12
- end
13
-
14
- def info
15
- def _print(key, value)
16
- print "%-20s %s\n" % [ colorize(key.capitalize + ":", 99), colorize(value, 202) ]
17
- end
1
+ class Quiyo
2
+ module Status
3
+ def nowplaying
4
+ song = @mpd.current_song
5
+ print "%s by %s on %s [%s]\n" % [
6
+ colorize(song["title"], CONF["colors"]["title"]),
7
+ colorize(song["artist"], CONF["colors"]["artist"]),
8
+ colorize(song["album"], CONF["colors"]["album"]),
9
+ colorize(song["date"], CONF["colors"]["year"])
10
+ ]
11
+ rescue
12
+ print "%s playing right now, stoopid %s\n" % [
13
+ colorize("Nothing", CONF["colors"]["error"]),
14
+ colorize(":(", CONF["colors"]["smiley_frown"])
15
+ ]
16
+ end
18
17
 
19
- sep = "----~---~-~---------~~------~-"
18
+ def info
19
+ def _print(key, value)
20
+ print "%-20s %s\n" % [
21
+ colorize(key.capitalize + ":", CONF["colors"]["info_key"]),
22
+ colorize(value, CONF["colors"]["info_value"])
23
+ ]
24
+ end
20
25
 
21
- s = @mpd.status
22
- sid = @mpd.song_with_id(s[:songid])
26
+ s = @mpd.status
27
+ sid = @mpd.song_with_id(s[:songid])
23
28
 
24
- # Get current song
25
- %w{artist title album date file}.each { |k|
26
- _print(k, sid[k])
27
- }
28
- _print "DURATION", time(sid["time"])
29
- puts sep
29
+ # Get current song
30
+ %w{artist title album date file}.each { |k|
31
+ _print(k, sid[k])
32
+ }
33
+ _print "DURATION", time(sid["time"])
34
+ print colorize(CONF["separator"], CONF["colors"]["separator"]), "\n"
30
35
 
31
- # Get MPD Status
32
- %w{volume repeat random playlistlength xfade}.each { |k|
33
- _print(k, s[k])
34
- }
35
- puts sep
36
+ # Get MPD Status
37
+ %w{volume repeat random playlistlength xfade}.each { |k|
38
+ _print(k, s[k])
39
+ }
40
+ print colorize(CONF["separator"], CONF["colors"]["separator"]), "\n"
36
41
 
37
- s = @mpd.stats
42
+ s = @mpd.stats
38
43
 
39
- # Get MPD Stats
40
- %w{artists albums songs}.each { |k|
41
- _print(k, s[k])
42
- }
43
- puts sep
44
+ # Get MPD Stats
45
+ %w{artists albums songs}.each { |k|
46
+ _print(k, s[k])
47
+ }
48
+ print colorize(CONF["separator"], CONF["colors"]["separator"]), "\n"
44
49
 
45
- # Get MPD Times
46
- %w{uptime playtime db_playtime}.each { |k,v|
47
- _print(k, time(s[k]))
48
- }
49
- end
50
+ # Get MPD Times
51
+ %w{uptime playtime db_playtime}.each { |k,v|
52
+ _print(k, time(s[k]))
53
+ }
54
+ end
50
55
 
51
- def time(sec)
52
- string = ""
53
- time = sec.to_i
54
- days = (time/86400)
55
- hours = (time/3600 - days * 24)
56
- minutes = (time/60 - (hours * 60 + days * 1440))
57
- seconds = (time - (minutes * 60 + hours * 3600 + days * 86400))
58
- { "d" => days, "h" => hours, "m" => minutes, "s" => seconds}.each { |k,v|
59
- string += "%02d%s " % [v, k] if v > 0
60
- }
61
- return string
62
- end
56
+ def time(sec)
57
+ string = ""
58
+ time = sec.to_i
59
+ days = (time/86400)
60
+ hours = (time/3600 - days * 24)
61
+ minutes = (time/60 - (hours * 60 + days * 1440))
62
+ seconds = (time - (minutes * 60 + hours * 3600 + days * 86400))
63
+ { "d" => days, "h" => hours, "m" => minutes, "s" => seconds}.each { |k,v|
64
+ string += "%02d%s " % [v, k] if v > 0
65
+ }
66
+ return string
67
+ end
63
68
 
64
- def prompt
65
- return "%s(%s%s%s) %s " % [
66
- colorize(@mpd.status["state"], 67),
67
- colorize(@mpd.status["repeat"] == "1" ? "r" : "", 107),
68
- colorize(@mpd.status["random"] == "1" ? "z" : "", 107),
69
- colorize(@mpd.status["xfade"] != "0" ? "x" : "", 107),
70
- colorize(">>>", 142)
71
- ]
72
- end
73
- end
74
-
75
- class Quiyo
76
- include Status
69
+ def prompt
70
+ return CONF["prompt"]
71
+ .gsub(/%(\d+)/, "\001\e[38;5;\\1m\002")
72
+ .gsub("%n", "\001\e[0m\002")
73
+ .gsub("$state", @mpd.status["state"])
74
+ .gsub("$flags",
75
+ (@mpd.status["repeat"] == "1" ? "r" : "") +
76
+ (@mpd.status["random"] == "1" ? "z" : "") +
77
+ (@mpd.status["xfade"] != "0" ? "x" : "")) + " "
78
+ end
79
+ end
80
+ include Status
77
81
  end
data/lib/quiyo.rb CHANGED
@@ -14,17 +14,7 @@
14
14
  ].each { |m| require m }
15
15
 
16
16
  # ...and this...
17
- config_paths = [ ENV["XDG_CONFIG_HOME"] ]
18
- ENV["XDG_CONFIG_DIRS"].split(":").each { |d|
19
- config_paths << d
20
- }
21
-
22
- config_paths.each { |p|
23
- if File.exists?("#{p}/quiyo/config.yml")
24
- CONF = YAML.load_file "#{p}/quiyo/config.yml"
25
- break
26
- end
27
- }
17
+ CONF = YAML.load_file (ENV["XDG_CONFIG_HOME"] == NIL ? ENV["HOME"] + "/.config" : ENV["XDG_CONFIG_HOME"]) + "/quiyo/config.yml"
28
18
 
29
19
  # ...and this, too!
30
20
  %w[
data/quiyo.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{quiyo}
8
- s.version = "0.1.0"
8
+ s.version = "0.2.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["crshd"]
12
- s.date = %q{2011-07-19}
12
+ s.date = %q{2011-09-20}
13
13
  s.default_executable = %q{quiyo}
14
14
  s.description = %q{Inspired by pimpd2}
15
15
  s.email = %q{crshd@mail.com}
@@ -34,9 +34,7 @@ Gem::Specification.new do |s|
34
34
  "lib/quiyo/playlist.rb",
35
35
  "lib/quiyo/server.rb",
36
36
  "lib/quiyo/status.rb",
37
- "quiyo.gemspec",
38
- "test/helper.rb",
39
- "test/test_quiyo.rb"
37
+ "quiyo.gemspec"
40
38
  ]
41
39
  s.homepage = %q{http://github.com/crshd/quiyo}
42
40
  s.licenses = ["MIT"]
metadata CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 0
7
+ - 2
7
8
  - 1
8
- - 0
9
- version: 0.1.0
9
+ version: 0.2.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - crshd
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2011-07-19 00:00:00 +08:00
17
+ date: 2011-09-20 00:00:00 +00:00
18
18
  default_executable: quiyo
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -125,8 +125,6 @@ files:
125
125
  - lib/quiyo/server.rb
126
126
  - lib/quiyo/status.rb
127
127
  - quiyo.gemspec
128
- - test/helper.rb
129
- - test/test_quiyo.rb
130
128
  has_rdoc: true
131
129
  homepage: http://github.com/crshd/quiyo
132
130
  licenses:
@@ -141,7 +139,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
141
139
  requirements:
142
140
  - - ">="
143
141
  - !ruby/object:Gem::Version
144
- hash: -1485489352837026096
142
+ hash: 1102096542118000620
145
143
  segments:
146
144
  - 0
147
145
  version: "0"
data/test/helper.rb DELETED
@@ -1,18 +0,0 @@
1
- require 'rubygems'
2
- require 'bundler'
3
- begin
4
- Bundler.setup(:default, :development)
5
- rescue Bundler::BundlerError => e
6
- $stderr.puts e.message
7
- $stderr.puts "Run `bundle install` to install missing gems"
8
- exit e.status_code
9
- end
10
- require 'test/unit'
11
- require 'shoulda'
12
-
13
- $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
14
- $LOAD_PATH.unshift(File.dirname(__FILE__))
15
- require 'quiyo'
16
-
17
- class Test::Unit::TestCase
18
- end
data/test/test_quiyo.rb DELETED
@@ -1,7 +0,0 @@
1
- require 'helper'
2
-
3
- class TestQuiyo < Test::Unit::TestCase
4
- should "probably rename this file and start testing for real" do
5
- flunk "hey buddy, you should probably rename this file and start testing for real"
6
- end
7
- end