Class: Typingpool::Test

Inherits:
Minitest::Test
  • Object
show all
Defined in:
lib/typingpool/test.rb,
lib/typingpool/test/script.rb

Direct Known Subclasses

Script

Defined Under Namespace

Classes: Script

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.app_dirObject



8
9
10
# File 'lib/typingpool/test.rb', line 8

def self.app_dir
  File.dirname(File.dirname(File.dirname(__FILE__)))
end

Instance Method Details

#add_goodbye_message(msg) ⇒ Object



72
73
74
75
76
# File 'lib/typingpool/test.rb', line 72

def add_goodbye_message(msg)
  at_exit do
    STDERR.puts msg
  end
end

#amazon_credentials?(config = self.config) ⇒ Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/typingpool/test.rb', line 28

def amazon_credentials?(config=self.config)
  config.amazon && config.amazon.key && config.amazon.secret
end

#audio_dirObject



16
17
18
# File 'lib/typingpool/test.rb', line 16

def audio_dir
  File.join(fixtures_dir, 'audio')
end

#configObject



20
21
22
23
24
25
26
# File 'lib/typingpool/test.rb', line 20

def config
  if File.exists?(File.expand_path(Config.default_file))
    Config.file
  else
    Config.from_bundled_template
  end
end

#dummy_config(number = 1) ⇒ Object



78
79
80
# File 'lib/typingpool/test.rb', line 78

def dummy_config(number=1)
  Typingpool::Config.file(File.join(fixtures_dir, "config-#{number}"))
end

#fetch_url(*args) ⇒ Object



103
104
105
# File 'lib/typingpool/test.rb', line 103

def fetch_url(*args)
  Typingpool::Utility.fetch_url(*args)
end

#fixtures_dirObject



12
13
14
# File 'lib/typingpool/test.rb', line 12

def fixtures_dir
  File.join(Utility.lib_dir, 'test', 'fixtures')
end

#in_temp_dirObject



95
96
97
# File 'lib/typingpool/test.rb', line 95

def in_temp_dir
  Typingpool::Utility.in_temp_dir{|dir| yield(dir) }
end

#project_defaultObject



83
84
85
86
87
88
89
90
91
92
# File 'lib/typingpool/test.rb', line 83

def project_default
  Hash[
       :config_filename => '.config',
       :subtitle => "Typingpool's test interview transcription",
       :title => "Typingpool's Test & Interview",
       :chunks => '0:20',
       :unusual => ['Hack Day', 'Sunnyvale', 'Chad D'],
       :voice => ['Ryan', 'Havi, hacker'],
      ]
end

#s3_credentials?(config) ⇒ Boolean

Returns:

  • (Boolean)


44
45
46
# File 'lib/typingpool/test.rb', line 44

def s3_credentials?(config)
  amazon_credentials?(config) && config.amazon.bucket
end

#sftp_credentials?(config) ⇒ Boolean

Returns:

  • (Boolean)


56
57
58
# File 'lib/typingpool/test.rb', line 56

def sftp_credentials?(config)
  config.sftp && config.sftp.user && config.sftp.host && config.sftp.url
end

#skip_if_no_amazon_credentials(skipping_what = '', config = self.config) ⇒ Object



38
39
40
41
42
# File 'lib/typingpool/test.rb', line 38

def skip_if_no_amazon_credentials(skipping_what='', config=self.config)
  if not (amazon_credentials?(config))
    skip_with_message('Missing or incomplete Amazon credentials', skipping_what)
  end
end

#skip_if_no_s3_credentials(skipping_what = '', config = self.config) ⇒ Object



48
49
50
51
52
53
54
# File 'lib/typingpool/test.rb', line 48

def skip_if_no_s3_credentials(skipping_what='', config=self.config)
  if not (skip_if_no_amazon_credentials(skipping_what, config))
    if not(s3_credentials?(config))
      skip_with_message('No Amazon S3 credentials', skipping_what)
    end #if not(s3_credentials?...)
  end #if not(skip_if_no_amazon_credentials...)
end

#skip_if_no_sftp_credentials(skipping_what = '', config = self.config) ⇒ Object



60
61
62
63
64
# File 'lib/typingpool/test.rb', line 60

def skip_if_no_sftp_credentials(skipping_what='', config=self.config)
  if not(sftp_credentials?(config))
    skip_with_message('No SFTP credentials', skipping_what)
  end #if not(sftp_credentials?...
end

#skip_if_no_upload_credentials(skipping_what = '', config = self.config) ⇒ Object



66
67
68
69
70
# File 'lib/typingpool/test.rb', line 66

def skip_if_no_upload_credentials(skipping_what='', config=self.config)
  if not(s3_credentials?(config) || sftp_credentials?(config))
    skip_with_message("No S3 or SFTP credentials in config", skipping_what)
  end #if not(s3_credentials?...
end

#skip_with_message(reason, skipping_what = '') ⇒ Object



32
33
34
35
36
# File 'lib/typingpool/test.rb', line 32

def skip_with_message(reason, skipping_what='')
  skipping_what = " #{skipping_what}" if not(skipping_what.empty?)
  skip ("Skipping#{skipping_what}: #{reason}")
  true
end

#working_url?(*args) ⇒ Boolean

Returns:

  • (Boolean)


99
100
101
# File 'lib/typingpool/test.rb', line 99

def working_url?(*args)
  Typingpool::Utility.working_url?(*args)
end