repla 0.6.2 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/applescript/load_url.scpt +0 -0
- data/lib/repla/lib/window.rb +7 -0
- data/lib/repla/logger/test/Rakefile +0 -1
- data/lib/repla/logger/test/lib/{test_view_helper.rb → test_log_helper.rb} +1 -1
- data/lib/repla/logger/test/tc_logger.rb +19 -18
- data/lib/repla/test/bundles/TestEnvironment.replabundle/Contents/Resources/test_environment.rb +2 -2
- data/lib/repla/test/bundles/TestServer.replabundle/Contents/Info.plist +14 -0
- data/lib/repla/test/bundles/TestServer.replabundle/Contents/Resources/server.sh +6 -0
- data/lib/repla/test/lib/view_helper.rb +48 -0
- data/lib/repla/test.rb +30 -12
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: addea698961d0d433594235b23367754bb856791
|
4
|
+
data.tar.gz: cc9b8dec45d41a68dc98e3399b0426a87c662897
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a309d37ca6e26474f40abaac84be6fd3ebd566d527c9d2fe8fb145e76fa2430c7c75c6c7ea8644fd5c5762b9e46848a1e04eabffd6b67d9ee96ea3c6befccc3e
|
7
|
+
data.tar.gz: 457a79f04227251a93fa0d0e8411eacc990dbdd0eea41904b639364b06f6069b20cd7aa59d13bbd9dc4d5c61db32c45ce28975553ac516900fe9d028c185f751
|
Binary file
|
data/lib/repla/lib/window.rb
CHANGED
@@ -34,6 +34,13 @@ module Repla
|
|
34
34
|
run_script(script, arguments)
|
35
35
|
end
|
36
36
|
|
37
|
+
LOAD_URL_SCRIPT = File.join(APPLESCRIPT_DIRECTORY, 'load_url.scpt')
|
38
|
+
def load_url(file)
|
39
|
+
arguments = [file]
|
40
|
+
script = LOAD_URL_SCRIPT
|
41
|
+
run_script(script, arguments)
|
42
|
+
end
|
43
|
+
|
37
44
|
DOJAVASCRIPT_SCRIPT = File.join(APPLESCRIPT_DIRECTORY, 'do_javascript.scpt')
|
38
45
|
def do_javascript(javascript)
|
39
46
|
run_script(DOJAVASCRIPT_SCRIPT, [javascript])
|
@@ -1,43 +1,44 @@
|
|
1
1
|
#!/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'minitest/autorun'
|
4
4
|
|
5
5
|
require_relative 'lib/test_setup'
|
6
6
|
|
7
|
-
require_relative 'lib/
|
7
|
+
require_relative 'lib/test_log_helper'
|
8
8
|
require_relative '../../logger'
|
9
9
|
|
10
10
|
# Test constants
|
11
|
-
class TestConstants < Test
|
11
|
+
class TestConstants < Minitest::Test
|
12
12
|
def test_constants
|
13
13
|
message_prefix = Repla::Logger::MESSAGE_PREFIX
|
14
|
-
|
14
|
+
refute_nil(message_prefix)
|
15
15
|
error_prefix = Repla::Logger::ERROR_PREFIX
|
16
|
-
|
16
|
+
refute_nil(error_prefix)
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
20
20
|
# Test unitialized logger
|
21
|
-
class TestUnintializedLogger < Test
|
21
|
+
class TestUnintializedLogger < Minitest::Test
|
22
|
+
def setup
|
23
|
+
@logger = Repla::Logger.new
|
24
|
+
end
|
25
|
+
|
22
26
|
def teardown
|
23
|
-
Repla::
|
24
|
-
|
25
|
-
'The application should not be running.')
|
27
|
+
window = Repla::Window.new(@logger.window_id)
|
28
|
+
window.close
|
26
29
|
end
|
27
30
|
|
28
31
|
def test_uninitialized_logger
|
29
|
-
logger = Repla::Logger.new
|
30
|
-
|
31
32
|
# Test Message
|
32
33
|
message = 'Testing log message'
|
33
|
-
logger.info(message)
|
34
|
+
@logger.info(message)
|
34
35
|
sleep Repla::Test::TEST_PAUSE_TIME # Pause for output to be processed
|
35
36
|
|
36
37
|
# Make sure the log messages before accessing the logger's `view_id` and
|
37
38
|
# `window_id` because those run the logger. This test should test logging a
|
38
39
|
# message and running the logger itself simultaneously. This is why the
|
39
|
-
# `
|
40
|
-
test_view_helper =
|
40
|
+
# `LogHelper` is intialized after logging the message.
|
41
|
+
test_view_helper = LogHelper.new(@logger.window_id, @logger.view_id)
|
41
42
|
|
42
43
|
test_message = test_view_helper.last_log_message
|
43
44
|
assert_equal(message, test_message, 'The messages should match')
|
@@ -47,16 +48,16 @@ class TestUnintializedLogger < Test::Unit::TestCase
|
|
47
48
|
end
|
48
49
|
|
49
50
|
# Test logger
|
50
|
-
class TestLogger < Test
|
51
|
+
class TestLogger < Minitest::Test
|
51
52
|
def setup
|
52
53
|
@logger = Repla::Logger.new
|
53
54
|
@logger.show
|
54
|
-
@test_view_helper =
|
55
|
+
@test_view_helper = LogHelper.new(@logger.window_id, @logger.view_id)
|
55
56
|
end
|
56
57
|
|
57
58
|
def teardown
|
58
|
-
Repla::
|
59
|
-
|
59
|
+
window = Repla::Window.new(@logger.window_id)
|
60
|
+
window.close
|
60
61
|
end
|
61
62
|
|
62
63
|
def test_logger
|
data/lib/repla/test/bundles/TestEnvironment.replabundle/Contents/Resources/test_environment.rb
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
#!/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'minitest/autorun'
|
4
4
|
|
5
5
|
require_relative '../../../../../../repla'
|
6
6
|
require_relative 'constants'
|
7
7
|
require_relative '../../../../../lib/escape'
|
8
8
|
|
9
9
|
# Test environment
|
10
|
-
class TestEnviroment < Test
|
10
|
+
class TestEnviroment < Minitest::Test
|
11
11
|
using Escape
|
12
12
|
def test_plugin_name_key
|
13
13
|
assert(ENV.key?(Repla::PLUGIN_NAME_KEY))
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
3
|
+
<plist version="1.0">
|
4
|
+
<dict>
|
5
|
+
<key>WCName</key>
|
6
|
+
<string>TestServer</string>
|
7
|
+
<key>WCCommand</key>
|
8
|
+
<string>server.sh</string>
|
9
|
+
<key>WCUUID</key>
|
10
|
+
<string>43D9A5AC-78CF-4F67-9093-E3F1CB11932B</string>
|
11
|
+
<key>WCEditable</key>
|
12
|
+
<integer>0</integer>
|
13
|
+
</dict>
|
14
|
+
</plist>
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require_relative '../../test'
|
2
|
+
require 'minitest/autorun'
|
3
|
+
|
4
|
+
module Repla
|
5
|
+
module Test
|
6
|
+
# View helper
|
7
|
+
module ViewHelper
|
8
|
+
def self.make_windows(filename)
|
9
|
+
file_view = make_file_view(filename, Window)
|
10
|
+
url_view = make_url_view(filename, Window)
|
11
|
+
raise unless file_view.class == Window
|
12
|
+
|
13
|
+
raise unless url_view.class == Window
|
14
|
+
|
15
|
+
[file_view, url_view]
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.make_views(filename)
|
19
|
+
file_view = make_file_view(filename)
|
20
|
+
url_view = make_url_view(filename)
|
21
|
+
raise if file_view.class != View
|
22
|
+
|
23
|
+
raise if url_view.class != View
|
24
|
+
|
25
|
+
[file_view, url_view]
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.make_file_view(filename, view_class = View)
|
29
|
+
file = Repla::Test.html_file(filename)
|
30
|
+
view = view_class.new
|
31
|
+
view.load_file(file)
|
32
|
+
view
|
33
|
+
end
|
34
|
+
|
35
|
+
def self.make_url_view(filename, view_class = View.new)
|
36
|
+
Repla.load_plugin(Repla::Test::TEST_SERVER_PLUGIN_FILE)
|
37
|
+
window_id = Repla.run_plugin(Repla::Test::TEST_SERVER_PLUGIN_NAME,
|
38
|
+
Repla::Test::TEST_HTML_DIRECTORY)
|
39
|
+
raise if window_id.nil?
|
40
|
+
|
41
|
+
url = Repla::Test.html_server_url(filename)
|
42
|
+
view = view_class.new(window_id)
|
43
|
+
view.load_url(url)
|
44
|
+
view
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
data/lib/repla/test.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
module Repla
|
2
|
+
# Test
|
2
3
|
module Test
|
3
4
|
# General
|
4
5
|
TEST_PAUSE_TIME = 2.00
|
@@ -8,14 +9,43 @@ module Repla
|
|
8
9
|
TEST_DIRECTORY = File.join(File.dirname(__FILE__), 'test')
|
9
10
|
LIB_DIRECTORY = File.join(TEST_DIRECTORY, 'lib')
|
10
11
|
HELPER_FILE = File.join(LIB_DIRECTORY, 'helper')
|
12
|
+
VIEW_HELPER_FILE = File.join(LIB_DIRECTORY, 'view_helper')
|
11
13
|
|
12
14
|
# Test Assets
|
15
|
+
def self.html_file(filename)
|
16
|
+
File.join(TEST_HTML_DIRECTORY, filename)
|
17
|
+
end
|
13
18
|
|
19
|
+
def self.html_server_url(filename)
|
20
|
+
'http://127.0.0.1:5000/' + filename
|
21
|
+
end
|
22
|
+
|
23
|
+
# HTML
|
24
|
+
TEST_HTML_DIRECTORY = File.join(TEST_DIRECTORY, 'html')
|
25
|
+
INDEX_HTML_FILENAME = 'index.html'.freeze
|
26
|
+
INDEXJQUERY_HTML_FILENAME = 'indexjquery.html'.freeze
|
27
|
+
INDEX_HTML_FILE = html_file(INDEX_HTML_FILENAME)
|
28
|
+
INDEXJQUERY_HTML_FILE = html_file(INDEXJQUERY_HTML_FILENAME)
|
29
|
+
INDEX_HTML_TITLE = 'Index'.freeze
|
30
|
+
INDEXJQUERY_HTML_TITLE = 'Index JQuery'.freeze
|
31
|
+
|
32
|
+
# JavaScript
|
33
|
+
TEST_ASSETS_JAVASCRIPT_DIRECTORY = File.join(TEST_DIRECTORY, 'js')
|
34
|
+
TITLE_JAVASCRIPT_FILE = File.join(TEST_ASSETS_JAVASCRIPT_DIRECTORY,
|
35
|
+
'title.js')
|
14
36
|
# Plugins
|
15
37
|
TEST_PLUGIN_DIRECTORY = File.join(TEST_DIRECTORY, 'bundles')
|
16
38
|
HELLOWORLD_PLUGIN_FILE = File.join(TEST_PLUGIN_DIRECTORY,
|
17
39
|
'HelloWorld.replabundle')
|
18
40
|
HELLOWORLD_PLUGIN_NAME = 'HelloWorld'.freeze
|
41
|
+
TEST_SERVER_PLUGIN_NAME = 'TestServer'.freeze
|
42
|
+
TEST_SERVER_PLUGIN_FILE = File.join(TEST_PLUGIN_DIRECTORY,
|
43
|
+
'TestServer.replabundle')
|
44
|
+
INDEX_HTML_URL = html_server_url(INDEX_HTML_FILENAME)
|
45
|
+
INDEXJQUERY_HTML_URL = html_server_url(
|
46
|
+
INDEXJQUERY_HTML_FILENAME
|
47
|
+
)
|
48
|
+
NO_SERVER_URL = 'NoServer'.freeze
|
19
49
|
PRINT_PLUGIN_FILE = File.join(TEST_PLUGIN_DIRECTORY, 'Print.replabundle')
|
20
50
|
PRINT_PLUGIN_NAME = 'Print'.freeze
|
21
51
|
TESTLOG_PLUGIN_FILE = File.join(TEST_PLUGIN_DIRECTORY,
|
@@ -25,18 +55,6 @@ module Repla
|
|
25
55
|
'Invalid.replabundle')
|
26
56
|
INVALID_PLUGIN_NAME = 'Invalid'.freeze
|
27
57
|
|
28
|
-
# HTML
|
29
|
-
TEST_HTML_DIRECTORY = File.join(TEST_DIRECTORY, 'html')
|
30
|
-
INDEX_HTML_FILE = File.join(TEST_HTML_DIRECTORY, 'index.html')
|
31
|
-
INDEXJQUERY_HTML_FILE = File.join(TEST_HTML_DIRECTORY, 'indexjquery.html')
|
32
|
-
INDEX_HTML_TITLE = 'Index'.freeze
|
33
|
-
INDEXJQUERY_HTML_TITLE = 'Index JQuery'.freeze
|
34
|
-
|
35
|
-
# JavaScript
|
36
|
-
TEST_ASSETS_JAVASCRIPT_DIRECTORY = File.join(TEST_DIRECTORY, 'js')
|
37
|
-
TITLE_JAVASCRIPT_FILE = File.join(TEST_ASSETS_JAVASCRIPT_DIRECTORY,
|
38
|
-
'title.js')
|
39
|
-
|
40
58
|
# Local Asssets
|
41
59
|
|
42
60
|
# JavaScript
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: repla
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Roben Kleene
|
@@ -23,6 +23,7 @@ files:
|
|
23
23
|
- lib/applescript/hide_log.scpt
|
24
24
|
- lib/applescript/load.scpt
|
25
25
|
- lib/applescript/load_plugin.scpt
|
26
|
+
- lib/applescript/load_url.scpt
|
26
27
|
- lib/applescript/load_with_root_access_directory.scpt
|
27
28
|
- lib/applescript/read_from_standard_input.scpt
|
28
29
|
- lib/applescript/resource_path_for_plugin.scpt
|
@@ -54,8 +55,8 @@ files:
|
|
54
55
|
- lib/repla/logger.rb
|
55
56
|
- lib/repla/logger/test/Rakefile
|
56
57
|
- lib/repla/logger/test/js/test_view_helper.js
|
58
|
+
- lib/repla/logger/test/lib/test_log_helper.rb
|
57
59
|
- lib/repla/logger/test/lib/test_setup.rb
|
58
|
-
- lib/repla/logger/test/lib/test_view_helper.rb
|
59
60
|
- lib/repla/logger/test/run_tests.sh
|
60
61
|
- lib/repla/logger/test/tc_logger.rb
|
61
62
|
- lib/repla/repl.rb
|
@@ -125,6 +126,8 @@ files:
|
|
125
126
|
- lib/repla/test/bundles/TestEnvironment.replabundle/Contents/Resources/test_environment.rb
|
126
127
|
- lib/repla/test/bundles/TestLog.replabundle/Contents/Info.plist
|
127
128
|
- lib/repla/test/bundles/TestLog.replabundle/Contents/Resources/test_log.rb
|
129
|
+
- lib/repla/test/bundles/TestServer.replabundle/Contents/Info.plist
|
130
|
+
- lib/repla/test/bundles/TestServer.replabundle/Contents/Resources/server.sh
|
128
131
|
- lib/repla/test/html/index.html
|
129
132
|
- lib/repla/test/html/indexjquery.html
|
130
133
|
- lib/repla/test/html/js/zepto.js
|
@@ -135,6 +138,7 @@ files:
|
|
135
138
|
- lib/repla/test/js/textjquery.js
|
136
139
|
- lib/repla/test/js/title.js
|
137
140
|
- lib/repla/test/lib/helper.rb
|
141
|
+
- lib/repla/test/lib/view_helper.rb
|
138
142
|
homepage:
|
139
143
|
licenses: []
|
140
144
|
metadata: {}
|