Module: Ruboto::Util::Verify

Included in:
Build, XMLElement
Defined in:
lib/ruboto/util/verify.rb

Instance Method Summary collapse

Instance Method Details

#save_manifestObject



18
19
20
# File 'lib/ruboto/util/verify.rb', line 18

def save_manifest
  File.open("AndroidManifest.xml", 'w') {|f| verify_manifest.document.write(f, 4)}
end

#save_ruboto_configObject



81
82
83
# File 'lib/ruboto/util/verify.rb', line 81

def save_ruboto_config
  File.open("ruboto.yml", 'w') {|f| YAML.dump verify_ruboto_config}
end

#save_test_manifestObject



28
29
30
# File 'lib/ruboto/util/verify.rb', line 28

def save_test_manifest
  File.open("test/AndroidManifest.xml", 'w') {|f| verify_test_manifest.document.write(f, 4)}
end

#verify_activityObject



37
38
39
40
# File 'lib/ruboto/util/verify.rb', line 37

def verify_activity
  verify_manifest
  @activity ||= @manifest.elements['application/activity'].attribute('android:name').value
end

#verify_apiObject



69
70
71
# File 'lib/ruboto/util/verify.rb', line 69

def verify_api
  Ruboto::API.api
end

#verify_manifestObject

Verify the presence of important components



12
13
14
15
16
# File 'lib/ruboto/util/verify.rb', line 12

def verify_manifest
  abort "cannot find your AndroidManifest.xml to extract info from it. Make sure you're in the root directory of your app" unless
  File.exists? 'AndroidManifest.xml'
  @manifest ||= REXML::Document.new(File.read('AndroidManifest.xml')).root
end

#verify_min_sdkObject



49
50
51
52
53
54
# File 'lib/ruboto/util/verify.rb', line 49

def verify_min_sdk
  verify_sdk_versions
  @min_sdk ||= @uses_sdk.attribute('android:minSdkVersion').value
  abort "you must specify a minimum sdk level in the manifest (e.g., <uses-sdk android:minSdkVersion='3' android:targetSdkVersion='8' />)" unless @min_sdk
  @min_sdk
end

#verify_packageObject



32
33
34
35
# File 'lib/ruboto/util/verify.rb', line 32

def verify_package
  verify_manifest
  @package ||= @manifest.attribute('package').value
end

#verify_ruboto_configObject



73
74
75
76
77
78
79
# File 'lib/ruboto/util/verify.rb', line 73

def verify_ruboto_config
  if File.exists? 'ruboto.yml'
    @ruboto_config ||= YAML::load_file('ruboto.yml')
  else
    @ruboto_config = {}
  end
end

#verify_sdk_versionsObject



42
43
44
45
46
47
# File 'lib/ruboto/util/verify.rb', line 42

def verify_sdk_versions
  verify_manifest
  @uses_sdk ||= @manifest.elements["uses-sdk"]
  abort "you must specify your sdk level in the manifest (e.g., <uses-sdk android:minSdkVersion='3' android:targetSdkVersion='8' />)" unless @uses_sdk
  @uses_sdk
end

#verify_stringsObject



63
64
65
66
67
# File 'lib/ruboto/util/verify.rb', line 63

def verify_strings
  abort "cannot find your strings.xml to extract info from it. Make sure you're in the root directory of your app" unless
  File.exists? 'res/values/strings.xml'
  @strings ||= REXML::Document.new(File.read('res/values/strings.xml'))
end

#verify_target_sdkObject



56
57
58
59
60
61
# File 'lib/ruboto/util/verify.rb', line 56

def verify_target_sdk
  verify_sdk_versions
  @target_sdk ||= @uses_sdk.attribute('android:targetSdkVersion').value
  abort "you must specify a target sdk level in the manifest (e.g., <uses-sdk android:minSdkVersion='3' android:targetSdkVersion='8' />)" unless @target_sdk
  @target_sdk
end

#verify_test_manifestObject



22
23
24
25
26
# File 'lib/ruboto/util/verify.rb', line 22

def verify_test_manifest
  abort "cannot find your test AndroidManifest.xml to extract info from it. Make sure you're in the root directory of your app" \
      unless File.exists? 'test/AndroidManifest.xml'
  @manifest ||= REXML::Document.new(File.read('test/AndroidManifest.xml')).root
end