ProMotion 1.2.1 → 2.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +36 -10
  3. data/lib/ProMotion.rb +11 -2
  4. data/lib/ProMotion/cocoatouch/ns_string.rb +5 -0
  5. data/lib/ProMotion/cocoatouch/ns_url.rb +5 -0
  6. data/lib/ProMotion/cocoatouch/tab_bar_controller.rb +5 -7
  7. data/lib/ProMotion/cocoatouch/table_view_cell.rb +0 -16
  8. data/lib/ProMotion/cocoatouch/table_view_controller.rb +2 -3
  9. data/lib/ProMotion/cocoatouch/view_controller.rb +3 -6
  10. data/lib/ProMotion/delegate/delegate.rb +0 -3
  11. data/lib/ProMotion/delegate/delegate_module.rb +24 -20
  12. data/lib/ProMotion/{containers → ipad}/split_screen.rb +30 -32
  13. data/lib/ProMotion/{logger.rb → logger/logger.rb} +6 -5
  14. data/lib/ProMotion/screen/nav_bar_module.rb +126 -0
  15. data/lib/ProMotion/screen/screen.rb +0 -3
  16. data/lib/ProMotion/screen/screen_module.rb +54 -177
  17. data/lib/ProMotion/screen/screen_navigation.rb +29 -40
  18. data/lib/ProMotion/{view → styling}/styling.rb +17 -47
  19. data/lib/ProMotion/table/cell/table_view_cell_module.rb +76 -123
  20. data/lib/ProMotion/table/data/table_data.rb +1 -1
  21. data/lib/ProMotion/table/extensions/longpressable.rb +24 -0
  22. data/lib/ProMotion/table/extensions/refreshable.rb +1 -0
  23. data/lib/ProMotion/table/grouped_table_screen.rb +0 -5
  24. data/lib/ProMotion/table/table.rb +63 -83
  25. data/lib/ProMotion/table/table_screen.rb +0 -4
  26. data/lib/ProMotion/{containers → tabs}/tabs.rb +20 -21
  27. data/lib/ProMotion/version.rb +1 -1
  28. data/lib/ProMotion/web/web_screen.rb +0 -4
  29. data/lib/ProMotion/web/web_screen_module.rb +8 -5
  30. data/spec/functional/func_screen_spec.rb +14 -18
  31. data/spec/functional/func_split_screen_spec.rb +2 -2
  32. data/spec/functional/func_table_screen_spec.rb +54 -40
  33. data/spec/functional/func_web_screen_spec.rb +12 -17
  34. data/spec/helpers/test_helper.rb +27 -0
  35. data/spec/unit/delegate_spec.rb +4 -67
  36. data/spec/unit/image_title_screen.rb +9 -0
  37. data/spec/unit/image_view_title_screen.rb +9 -0
  38. data/spec/unit/load_view_spec.rb +27 -0
  39. data/spec/unit/main_spec.rb +0 -6
  40. data/spec/unit/screen_helpers_spec.rb +23 -17
  41. data/spec/unit/screen_spec.rb +21 -17
  42. data/spec/unit/searchable_table_spec.rb +55 -0
  43. data/spec/unit/split_screen_in_tab_bar_spec.rb +5 -5
  44. data/spec/unit/split_screen_spec.rb +4 -4
  45. data/spec/unit/tab_bar_spec.rb +79 -0
  46. data/spec/unit/tab_spec.rb +11 -5
  47. data/spec/unit/tables/table_module_spec.rb +22 -8
  48. data/spec/unit/tables/table_screen_spec.rb +1 -1
  49. data/spec/unit/tables/table_view_cell_spec.rb +16 -16
  50. data/spec/unit/view_helper_spec.rb +6 -81
  51. data/spec/unit/view_title_screen.rb +10 -0
  52. data/spec/unit/web_spec.rb +31 -37
  53. metadata +37 -111
  54. data/.gitignore +0 -33
  55. data/.travis.yml +0 -4
  56. data/CONTRIBUTING.md +0 -20
  57. data/Gemfile +0 -5
  58. data/LICENSE +0 -22
  59. data/ProMotion.gemspec +0 -30
  60. data/Rakefile +0 -66
  61. data/app/app_delegate.rb +0 -7
  62. data/app/screens/basic_screen.rb +0 -15
  63. data/lib/ProMotion/delegate/delegate_notifications.rb +0 -70
  64. data/lib/ProMotion/extensions/conversions.rb +0 -20
  65. data/lib/ProMotion/map/map_screen.rb +0 -10
  66. data/lib/ProMotion/map/map_screen_annotation.rb +0 -65
  67. data/lib/ProMotion/map/map_screen_module.rb +0 -212
  68. data/lib/ProMotion/push_notification/push_notification.rb +0 -58
  69. data/resources/WebScreen.html +0 -6
  70. data/resources/list.png +0 -0
  71. data/resources/test.png +0 -0
  72. data/spec/functional/func_image_title_screen.rb +0 -20
  73. data/spec/functional/func_image_view_title_screen.rb +0 -20
  74. data/spec/functional/func_map_screen_spec.rb +0 -162
  75. data/spec/functional/func_searchable_table_spec.rb +0 -56
  76. data/spec/functional/func_tab_bar_spec.rb +0 -78
  77. data/spec/functional/func_view_title_screen.rb +0 -21
  78. data/spec/helpers/basic_screen.rb +0 -3
  79. data/spec/helpers/custom_title_view.rb +0 -4
  80. data/spec/helpers/detail_screen.rb +0 -3
  81. data/spec/helpers/dummy_class.rb +0 -3
  82. data/spec/helpers/functional_screen.rb +0 -15
  83. data/spec/helpers/home_screen.rb +0 -19
  84. data/spec/helpers/image_title_screen.rb +0 -15
  85. data/spec/helpers/image_view_title_screen.rb +0 -15
  86. data/spec/helpers/map_screen.rb +0 -53
  87. data/spec/helpers/master_screen.rb +0 -3
  88. data/spec/helpers/present_screen.rb +0 -26
  89. data/spec/helpers/screen_module_view_controller.rb +0 -55
  90. data/spec/helpers/tab_screen.rb +0 -4
  91. data/spec/helpers/table_screen.rb +0 -117
  92. data/spec/helpers/table_screen_indexable.rb +0 -18
  93. data/spec/helpers/table_screen_refreshable.rb +0 -11
  94. data/spec/helpers/table_screen_searchable.rb +0 -72
  95. data/spec/helpers/test_delegate.rb +0 -34
  96. data/spec/helpers/test_delegate_colors.rb +0 -17
  97. data/spec/helpers/view_title_screen.rb +0 -15
  98. data/spec/helpers/web_screen.rb +0 -23
  99. data/spec/unit/map_spec.rb +0 -71
@@ -3,3 +3,30 @@ class TestHelper
3
3
  UIDevice.currentDevice.systemVersion.to_f >= 7.0
4
4
  end
5
5
  end
6
+
7
+ def silence_warnings(&block)
8
+ warn_level = $VERBOSE
9
+ $VERBOSE = nil
10
+ begin
11
+ result = block.call
12
+ ensure
13
+ $VERBOSE = warn_level
14
+ end
15
+ result
16
+ end
17
+
18
+ silence_warnings do
19
+ module Bacon
20
+ if ENV['filter']
21
+ $stderr.puts "Filtering specs that match: #{ENV['filter']}"
22
+ RestrictName = Regexp.new(ENV['filter'])
23
+ end
24
+
25
+ if ENV['filter_context']
26
+ $stderr.puts "Filtering contexts that match: #{ENV['filter_context']}"
27
+ RestrictContext = Regexp.new(ENV['filter_context'])
28
+ end
29
+
30
+ Backtraces = false if ENV['hide_backtraces']
31
+ end
32
+ end
@@ -10,69 +10,6 @@ describe "PM::Delegate" do
10
10
  @subject.application(UIApplication.sharedApplication, didFinishLaunchingWithOptions:{jamon: true})
11
11
  end
12
12
 
13
- it "should handle push notifications" do
14
-
15
- @subject.mock!(:on_push_notification) do |notification, was_launched|
16
- notification.should.be.kind_of(PM::PushNotification)
17
- notification.alert.should == "Eating Bacon"
18
- notification.badge.should == 42
19
- notification.sound.should == "jamon"
20
- @subject.aps_notification.should == notification
21
- end
22
-
23
- launch_options = { UIApplicationLaunchOptionsRemoteNotificationKey => PM::PushNotification.fake_notification(alert: "Eating Bacon", badge: 42, sound: "jamon").notification }
24
- @subject.application(UIApplication.sharedApplication, willFinishLaunchingWithOptions: nil)
25
- @subject.application(UIApplication.sharedApplication, didFinishLaunchingWithOptions:launch_options )
26
-
27
- end
28
-
29
- it "should return the registered push notification types as an array" do
30
- @subject.registered_push_notifications.should == []
31
- bits = 0
32
- types = []
33
- { badge: UIRemoteNotificationTypeBadge,
34
- sound: UIRemoteNotificationTypeSound,
35
- alert: UIRemoteNotificationTypeAlert,
36
- newsstand: UIRemoteNotificationTypeNewsstandContentAvailability }.each do |symbol, bit|
37
- UIApplication.sharedApplication.stub!(:enabledRemoteNotificationTypes, return: bit)
38
- @subject.registered_push_notifications.should == [symbol]
39
-
40
- bits |= bit
41
- types << symbol
42
- UIApplication.sharedApplication.stub!(:enabledRemoteNotificationTypes, return: bits)
43
- @subject.registered_push_notifications.should == types
44
- end
45
- end
46
-
47
- it "should return false for was_launched if the app is currently active on screen" do
48
- @subject.mock!(:on_push_notification) do |notification, was_launched|
49
- was_launched.should.be.false
50
- end
51
-
52
- fake_app = Struct.new(:applicationState).new(UIApplicationStateActive)
53
- remote_notification = PM::PushNotification.fake_notification.notification
54
- @subject.application(fake_app, didReceiveRemoteNotification: remote_notification)
55
- end
56
-
57
- it "should return true for was_launched if app was launched from background" do
58
- @subject.mock!(:on_push_notification) do |notification, was_launched|
59
- was_launched.should.be.true
60
- end
61
-
62
- fake_app = Struct.new(:applicationState).new(UIApplicationStateBackground)
63
- remote_notification = PM::PushNotification.fake_notification.notification
64
- @subject.application(fake_app, didReceiveRemoteNotification: remote_notification)
65
- end
66
-
67
- it "should return true for was_launched if the app wasn't running" do
68
- @subject.mock!(:on_push_notification) do |notification, was_launched|
69
- was_launched.should.be.true
70
- end
71
-
72
- launch_options = { UIApplicationLaunchOptionsRemoteNotificationKey => PM::PushNotification.fake_notification.notification }
73
- @subject.application(UIApplication.sharedApplication, didFinishLaunchingWithOptions:launch_options )
74
- end
75
-
76
13
  it "should set home_screen when opening a new screen" do
77
14
  @subject.application(UIApplication.sharedApplication, willFinishLaunchingWithOptions: nil)
78
15
  @subject.application(UIApplication.sharedApplication, didFinishLaunchingWithOptions: nil)
@@ -151,13 +88,13 @@ if TestHelper.ios7
151
88
 
152
89
  before do
153
90
  @subject = TestDelegateRed.new
154
- @map = TestMapScreen.new modal: true, nav_bar: true
155
- @map.view_will_appear(false)
156
- @subject.open @map
91
+ @screen = BasicScreen.new nav_bar: true
92
+ @screen.view_will_appear(false)
93
+ @subject.open @screen
157
94
  end
158
95
 
159
96
  it 'should set the application tint color on iOS 7' do
160
- @map.view.tintColor.should == UIColor.redColor
97
+ @screen.view.tintColor.should == UIColor.redColor
161
98
  end
162
99
 
163
100
  end
@@ -0,0 +1,9 @@
1
+ describe "ProMotion::Screen UIImage title" do
2
+ def controller
3
+ @controller = ImageTitleScreen.new(nav_bar: true)
4
+ end
5
+
6
+ it "should allow an image title" do
7
+ controller.navigationItem.titleView.should.be.kind_of UIImageView
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ describe "ProMotion::Screen UIImageView title" do
2
+ def controller
3
+ @controller = ImageViewTitleScreen.new(nav_bar: true)
4
+ end
5
+
6
+ it "should allow an image title" do
7
+ controller.navigationItem.titleView.should.be.kind_of UIImageView
8
+ end
9
+ end
@@ -0,0 +1,27 @@
1
+ describe "load_view and on_load tests" do
2
+ def screen
3
+ @screen ||= LoadViewScreen.new
4
+ end
5
+
6
+ def table_screen
7
+ @table_screen ||= LoadViewTableScreen.new
8
+ end
9
+
10
+ it "should call load_view when requesting the view" do
11
+ screen.view.should.be.kind_of(MyView)
12
+ end
13
+
14
+ it "should call on_load after creating the view" do
15
+ screen.view.should.be.kind_of(MyView)
16
+ screen.view.backgroundColor.should == UIColor.redColor
17
+ end
18
+
19
+ it "should call load_view when requesting the view in a table screen" do
20
+ table_screen.view.should.be.kind_of(MyTableView)
21
+ end
22
+
23
+ it "should call on_load after creating the view in a table screen" do
24
+ table_screen.view.should.be.kind_of(MyTableView)
25
+ table_screen.view.backgroundColor.should == UIColor.greenColor
26
+ end
27
+ end
@@ -4,10 +4,4 @@ describe "pro motion module" do
4
4
  should.not.raise(NameError) { PM }
5
5
  end
6
6
 
7
- it "should not allow screen inclusion into just any class" do
8
- dummy = DummyClass.new
9
- dummy.extend ProMotion::ScreenModule
10
- should.raise(StandardError) { dummy.on_create }
11
- end
12
-
13
7
  end
@@ -123,7 +123,7 @@ describe "screen helpers" do
123
123
  end
124
124
 
125
125
  it "should apply properties when opening a new screen" do
126
- new_screen = @screen.send(:set_up_screen_for_open, BasicScreen, title: 'Some Title', modal: true, hide_tab_bar: true, nav_bar: true)
126
+ new_screen = @screen.send(:set_up_screen_for_open, BasicScreen, { title: 'Some Title', modal: true, hide_tab_bar: true, nav_bar: true })
127
127
 
128
128
  new_screen.parent_screen.should == @screen
129
129
  new_screen.title.should == 'Some Title'
@@ -140,17 +140,9 @@ describe "screen helpers" do
140
140
  animated.should == true
141
141
  completion.should == nil
142
142
  end
143
- @screen.send(:present_modal_view_controller, new_screen, true, nil)
143
+ @screen.send(:present_modal_view_controller, new_screen, { animated: true, completion: nil })
144
144
  end
145
145
 
146
- # it "should push screen onto nav controller stack inside a tab bar" do
147
- # # TODO: Implement this test
148
- # end
149
-
150
- # it "should set the tab bar selectedIndex when opening a screen inside a tab bar" do
151
- # # TODO: Implement this test
152
- # end
153
-
154
146
  it "should open a root screen if :close_all is provided" do
155
147
  @screen.mock!(:open_root_screen) { |screen| screen.should.be.instance_of BasicScreen }
156
148
  screen = @screen.open BasicScreen, close_all: true
@@ -158,20 +150,20 @@ describe "screen helpers" do
158
150
  end
159
151
 
160
152
  it "should present a modal screen if :modal is provided" do
161
- @screen.mock!(:present_modal_view_controller) do |screen, animated, completion|
153
+ @screen.mock!(:present_modal_view_controller) do |screen, args|
162
154
  screen.should.be.instance_of BasicScreen
163
- animated.should == true
164
- completion.should.be.kind_of Proc
155
+ args[:animated].should == true
156
+ args[:completion].should.be.kind_of Proc
165
157
  end
166
158
  screen = @screen.open BasicScreen, modal: true, completion: lambda{}
167
159
  screen.should.be.kind_of BasicScreen
168
160
  end
169
161
 
170
162
  it "should present a modal screen if open_modal is used" do
171
- @screen.mock!(:present_modal_view_controller) do |screen, animated, completion|
163
+ @screen.mock!(:present_modal_view_controller) do |screen, args|
172
164
  screen.should.be.instance_of BasicScreen
173
- animated.should == true
174
- completion.should == nil
165
+ args[:animated].should == true
166
+ args[:completion].should == nil
175
167
  end
176
168
  screen = @screen.open_modal BasicScreen
177
169
  screen.should.be.kind_of BasicScreen
@@ -191,7 +183,7 @@ describe "screen helpers" do
191
183
 
192
184
  it "should open screen in tab bar if :in_tab is provided" do
193
185
  @screen.stub!(:tab_bar, return: true)
194
- @screen.mock!(:present_view_controller_in_tab_bar_controller) do |screen, tab_name|
186
+ @screen.mock!(:open_in_tab) do |screen, tab_name|
195
187
  screen.should.be.instance_of BasicScreen
196
188
  tab_name.should == 'my_tab'
197
189
  end
@@ -220,6 +212,20 @@ describe "screen helpers" do
220
212
  screen.should == new_screen
221
213
  end
222
214
 
215
+ it "should not double-open a view controller if it's already been opened" do
216
+ parent_screen = HomeScreen.new(nav_bar: true)
217
+ new_screen = BasicScreen.new
218
+ @pushed = 0
219
+ parent_screen.navigationController.mock!("pushViewController:animated:") do |vc, animated|
220
+ @pushed += 1
221
+ parent_screen.navigationController.stub!("topViewController", return: vc)
222
+ end
223
+ parent_screen.open new_screen
224
+ @pushed.should == 1
225
+ parent_screen.open new_screen
226
+ @pushed.should == 1
227
+ end
228
+
223
229
  end
224
230
 
225
231
 
@@ -9,7 +9,7 @@ describe "screen properties" do
9
9
  end
10
10
 
11
11
  it "should store title" do
12
- HomeScreen.get_title.should == 'Home'
12
+ HomeScreen.title.should == 'Home'
13
13
  end
14
14
 
15
15
  it "should set default title on new instances" do
@@ -23,33 +23,28 @@ describe "screen properties" do
23
23
 
24
24
  it "should not let the instance reset the default title" do
25
25
  @screen.title = "instance method"
26
- HomeScreen.get_title.should != 'instance method'
26
+ HomeScreen.title.should != 'instance method'
27
27
  end
28
28
 
29
- it "should set the tab bar item with a system icon" do
30
- @screen.set_tab_bar_item system_icon: :contacts
29
+ it "should set the tab bar item with a system item" do
30
+ @screen.set_tab_bar_item system_item: :contacts
31
31
  comparison = UITabBarItem.alloc.initWithTabBarSystemItem(UITabBarSystemItemContacts, tag: 0)
32
32
  @screen.tabBarItem.systemItem.should == comparison.systemItem
33
33
  @screen.tabBarItem.tag.should == comparison.tag
34
34
  @screen.tabBarItem.image.should == comparison.image
35
35
  end
36
36
 
37
- it "should set the tab bar item with a custom icon and title" do
38
- @screen.set_tab_bar_item title: "My Screen", icon: "list"
37
+ it "should set the tab bar item with a custom item and title" do
38
+ @screen.set_tab_bar_item title: "My Screen", item: "list"
39
39
 
