Module: Repla::Test

Defined in:
lib/repla/test.rb,
lib/repla/test/lib/helper.rb,
lib/repla/test/lib/view_helper.rb,
lib/repla/logger/test/lib/log_helper.rb

Overview

Test

Defined Under Namespace

Modules: Helper, ViewHelper Classes: LogHelper

Constant Summary collapse

TEST_PAUSE_TIME =

General

2.00
TEST_TIMEOUT_TIME =
4.00
POLLING_INTERVAL =
0.5
REPLA_FILE =

Ruby

File.join(File.dirname(__FILE__), '../repla')
TEST_DIRECTORY =
File.join(File.dirname(__FILE__), 'test')
LIB_DIRECTORY =
File.join(TEST_DIRECTORY, 'lib')
HELPER_FILE =
File.join(LIB_DIRECTORY, 'helper')
VIEW_HELPER_FILE =
File.join(LIB_DIRECTORY, 'view_helper')
LOG_HELPER_FILE =
File.join(File.dirname(__FILE__),
'logger/test/lib/log_helper')
TEST_HTML_DIRECTORY =

HTML

File.join(TEST_DIRECTORY, 'html')
INDEX_HTML_FILENAME =
'index.html'.freeze
INDEXJQUERY_HTML_FILENAME =
'indexjquery.html'.freeze
INDEX_HTML_FILE =
html_file(INDEX_HTML_FILENAME)
INDEXJQUERY_HTML_FILE =
html_file(INDEXJQUERY_HTML_FILENAME)
INDEX_HTML_TITLE =
'Index'.freeze
INDEXJQUERY_HTML_TITLE =
'Index JQuery'.freeze
TEST_ASSETS_JAVASCRIPT_DIRECTORY =

JavaScript

File.join(TEST_DIRECTORY, 'js')
TITLE_JAVASCRIPT_FILE =
File.join(TEST_ASSETS_JAVASCRIPT_DIRECTORY,
'title.js')
TEST_PLUGIN_DIRECTORY =

Plugins

File.join(TEST_DIRECTORY, 'bundles')
HELLOWORLD_PLUGIN_FILE =
File.join(TEST_PLUGIN_DIRECTORY,
'HelloWorld.replabundle')
HELLOWORLD_PLUGIN_NAME =
'HelloWorld'.freeze
TEST_SERVER_PLUGIN_NAME =
'TestServer'.freeze
TEST_SERVER_PLUGIN_FILE =
File.join(TEST_PLUGIN_DIRECTORY,
'TestServer.replabundle')
INDEX_HTML_URL =
html_server_url(INDEX_HTML_FILENAME)
INDEXJQUERY_HTML_URL =
html_server_url(
  INDEXJQUERY_HTML_FILENAME
)
NO_SERVER_URL =
'NoServer'.freeze
File.join(TEST_PLUGIN_DIRECTORY, 'Print.replabundle')
'Print'.freeze
TESTLOG_PLUGIN_FILE =
File.join(TEST_PLUGIN_DIRECTORY,
'TestLog.replabundle')
TESTLOG_PLUGIN_NAME =
'TestLog'.freeze
INVALID_PLUGIN_FILE =
File.join(TEST_PLUGIN_DIRECTORY,
'Invalid.replabundle')
INVALID_PLUGIN_NAME =
'Invalid'.freeze
TEST_JAVASCRIPT_DIRECTORY =

JavaScript

File.join(LIB_DIRECTORY, '../js')
LASTCODE_JAVASCRIPT_FILE =
File.join(TEST_JAVASCRIPT_DIRECTORY,
'lastcode.js')
FIRSTCODE_JAVASCRIPT_FILE =
File.join(TEST_JAVASCRIPT_DIRECTORY,
'firstcode.js')
NODOM_JAVASCRIPT_FILE =
File.join(TEST_JAVASCRIPT_DIRECTORY, 'nodom.js')
TEXT_JAVASCRIPT_FILE =
File.join(TEST_JAVASCRIPT_DIRECTORY, 'text.js')
TEXTJQUERY_JAVASCRIPT_FILE =
File.join(TEST_JAVASCRIPT_DIRECTORY,
'textjquery.js')

Class Method Summary collapse

Class Method Details

.block_until(&block) ⇒ Object



36
37
38
# File 'lib/repla/test.rb', line 36

def self.block_until(&block)
  block_until_with_timeout(TEST_TIMEOUT_TIME, &block)
end

.block_until_with_timeout(timeout) ⇒ Object



27
28
29
30
31
32
33
34
# File 'lib/repla/test.rb', line 27

def self.block_until_with_timeout(timeout)
  cycles = [timeout / POLLING_INTERVAL, 1].max
  count = 0
  until yield || count >= cycles
    sleep(POLLING_INTERVAL)
    count += 1
  end
end

.html_file(filename) ⇒ Object

Test Assets



19
20
21
# File 'lib/repla/test.rb', line 19

def self.html_file(filename)
  File.join(TEST_HTML_DIRECTORY, filename)
end

.html_server_url(filename) ⇒ Object



23
24
25
# File 'lib/repla/test.rb', line 23

def self.html_server_url(filename)
  'http://127.0.0.1:5000/' + filename
end