yakuake_controller 0.1.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.
- checksums.yaml +7 -0
- data/.gitignore +5 -0
- data/Gemfile +7 -0
- data/LICENSE.txt +22 -0
- data/README.md +31 -0
- data/Rakefile +18 -0
- data/lib/yakuake_controller/dbus_client.rb +68 -0
- data/lib/yakuake_controller/version.rb +3 -0
- data/lib/yakuake_controller/yakuake_dbus.rb +26 -0
- data/lib/yakuake_controller.rb +6 -0
- data/tasks/test.rake +31 -0
- data/test/lib/yakuake_controller/dbus_client_test.rb +140 -0
- data/test/lib/yakuake_controller/version_test.rb +9 -0
- data/test/lib/yakuake_controller_test.rb +9 -0
- data/test/minitest_extensions.rb +8 -0
- data/test/test_helper.rb +15 -0
- data/yakuake_controller.gemspec +40 -0
- metadata +206 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 2cd828dfa3e629e21a15397d2f5cbcec04104af0
|
4
|
+
data.tar.gz: 0a59cd4fadd6acc99989c0c812af7f51c0a4cb8d
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: d8af7efa8ffbf373a96fa3e1f2e5ab48918be4e1aa9d4c418dc999a54e0c2f8b3a24e029a3e8926cd5aa91540ac57959ef1af1e9c1a1a1d031fd236f3a2b09bd
|
7
|
+
data.tar.gz: ae041f43909aeb50f0943df0a6e4b9215eb8ddfbefdc54ebaec1689b2861703590a91e25a9d9ad4e6b1327a13f99339aa65123ccd118c87dd07e01aa4eace7b7
|
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2014 Tomislav Adamic
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
# YakuakeController
|
2
|
+
|
3
|
+
Ruby gem to interact with [Yakuake] through DBus.
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
Add this line to your application's Gemfile:
|
8
|
+
|
9
|
+
gem 'yakuake_controller'
|
10
|
+
|
11
|
+
And then execute:
|
12
|
+
|
13
|
+
$ bundle
|
14
|
+
|
15
|
+
Or install it yourself as:
|
16
|
+
|
17
|
+
$ gem install yakuake_controller
|
18
|
+
|
19
|
+
## Usage
|
20
|
+
|
21
|
+
TODO: Write usage instructions here
|
22
|
+
|
23
|
+
## Contributing
|
24
|
+
|
25
|
+
1. Fork it ( https://github.com/[my-github-username]/yakuake_controller/fork )
|
26
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
27
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
28
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
29
|
+
5. Create a new Pull Request
|
30
|
+
|
31
|
+
[Yakuake]:https://yakuake.kde.org/
|
data/Rakefile
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
# require 'rubygems'
|
2
|
+
require "bundler/gem_tasks"
|
3
|
+
require 'bundler/setup'
|
4
|
+
|
5
|
+
begin
|
6
|
+
Bundler.setup(:default, :development)
|
7
|
+
rescue Bundler::BundlerError => e
|
8
|
+
$stderr.puts e.message
|
9
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
10
|
+
exit e.status_code
|
11
|
+
end
|
12
|
+
|
13
|
+
require 'rake'
|
14
|
+
|
15
|
+
# load rakefile extensions (tasks)
|
16
|
+
Dir['tasks/*.rake'].sort.each { |f| load f }
|
17
|
+
|
18
|
+
task :default => [:test]
|
@@ -0,0 +1,68 @@
|
|
1
|
+
require_relative "./yakuake_dbus.rb"
|
2
|
+
|
3
|
+
module YakuakeController
|
4
|
+
|
5
|
+
class DBusClient
|
6
|
+
def initialize(dbus: YakuakeDbus.new)
|
7
|
+
@dbus = dbus
|
8
|
+
end
|
9
|
+
|
10
|
+
def terminal_ids_for_tab tab_index:
|
11
|
+
terminal_ids_for_session session_id: session_id(tab_index: tab_index)
|
12
|
+
end
|
13
|
+
|
14
|
+
def tab_title tab_index:
|
15
|
+
@dbus.tabs_interface.tabTitle(session_id tab_index: tab_index).first
|
16
|
+
end
|
17
|
+
|
18
|
+
def set_tab_title tab_index:, new_title:
|
19
|
+
@dbus.tabs_interface.setTabTitle session_id(tab_index: tab_index).to_i,
|
20
|
+
new_title
|
21
|
+
end
|
22
|
+
|
23
|
+
def run_command_in_tab tab_index:, command_text:
|
24
|
+
terminal_id = terminal_ids_for_tab(tab_index: tab_index).first
|
25
|
+
run_command_in_terminal terminal_id: terminal_id,
|
26
|
+
command_text: command_text
|
27
|
+
end
|
28
|
+
|
29
|
+
def run_command_in_terminal terminal_id:, command_text:
|
30
|
+
@dbus.sessions_interface.runCommandInTerminal terminal_id.to_i, command_text
|
31
|
+
end
|
32
|
+
|
33
|
+
def add_tabs_if_needed count:
|
34
|
+
if count > sessions_ids.length
|
35
|
+
active_session = @dbus.sessions_interface.activeSessionId.first.to_i
|
36
|
+
(count - sessions_ids.length).times do
|
37
|
+
@dbus.sessions_interface.addSession
|
38
|
+
end
|
39
|
+
@dbus.sessions_interface.raiseSession active_session
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
def remove_tab tab_index:
|
44
|
+
@dbus.sessions_interface.removeSession session_id(tab_index: tab_index).to_i
|
45
|
+
end
|
46
|
+
|
47
|
+
def remove_terminal terminal_id:
|
48
|
+
@dbus.sessions_interface.removeTerminal terminal_id.to_i
|
49
|
+
end
|
50
|
+
|
51
|
+
private
|
52
|
+
|
53
|
+
def sessions_ids
|
54
|
+
@dbus.sessions_interface.sessionIdList.first.split(',').map{|i| i.strip}
|
55
|
+
end
|
56
|
+
|
57
|
+
def terminal_ids_for_session session_id:
|
58
|
+
@dbus.sessions_interface.terminalIdsForSessionId(session_id.to_i).
|
59
|
+
first.split(',').map{|i| i.strip}
|
60
|
+
end
|
61
|
+
|
62
|
+
def session_id tab_index:
|
63
|
+
@dbus.tabs_interface.sessionAtTab(tab_index.to_i).first
|
64
|
+
end
|
65
|
+
|
66
|
+
end
|
67
|
+
|
68
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require "dbus"
|
2
|
+
|
3
|
+
# to explore yakuake interfaces use
|
4
|
+
# qdbus org.kde.yakuake /yakuake/sessions
|
5
|
+
# qdbus org.kde.yakuake /yakuake/tabs
|
6
|
+
|
7
|
+
module YakuakeController
|
8
|
+
|
9
|
+
class YakuakeDBus
|
10
|
+
|
11
|
+
attr_reader :sessions_interface, :tabs_interface
|
12
|
+
|
13
|
+
def initialize
|
14
|
+
bus = DBus.session_bus
|
15
|
+
service = bus['org.kde.yakuake']
|
16
|
+
sessions_proxy = service.object '/yakuake/sessions'
|
17
|
+
sessions_proxy.introspect
|
18
|
+
tabs_proxy = service.object '/yakuake/tabs'
|
19
|
+
tabs_proxy.introspect
|
20
|
+
@sessions_interface = sessions_proxy['org.kde.yakuake']
|
21
|
+
@tabs_interface = tabs_proxy['org.kde.yakuake']
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
data/tasks/test.rake
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'rake/testtask'
|
2
|
+
|
3
|
+
ALL_TEST_FILES = FileList[
|
4
|
+
'test/{functional,unit,yakuake_controller,lib,ext}/**/*_test.rb',
|
5
|
+
'test/*_test.rb'
|
6
|
+
]
|
7
|
+
|
8
|
+
Rake::TestTask.new do |t|
|
9
|
+
t.libs << 'test'
|
10
|
+
t.test_files = ALL_TEST_FILES
|
11
|
+
t.verbose = false
|
12
|
+
t.warning = false
|
13
|
+
end
|
14
|
+
|
15
|
+
namespace :test do
|
16
|
+
|
17
|
+
desc 'Run all tests and calculate code coverage'
|
18
|
+
task :simplecov do
|
19
|
+
ENV['COVERAGE'] = "true"
|
20
|
+
Rake::Task['test'].execute
|
21
|
+
end
|
22
|
+
|
23
|
+
desc 'Run single test: "rake test:single[foo_test_method]"'
|
24
|
+
task :single, [:test_file] do |t, args|
|
25
|
+
filename = File.basename(args[:test_file])
|
26
|
+
filepath = ALL_TEST_FILES[ ALL_TEST_FILES.find_index{|f| /.*#{filename}.*/ === f } ]
|
27
|
+
ENV["TEST"] = filepath
|
28
|
+
Rake::Task[:test].execute
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
@@ -0,0 +1,140 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
describe YakuakeController::DBusClient do
|
4
|
+
|
5
|
+
before do
|
6
|
+
@dbus = YakuakeController::YakuakeDBus.new
|
7
|
+
@client = YakuakeController::DBusClient.new(dbus: @dbus)
|
8
|
+
|
9
|
+
@tab_index = 1
|
10
|
+
@tab_title = 'Foo tab'
|
11
|
+
@command_text = 'Foo command'
|
12
|
+
@terminal_id = 2
|
13
|
+
@session_id = 3
|
14
|
+
@terminal_ids = "4, 5"
|
15
|
+
@session_ids = "6, 7"
|
16
|
+
@session_ids_array = @session_ids.split(',').map{|i| i.strip}
|
17
|
+
@terminal_ids_array = @terminal_ids.split(',').map{|i| i.strip}
|
18
|
+
end
|
19
|
+
|
20
|
+
describe '#session_id'do
|
21
|
+
it 'finds Yakuake session ID for tab index' do
|
22
|
+
@dbus.tabs_interface.expects(:sessionAtTab).
|
23
|
+
with(@tab_index).
|
24
|
+
returns(["#{@session_id}"])
|
25
|
+
|
26
|
+
assert_equal @client.send(:session_id, **{tab_index: @tab_index}),
|
27
|
+
"#{@session_id}"
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
describe '#terminal_ids_for_session' do
|
32
|
+
it 'finds all terminal IDs for one session ID' do
|
33
|
+
@dbus.sessions_interface.expects(:terminalIdsForSessionId).
|
34
|
+
with(@session_id).
|
35
|
+
returns([@terminal_ids])
|
36
|
+
|
37
|
+
assert_equal @client.send(:terminal_ids_for_session, **{session_id: @session_id}),
|
38
|
+
@terminal_ids_array
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
describe '#sessions_ids' do
|
43
|
+
it 'finds all session IDs in Yakuake instance' do
|
44
|
+
@dbus.sessions_interface.expects(:sessionIdList).
|
45
|
+
returns([@session_ids])
|
46
|
+
assert_equal @client.send(:sessions_ids), @session_ids_array
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
describe '#remove_terminal' do
|
51
|
+
it 'removes terminal by ID' do
|
52
|
+
@dbus.sessions_interface.expects(:removeTerminal).
|
53
|
+
with(@terminal_id).at_most_once
|
54
|
+
@client.remove_terminal(terminal_id: @terminal_id)
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
describe '#remove_tab' do
|
59
|
+
it 'removes tab by tab index' do
|
60
|
+
@dbus.sessions_interface.expects(:removeSession).
|
61
|
+
with(@session_id).at_most_once
|
62
|
+
@dbus.tabs_interface.expects(:sessionAtTab).
|
63
|
+
with(@tab_index).returns(["#{@session_id}"])
|
64
|
+
@client.remove_tab(tab_index: @tab_index)
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
describe '#add_tabs_if_needed' do
|
69
|
+
it 'Adds tabs to Yakuake if there are less than :count of them' do
|
70
|
+
@dbus.sessions_interface.expects(:raiseSession).at_most_once
|
71
|
+
@dbus.sessions_interface.expects(:activeSessionId).returns([@session_id])
|
72
|
+
|
73
|
+
@client.expects(:sessions_ids).returns(@session_ids_array).at_most(2)
|
74
|
+
@dbus.sessions_interface.expects(:addSession).at_most(4)
|
75
|
+
@client.add_tabs_if_needed(count: 6)
|
76
|
+
end
|
77
|
+
|
78
|
+
it 'Does nothing if there are already :count or more tabs' do
|
79
|
+
@client.expects(:sessions_ids).returns(@session_ids_array).at_most(2)
|
80
|
+
@dbus.sessions_interface.expects(:addSession).at_most(0)
|
81
|
+
@client.add_tabs_if_needed(count: 1)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
describe '#run_command_in_terminal' do
|
86
|
+
it 'Sends text command to terminal ID specified' do
|
87
|
+
@dbus.sessions_interface.expects(:runCommandInTerminal).
|
88
|
+
with(@terminal_id, @command_text).at_most_once
|
89
|
+
@client.run_command_in_terminal terminal_id: @terminal_id, command_text: @command_text
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
describe '#run_command_in_tab' do
|
94
|
+
it 'Sends text command to first terminal in specified tab index' do
|
95
|
+
@client.expects(:terminal_ids_for_tab).
|
96
|
+
with(tab_index: @tab_index).returns(@terminal_ids_array)
|
97
|
+
|
98
|
+
@client.expects(:run_command_in_terminal).
|
99
|
+
with(terminal_id: @terminal_ids_array.first,
|
100
|
+
command_text:@command_text)
|
101
|
+
|
102
|
+
@client.run_command_in_tab tab_index: @tab_index, command_text: @command_text
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
describe '#set_tab_title' do
|
107
|
+
it 'sets title of tab with provided tab index' do
|
108
|
+
@dbus.tabs_interface.expects(:setTabTitle).
|
109
|
+
with(@session_id, @tab_title)
|
110
|
+
@client.expects(:session_id).with(tab_index: @tab_index).
|
111
|
+
returns(@session_id)
|
112
|
+
|
113
|
+
@client.set_tab_title tab_index: @tab_index, new_title: @tab_title
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
describe '#tab_title' do
|
118
|
+
it 'returns title of tab with specified tab index' do
|
119
|
+
@dbus.tabs_interface.expects('tabTitle').
|
120
|
+
with(@session_id).returns([@tab_title])
|
121
|
+
@client.expects(:session_id).with(tab_index: @tab_index).
|
122
|
+
returns(@session_id)
|
123
|
+
|
124
|
+
assert_equal @client.tab_title(tab_index: @tab_index), @tab_title
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
describe '#terminal_ids_for_tab' do
|
129
|
+
it 'returns IDs of all terminals in tab specified by tab index' do
|
130
|
+
@client.expects(:session_id).with(tab_index: @tab_index).
|
131
|
+
returns(@session_id)
|
132
|
+
@client.expects(:terminal_ids_for_session).with(session_id: @session_id).
|
133
|
+
returns(@terminal_ids)
|
134
|
+
|
135
|
+
assert_equal @client.terminal_ids_for_tab(tab_index: @tab_index),
|
136
|
+
@terminal_ids
|
137
|
+
end
|
138
|
+
end
|
139
|
+
|
140
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
require 'minitest/autorun'
|
2
|
+
require "minitest/reporters"
|
3
|
+
|
4
|
+
Minitest::Reporters.use! Minitest::Reporters::DefaultReporter.new(:color => true) # => Redgreen-capable version of standard Minitest reporter
|
5
|
+
# Minitest::Reporters.use! Minitest::Reporters::SpecReporter.new # => Turn-like output that reads like a spec
|
6
|
+
|
7
|
+
Minitest.after_run do
|
8
|
+
end
|
data/test/test_helper.rb
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
if ENV['COVERAGE']
|
2
|
+
require 'simplecov'
|
3
|
+
SimpleCov.start do
|
4
|
+
add_filter 'test'
|
5
|
+
command_name 'test'
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
require 'yakuake_controller'
|
10
|
+
require "pry"
|
11
|
+
|
12
|
+
require File.expand_path('test/minitest_extensions.rb')
|
13
|
+
|
14
|
+
require 'mocha/mini_test'
|
15
|
+
# require 'minitest/given'
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'yakuake_controller/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
|
8
|
+
spec.name = 'yakuake_controller'
|
9
|
+
spec.version = YakuakeController::VERSION
|
10
|
+
|
11
|
+
spec.required_ruby_version = '~> 2.2'
|
12
|
+
|
13
|
+
spec.authors = ['Tomislav Adamic']
|
14
|
+
spec.email = ['tomislav.adamic@gmail.com']
|
15
|
+
spec.summary = %q{Client for Yakuake DBus interface.}
|
16
|
+
spec.description = %q{Client for Yakuake DBus interface.}
|
17
|
+
# spec.homepage = 'TODO - enter homepage'
|
18
|
+
spec.license = 'MIT'
|
19
|
+
|
20
|
+
spec.files = `git ls-files -z`.split("\x0")
|
21
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
22
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
23
|
+
spec.require_paths = ['lib']
|
24
|
+
|
25
|
+
spec.add_runtime_dependency 'ruby-dbus', '~> 0.11'
|
26
|
+
|
27
|
+
spec.add_development_dependency 'bundler', '~> 1.6'
|
28
|
+
spec.add_development_dependency 'rake', '~> 10.3'
|
29
|
+
|
30
|
+
spec.add_development_dependency 'pry', '~> 0.10'
|
31
|
+
spec.add_development_dependency 'pry-doc', '~> 0.8'
|
32
|
+
spec.add_development_dependency 'minitest', '~> 5.4'
|
33
|
+
spec.add_development_dependency 'minitest-reporters', '~> 1.0'
|
34
|
+
spec.add_development_dependency 'simplecov', '~> 0.9'
|
35
|
+
spec.add_development_dependency 'mocha', '~> 1.1'
|
36
|
+
# spec.add_development_dependency 'minitest-given', '~> 3.7'
|
37
|
+
|
38
|
+
spec.add_development_dependency 'activesupport', '~> 4.1'
|
39
|
+
|
40
|
+
end
|
metadata
ADDED
@@ -0,0 +1,206 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: yakuake_controller
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Tomislav Adamic
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-10-09 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: ruby-dbus
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0.11'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0.11'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: bundler
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.6'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.6'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '10.3'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '10.3'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: pry
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0.10'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0.10'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: pry-doc
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0.8'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0.8'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: minitest
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '5.4'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '5.4'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: minitest-reporters
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '1.0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '1.0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: simplecov
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0.9'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0.9'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: mocha
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '1.1'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '1.1'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: activesupport
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '4.1'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '4.1'
|
153
|
+
description: Client for Yakuake DBus interface.
|
154
|
+
email:
|
155
|
+
- tomislav.adamic@gmail.com
|
156
|
+
executables: []
|
157
|
+
extensions: []
|
158
|
+
extra_rdoc_files: []
|
159
|
+
files:
|
160
|
+
- ".gitignore"
|
161
|
+
- Gemfile
|
162
|
+
- LICENSE.txt
|
163
|
+
- README.md
|
164
|
+
- Rakefile
|
165
|
+
- lib/yakuake_controller.rb
|
166
|
+
- lib/yakuake_controller/dbus_client.rb
|
167
|
+
- lib/yakuake_controller/version.rb
|
168
|
+
- lib/yakuake_controller/yakuake_dbus.rb
|
169
|
+
- tasks/test.rake
|
170
|
+
- test/lib/yakuake_controller/dbus_client_test.rb
|
171
|
+
- test/lib/yakuake_controller/version_test.rb
|
172
|
+
- test/lib/yakuake_controller_test.rb
|
173
|
+
- test/minitest_extensions.rb
|
174
|
+
- test/test_helper.rb
|
175
|
+
- yakuake_controller.gemspec
|
176
|
+
homepage:
|
177
|
+
licenses:
|
178
|
+
- MIT
|
179
|
+
metadata: {}
|
180
|
+
post_install_message:
|
181
|
+
rdoc_options: []
|
182
|
+
require_paths:
|
183
|
+
- lib
|
184
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
185
|
+
requirements:
|
186
|
+
- - "~>"
|
187
|
+
- !ruby/object:Gem::Version
|
188
|
+
version: '2.2'
|
189
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
190
|
+
requirements:
|
191
|
+
- - ">="
|
192
|
+
- !ruby/object:Gem::Version
|
193
|
+
version: '0'
|
194
|
+
requirements: []
|
195
|
+
rubyforge_project:
|
196
|
+
rubygems_version: 2.4.8
|
197
|
+
signing_key:
|
198
|
+
specification_version: 4
|
199
|
+
summary: Client for Yakuake DBus interface.
|
200
|
+
test_files:
|
201
|
+
- test/lib/yakuake_controller/dbus_client_test.rb
|
202
|
+
- test/lib/yakuake_controller/version_test.rb
|
203
|
+
- test/lib/yakuake_controller_test.rb
|
204
|
+
- test/minitest_extensions.rb
|
205
|
+
- test/test_helper.rb
|
206
|
+
has_rdoc:
|