40
- icon_image = UIImage.imageNamed("list")
41
- comparison = UITabBarItem.alloc.initWithTitle("My Screen", image: icon_image, tag: 0)
40
+ item_image = UIImage.imageNamed("list")
41
+ comparison = UITabBarItem.alloc.initWithTitle("My Screen", image: item_image, tag: 0)
42
42
 
43
43
  @screen.tabBarItem.systemItem.should == comparison.systemItem
44
44
  @screen.tabBarItem.tag.should == comparison.tag
45
45
  @screen.tabBarItem.image.should == comparison.image
46
46
  end
47
47
 
48
- it "should store debug mode" do
49
- HomeScreen.debug_mode = true
50
- HomeScreen.debug_mode.should == true
51
- end
52
-
53
48
  it "#modal? should be true" do
54
49
  @screen.modal?.should == true
55
50
  end
@@ -151,7 +146,7 @@ describe "screen properties" do
151
146
  describe "bar button behavior" do
152
147
  describe "system bar buttons" do
153
148
  before do
154
- @screen.set_nav_bar_right_button nil, action: :add_something, system_icon: UIBarButtonSystemItemAdd
149
+ @screen.set_nav_bar_button :right, title: nil, action: :add_something, system_item: UIBarButtonSystemItemAdd
155
150
  end
156
151
 
157
152
  it "has a right bar button item of the correct type" do
@@ -163,9 +158,19 @@ describe "screen properties" do
163
158
  end
164
159
  end
165
160
 
161
+ describe "bar button tint colors" do
162
+ before do
163
+ @screen.set_nav_bar_button :right, title: nil, action: :add_something, system_item: UIBarButtonSystemItemAdd, tint_color: UIColor.blueColor
164
+ end
165
+
166
+ it "sets the tint color" do
167
+ CGColorEqualToColor(@screen.navigationItem.rightBarButtonItem.tintColor, UIColor.blueColor).should == true
168
+ end
169
+ end
170
+
166
171
  describe 'titled bar buttons' do
167
172
  before do
168
- @screen.set_nav_bar_right_button "Save", action: :save_something, style: UIBarButtonItemStyleDone
173
+ @screen.set_nav_bar_button :right, title: "Save", action: :save_something, style: UIBarButtonItemStyleDone
169
174
  end
170
175
 
171
176
  it "has a right bar button item of the correct type" do
@@ -184,7 +189,7 @@ describe "screen properties" do
184
189
  describe 'image bar buttons' do
185
190
  before do
186
191
  @image = UIImage.alloc.init
187
- @screen.set_nav_bar_right_button @image, action: :save_something, style: UIBarButtonItemStyleDone
192
+ @screen.set_nav_bar_button :right, title: @image, action: :save_something, style: UIBarButtonItemStyleDone
188
193
  end
189
194
 
190
195
  it "has a right bar button item of the correct type" do
@@ -256,4 +261,3 @@ describe "screen with toolbar" do
256
261
  screen.navigationController.toolbarHidden?.should == false
257
262
  end
258
263
  end
