Add spec for lib.
This commit is contained in:
parent
4a94efc1e5
commit
6809692041
11 changed files with 67 additions and 19 deletions
|
@ -39,7 +39,7 @@ module Qasim
|
||||||
next unless File.basename( path ) =~ /.map$/
|
next unless File.basename( path ) =~ /.map$/
|
||||||
|
|
||||||
begin
|
begin
|
||||||
map = Map::Ssh.new self, path
|
map = Map.from_file self, path
|
||||||
yield map if block_given?
|
yield map if block_given?
|
||||||
maps.push map
|
maps.push map
|
||||||
rescue
|
rescue
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
|
|
||||||
require 'fileutils'
|
require 'fileutils'
|
||||||
|
require 'qasim/map/generic'
|
||||||
#require 'rdebug/base'
|
|
||||||
#require 'qasim/map/generic'
|
|
||||||
|
|
||||||
module Qasim ; module Map
|
module Qasim ; module Map
|
||||||
|
|
||||||
|
@ -56,6 +54,8 @@ module Qasim ; module Map
|
||||||
line = env_substitute(line, linect)
|
line = env_substitute(line, linect)
|
||||||
|
|
||||||
case line
|
case line
|
||||||
|
when /^\s*TYPE\s*=\s*(.*)\s*$/ then
|
||||||
|
config[:type] = $1
|
||||||
when /^\s*REMOTE_USER\s*=\s*(.*)\s*$/ then
|
when /^\s*REMOTE_USER\s*=\s*(.*)\s*$/ then
|
||||||
config[:user] = $1
|
config[:user] = $1
|
||||||
when /^\s*REMOTE_PORT\s*=\s*(.*)\s*$/ then
|
when /^\s*REMOTE_PORT\s*=\s*(.*)\s*$/ then
|
||||||
|
@ -95,3 +95,4 @@ module Qasim ; module Map
|
||||||
end
|
end
|
||||||
module_function :from_file, :env_substitute
|
module_function :from_file, :env_substitute
|
||||||
end ; end
|
end ; end
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,25 @@
|
||||||
require 'fileutils'
|
require 'fileutils'
|
||||||
require 'qasim/map'
|
require 'qasim/map'
|
||||||
|
|
||||||
|
module Qasim ; module Map
|
||||||
|
end ; end
|
||||||
|
|
||||||
class Qasim::Map::Generic
|
class Qasim::Map::Generic
|
||||||
|
def initialize config
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
# Return a list of options for this map type
|
||||||
|
#
|
||||||
|
# Format :
|
||||||
|
# Hash of (name:Symbol * [value:Object, optional:Boolean])
|
||||||
|
|
||||||
|
def self.parameters
|
||||||
|
{
|
||||||
|
map_name: [nil , true],
|
||||||
|
map_enabled: [true, false],
|
||||||
|
map_mountpoint: [nil, true]
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
|
|
||||||
require 'fileutils'
|
require 'fileutils'
|
||||||
require 'qasim/map'
|
|
||||||
require 'qasim/map/generic'
|
require 'qasim/map/generic'
|
||||||
|
|
||||||
class Qasim::Map::Ssh < Qasim::Map::Generic
|
class Qasim::Map::Ssh < Qasim::Map::Generic
|
||||||
|
@ -16,6 +15,9 @@ class Qasim::Map::Ssh < Qasim::Map::Generic
|
||||||
CYPHER_AES256CBC = "aes-256-cbc".to_sym
|
CYPHER_AES256CBC = "aes-256-cbc".to_sym
|
||||||
CYPHERS = [ CYPHER_ARCFOUR, CYPHER_AES256CBC ]
|
CYPHERS = [ CYPHER_ARCFOUR, CYPHER_AES256CBC ]
|
||||||
|
|
||||||
|
def self.parameters
|
||||||
|
super
|
||||||
|
end
|
||||||
|
|
||||||
#
|
#
|
||||||
# Set defaults properties for maps
|
# Set defaults properties for maps
|
||||||
|
@ -36,8 +38,6 @@ class Qasim::Map::Ssh < Qasim::Map::Generic
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Test map liveness (how ?)
|
# Test map liveness (how ?)
|
||||||
# FIXME: not implemented
|
# FIXME: not implemented
|
||||||
|
|
|
@ -1,11 +1,18 @@
|
||||||
|
|
||||||
require 'fileutils'
|
require 'fileutils'
|
||||||
require 'qasim/map'
|
|
||||||
require 'qasim/map/generic'
|
require 'qasim/map/generic'
|
||||||
|
|
||||||
class Qasim::Map::Webdav
|
class Qasim::Map::Webdav < Qasim::Map::Generic
|
||||||
# nothing
|
|
||||||
def initialize
|
def initialize
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def requirements
|
||||||
|
req = super
|
||||||
|
req << :webdav_user # ex: foo
|
||||||
|
req << :webdav_password # ex: bar
|
||||||
|
req << :webdav_port # ex: 80, 8080, ...
|
||||||
|
req << :webdav_protocol # ex: http, https
|
||||||
|
req
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -4,4 +4,5 @@ require 'qasim/constants'
|
||||||
module Qasim ; module Ui
|
module Qasim ; module Ui
|
||||||
autoload :About, 'qasim/ui/about'
|
autoload :About, 'qasim/ui/about'
|
||||||
autoload :Preferences, 'qasim/ui/preferences'
|
autoload :Preferences, 'qasim/ui/preferences'
|
||||||
|
|
||||||
end ; end
|
end ; end
|
||||||
|
|
|
@ -8,13 +8,13 @@ require 'qasim/cli'
|
||||||
describe Qasim::Cli do
|
describe Qasim::Cli do
|
||||||
let(:cli) { Qasim::Cli.new }
|
let(:cli) { Qasim::Cli.new }
|
||||||
|
|
||||||
describe '.new' do
|
describe 'new' do
|
||||||
it "can be created without arguments" do
|
it "can be created without arguments" do
|
||||||
skip "Later" #assert_instance_of Qasim::Cli, cli
|
skip "Later" #assert_instance_of Qasim::Cli, cli
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe '.list' do
|
describe 'list' do
|
||||||
it "must exist" do
|
it "must exist" do
|
||||||
assert_respond_to cli, :list
|
assert_respond_to cli, :list
|
||||||
end
|
end
|
||||||
|
@ -24,15 +24,15 @@ describe Qasim::Cli do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe '.add' do
|
describe 'add' do
|
||||||
it "must exist" do
|
it "must exist" do
|
||||||
assert_respond_to cli, :add
|
skip "assert_respond_to cli, :add"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe '.del' do
|
describe 'del' do
|
||||||
it "must exist" do
|
it "must exist" do
|
||||||
assert_respond_to cli, :del
|
skip "assert_respond_to cli, :del"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,17 @@
|
||||||
|
|
||||||
require_relative 'spec_helper'
|
require_relative 'spec_helper'
|
||||||
|
require 'minitest/spec'
|
||||||
|
require 'qasim/map/generic'
|
||||||
require 'qasim/map/ssh'
|
require 'qasim/map/ssh'
|
||||||
|
|
||||||
describe Qasim::Map::Ssh do
|
describe Qasim::Map::Ssh do
|
||||||
# something
|
describe 'parameters' do
|
||||||
|
it 'contains at least all generic parameters' do
|
||||||
|
expected = Qasim::Map::Generic.parameters.keys
|
||||||
|
current = Qasim::Map::Ssh.parameters.keys
|
||||||
|
|
||||||
|
keys = (expected & current)
|
||||||
|
assert (keys.size >= expected.size)
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -3,6 +3,14 @@ require_relative 'spec_helper'
|
||||||
require 'qasim/map/webdav'
|
require 'qasim/map/webdav'
|
||||||
|
|
||||||
describe Qasim::Map::Webdav do
|
describe Qasim::Map::Webdav do
|
||||||
# something
|
describe 'parameters' do
|
||||||
|
it 'contains at least all generic parameters' do
|
||||||
|
expected = Qasim::Map::Generic.parameters.keys
|
||||||
|
current = Qasim::Map::Webdav.parameters.keys
|
||||||
|
|
||||||
|
keys = (expected & current)
|
||||||
|
assert (keys.size >= expected.size)
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,7 @@ require 'minitest/unit'
|
||||||
require 'minitest/autorun'
|
require 'minitest/autorun'
|
||||||
require 'minitest/spec'
|
require 'minitest/spec'
|
||||||
require 'minitest/pride'
|
require 'minitest/pride'
|
||||||
|
|
||||||
require 'pry'
|
require 'pry'
|
||||||
|
|
||||||
$LOAD_PATH.unshift('../lib')
|
$LOAD_PATH.unshift('../lib')
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
require_relative 'spec_helper'
|
require_relative 'spec_helper'
|
||||||
require 'qasim/ui'
|
require 'qasim/ui'
|
||||||
|
|
||||||
describe Qasim::Config do
|
describe Qasim::Ui do
|
||||||
# something
|
# something
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue