RubyApp 0.5.16 → 0.5.17

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- RubyApp (0.5.16)
4
+ RubyApp (0.5.17)
5
5
  BlueCloth
6
6
  chronic
7
7
  chronic_duration
@@ -122,6 +122,14 @@ module RubyApp
122
122
  self.tap_selector("a:contains('#{text}')")
123
123
  end
124
124
 
125
+ def tap_list_item(text)
126
+ self.tap_selector("a.item:contains('#{text}')")
127
+ end
128
+
129
+ def tap_list_link(text)
130
+ self.tap_selector("a.link[title*='#{text}']")
131
+ end
132
+
125
133
  def tap_selector(selector)
126
134
  _selector = ".ui-page-active #{selector}"
127
135
  self.execute("RubyApp.tap(#{_selector.to_json});")
@@ -24,24 +24,32 @@ module RubyApp
24
24
 
25
25
  @list = RubyApp::Elements::Mobile::List.new
26
26
  @list.attributes.merge!('data-inset' => true)
27
+ @list.is_split = true
27
28
  @list.items += [ 'Item 01',
28
29
  'Item 02',
29
30
  'Item 03',
30
31
  'Item 04',
31
32
  'Item 05' ]
32
- @list.clicked do |element, event|
33
- RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked #{event.item}."), :transition => 'pop')
33
+ @list.item_clicked do |element, event|
34
+ RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the item #{event.item}."), :transition => 'pop')
35
+ end
36
+ @list.link_clicked do |element, event|
37
+ RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the link #{event.item}."), :transition => 'pop')
34
38
  end
35
39
 
36
40
  @select = RubyApp::Elements::Mobile::Lists::Select.new
37
41
  @select.attributes.merge!('data-inset' => true)
42
+ @select.is_split = true
38
43
  @select.items += [ 'Item 11',
39
44
  'Item 12',
40
45
  'Item 13',
41
46
  'Item 14',
42
47
  'Item 15' ]
43
- @select.clicked do |element, event|
44
- RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked #{event.item}."), :transition => 'pop')
48
+ @select.item_clicked do |element, event|
49
+ RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the item #{event.item}."), :transition => 'pop')
50
+ end
51
+ @select.link_clicked do |element, event|
52
+ RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the link #{event.item}."), :transition => 'pop')
45
53
  end
46
54
 
47
55
  end
@@ -3,5 +3,8 @@
3
3
  %ul.list{attributes}
4
4
  - self.items.each_with_index do |item, index|
5
5
  %li.item{'data-icon' => 'false'}
6
- %a.item{:href => '#', :index => index}
6
+ %a.item{:href => '#', 'data-index' => index}
7
7
  = yield(:item, item, index) || item
8
+ - if self.split?
9
+ %a.link{:href => '#', 'data-index' => index}
10
+ = yield(:link, item, index) || item
@@ -3,7 +3,11 @@
3
3
  $(document).ready( function() {
4
4
  $(document).on('tap', 'ul.list > li.item a.item', function(event) {
5
5
  event.preventDefault();
6
- RubyApp.queueEvent({_class:'RubyApp::Elements::Mobile::List::ClickedEvent', source:$(this).parents('ul.list').attr('id'), index:$(this).attr('index')});
6
+ RubyApp.queueEvent({_class:'RubyApp::Elements::Mobile::List::ItemClickedEvent', source:$(this).parents('ul.list').attr('id'), index:$(this).attr('data-index')});
7
+ });
8
+ $(document).on('tap', 'ul.list > li.item a.link', function(event) {
9
+ event.preventDefault();
10
+ RubyApp.queueEvent({_class:'RubyApp::Elements::Mobile::List::LinkClickedEvent', source:$(this).parents('ul.list').attr('id'), index:$(this).attr('data-index')});
7
11
  });
8
12
  });
9
13
  = yield
@@ -28,29 +28,57 @@ module RubyApp
28
28
 
29
29
  end
30
30
 
31
+ class ItemClickedEvent < RubyApp::Elements::Mobile::List::ClickedEvent
32
+
33
+ def initialize(data)
34
+ super(data)
35
+ end
36
+
37
+ end
38
+
39
+ class LinkClickedEvent < RubyApp::Elements::Mobile::List::ClickedEvent
40
+
41
+ def initialize(data)
42
+ super(data)
43
+ end
44
+
45
+ end
46
+
31
47
  template_path(:all, File.dirname(__FILE__))
32
48
 
33
49
  attr_accessor :items
50
+ attr_accessor :is_split
34
51
 
35
- event :clicked
52
+ event :item_clicked
53
+ event :link_clicked
36
54
 
37
55
  def initialize
38
56
  super
39
57
  self.attributes.merge!('data-role' => 'listview')
40
58
 
41
59
  @items = []
60
+ @is_split = false
42
61
 
43
62
  end
44
63
 
64
+ def split?
65
+ return self.is_split
66
+ end
67
+
45
68
  protected
46
69
 
47
70
  def on_event(event)
48
- on_clicked(event) if event.is_a?(RubyApp::Elements::Mobile::List::ClickedEvent)
71
+ on_item_clicked(event) if event.is_a?(RubyApp::Elements::Mobile::List::ItemClickedEvent)
72
+ on_link_clicked(event) if event.is_a?(RubyApp::Elements::Mobile::List::LinkClickedEvent)
49
73
  super(event)
50
74
  end
51
75
 
52
- def on_clicked(event)
53
- clicked(event)
76
+ def on_item_clicked(event)
77
+ item_clicked(event)
78
+ end
79
+
80
+ def on_link_clicked(event)
81
+ link_clicked(event)
54
82
  end
55
83
 
56
84
  end
@@ -3,5 +3,8 @@
3
3
  %ul.list{attributes}
4
4
  - self.items.each_with_index do |item, index|
5
5
  %li.item{'data-icon' => 'false', 'data-theme' => self.selected_item == item ? self.attributes['data-selected-theme'] : nil}
6
- %a.item{:href => '#', :index => index}
6
+ %a.item{:href => '#', 'data-index' => index}
7
7
  = yield(:item, item, index) || item
8
+ - if self.split?
9
+ %a.link{:href => '#', 'data-index' => index}
10
+ = yield(:link, item, index) || item
@@ -26,7 +26,7 @@ module RubyApp
26
26
 
27
27
  protected
28
28
 
29
- def on_clicked(event)
29
+ def on_item_clicked(event)
30
30
  @selected_item = event.item
31
31
  event.update_element(self)
32
32
  super(event)
@@ -24,7 +24,7 @@ module RubyApp
24
24
  @back_button = RubyApp::Elements::Mobile::Navigation::BackButton.new
25
25
 
26
26
  @documents_list = RubyApp::Elements::Mobile::Pages::Information::DocumentsList.new(@session)
27
- @documents_list.clicked do |element, event|
27
+ @documents_list.item_clicked do |element, event|
28
28
  RubyApp::Elements::Mobile::Pages::Information::DocumentPage.new(event.item).show(event, element.options)
29
29
  end
30
30
 
@@ -24,7 +24,7 @@ module RubyApp
24
24
  @back_button = RubyApp::Elements::Mobile::Navigation::BackButton.new
25
25
 
26
26
  @pages_list = RubyApp::Elements::Mobile::Pages::Information::PagesList.new(@document)
27
- @pages_list.clicked do |element, event|
27
+ @pages_list.item_clicked do |element, event|
28
28
  RubyApp::Elements::Mobile::Pages::Information::PagePage.new(event.item).show(event, element.options)
29
29
  end
30
30
 
@@ -22,7 +22,7 @@ module RubyApp
22
22
  @back_button = RubyApp::Elements::Mobile::Navigation::BackButton.new
23
23
 
24
24
  @scripts_list = RubyApp::Elements::Mobile::Pages::Information::ScriptsList.new
25
- @scripts_list.clicked do |element, event|
25
+ @scripts_list.item_clicked do |element, event|
26
26
  if RubyApp::Session.configuration.scripts.enabled
27
27
  event.go(event.item.url)
28
28
  else
@@ -22,7 +22,7 @@ module RubyApp
22
22
  @back_button = RubyApp::Elements::Mobile::Navigation::BackButton.new
23
23
 
24
24
  @sessions_list = RubyApp::Elements::Mobile::Pages::Information::SessionsList.new
25
- @sessions_list.clicked do |element, event|
25
+ @sessions_list.item_clicked do |element, event|
26
26
  RubyApp::Elements::Mobile::Pages::Information::SessionPage.new(event.item).show(event, element.options)
27
27
  end
28
28
 
@@ -7,22 +7,44 @@ end
7
7
 
8
8
  add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
9
9
  event.assert_exists_link('Item 01')
10
- event.tap_link('Item 01')
10
+ event.tap_list_item('Item 01')
11
11
  end
12
12
 
13
13
  add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
14
- event.assert_exists_text('You clicked Item 01.')
14
+ event.assert_exists_text('You clicked the item Item 01.')
15
+ event.assert_exists_link('OK')
16
+ event.tap_link('OK')
17
+ end
18
+
19
+ add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
20
+ event.assert_exists_link('Item 01')
21
+ event.tap_list_link('Item 01')
22
+ end
23
+
24
+ add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
25
+ event.assert_exists_text('You clicked the link Item 01.')
26
+ event.assert_exists_link('OK')
27
+ event.tap_link('OK')
28
+ end
29
+
30
+ add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
31
+ event.assert_exists_link('Item 11')
32
+ event.tap_list_item('Item 11')
33
+ end
34
+
35
+ add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
36
+ event.assert_exists_text('You clicked the item Item 11.')
15
37
  event.assert_exists_link('OK')
16
38
  event.tap_link('OK')
17
39
  end
18
40
 
19
41
  add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
20
42
  event.assert_exists_link('Item 11')
21
- event.tap_link('Item 11')
43
+ event.tap_list_link('Item 11')
22
44
  end
23
45
 
24
46
  add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
25
- event.assert_exists_text('You clicked Item 11.')
47
+ event.assert_exists_text('You clicked the link Item 11.')
26
48
  event.assert_exists_link('OK')
27
49
  event.tap_link('OK')
28
50
  end
@@ -1,4 +1,4 @@
1
1
  module RubyApp
2
- VERSION = "0.5.16"
2
+ VERSION = "0.5.17"
3
3
  ROOT = File.expand_path(File.dirname(__FILE__))
4
4
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: RubyApp
3
3
  version: !ruby/object:Gem::Version
4
- hash: 43
4
+ hash: 41
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 5
9
- - 16
10
- version: 0.5.16
9
+ - 17
10
+ version: 0.5.17
11
11
  platform: ruby
12
12
  authors:
13
13
  - Frank G. Ficnar
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-04-16 00:00:00 Z
18
+ date: 2012-04-17 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  prerelease: false