259
-
@@ -0,0 +1,55 @@
1
+ describe "Searchable table spec" do
2
+ # Override controller to properly instantiate
3
+ def controller
4
+ @controller ||= begin
5
+ c = TableScreenSearchable.new
6
+ c.on_load
7
+ c
8
+ end
9
+ end
10
+
11
+ after do
12
+ @controller = nil
13
+ end
14
+
15
+ it "should show all 50 states" do
16
+ controller.tableView(controller.tableView, numberOfRowsInSection:0).should == 50
17
+ end
18
+
19
+ it "should allow searching for all the 'New' states" do
20
+ controller.searchDisplayController(controller, shouldReloadTableForSearchString:"New")
21
+ controller.tableView(controller.tableView, numberOfRowsInSection:0).should == 4
22
+ end
23
+
24
+ it "should allow ending searches" do
25
+ controller.searchDisplayController(controller, shouldReloadTableForSearchString:"North")
26
+ controller.tableView(controller.tableView, numberOfRowsInSection:0).should == 2
27
+ controller.searchDisplayControllerWillEndSearch(controller)
28
+ controller.tableView(controller.tableView, numberOfRowsInSection:0).should == 50
29
+ end
30
+
31
+ it "should expose the search_string variable and clear it properly" do
32
+ controller.searchDisplayController(controller, shouldReloadTableForSearchString:"North")
33
+
34
+ controller.search_string.should == "north"
35
+ controller.original_search_string.should == "North"
36
+
37
+ controller.searchDisplayControllerWillEndSearch(controller)
38
+
39
+ controller.search_string.should == false
40
+ controller.original_search_string.should == false
41
+ end
42
+
43
+ it "should call the start and stop searching callbacks properly" do
44
+ controller.will_begin_search_called.should == nil
45
+ controller.will_end_search_called.should == nil
46
+
47
+ controller.searchDisplayControllerWillBeginSearch(controller)
48
+ controller.searchDisplayController(controller, shouldReloadTableForSearchString:"North")
49
+ controller.will_begin_search_called.should == true
50
+
51
+ controller.searchDisplayControllerWillEndSearch(controller)
52
+ controller.will_end_search_called.should == true
53
+ end
54
+
55
+ end
@@ -6,7 +6,7 @@ describe "split screen in tab bar functionality" do
6
6
  @master_screen = HomeScreen.new nav_bar: true
7
7
  @detail_screen = BasicScreen.new nav_bar: true
8
8
 
9
- @split_screen = @app.create_split_screen @master_screen, @detail_screen, icon: "list", title: "Spec"
9
+ @split_screen = @app.create_split_screen @master_screen, @detail_screen, item: "list", title: "Spec"
10
10
  @tab = @app.open_tab_bar @split_screen, HomeScreen, BasicScreen
11
11
  end
12
12
 
@@ -49,15 +49,15 @@ describe "split screen in tab bar functionality" do
49
49
  it "should set the tab bar first viewController to the split screen" do
50
50
  @tab.viewControllers.first.should == @split_screen
51
51
  end
52
-
52
+
53
53
  it "should set the bar bar item for the split screen" do
54
54
  @split_screen.tabBarItem.is_a?(UITabBarItem).should == true
55
55
  end
56
-
57
- it "should set the tab bar icon of the split screen" do
56
+
57
+ it "should set the tab bar item of the split screen" do
58
58
  @split_screen.tabBarItem.image.is_a?(UIImage).should == true
59
59
  end
60
-
60
+
61
61
  it "should set the tab bar title of the split screen" do
62
62
  @split_screen.tabBarItem.title.is_a?(String).should == true
63
63
  @split_screen.tabBarItem.title.should == "Spec"
@@ -37,9 +37,9 @@ describe "split screen functionality" do
37
37
  end
38
38
 
39
39
  it "should set the title on both screens" do
40
- @master_screen.class.send(:get_title).should == "Master"
40
+ @master_screen.class.title.should == "Master"
41
41
  @master_screen.title.should == "Master"
42
- @detail_screen.class.send(:get_title).should == "Detail"
42
+ @detail_screen.class.title.should == "Detail"
43
43
  @detail_screen.title.should == "Detail"
44
44
  end
45
45
  end
@@ -57,9 +57,9 @@ describe "split screen with UIViewControllers with ScreenModule" do
57
57
  end
58
58
 
59
59
  it "should set the title on both screens" do
60
- @master_screen.class.send(:get_title).should == "Test Title"
60
+ @master_screen.class.title.should == "Test Title"
61
61
  @master_screen.title.should == "Test Title"
62
- @detail_screen.class.send(:get_title).should == "Detail"
62
+ @detail_screen.class.title.should == "Detail"
63
63
  @detail_screen.title.should == "Detail"
64
64
  end
65
65