WAAT 1.4.1 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Gemfile CHANGED
@@ -14,6 +14,7 @@ group :development do
14
14
  gem "cucumber", ">= 0"
15
15
  gem "jeweler", "~> 1.6.4"
16
16
  gem 'ffi', "1.0.7"
17
+ gem 'rjb'
17
18
  end
18
19
 
19
20
  gem "bundler", ">= 0"
@@ -31,7 +31,8 @@ For any other questions, comments, help, email Anand Bagmar @ abagmar@gmail.com
31
31
  == Latest version
32
32
 
33
33
  * <b>WAAT-Ruby v1.4.1 gem is available from http://rubygems.org</b>
34
- * <b>WAAT-Java v1.4 is available from the {WAAT-Java dist}[http://github.com/anandbagmar/WAAT/tree/master/dist] folder.</b>
34
+ * <b>WAAT-Ruby v1.5.0 gem is available from https://github.com/anandbagmar/WAAT-ruby/downloads</b>
35
+ * <b>WAAT-Java v1.5.0 is available from the {WAAT-Java dist}[http://github.com/anandbagmar/WAAT/tree/master/dist] folder.</b>
35
36
 
36
37
 
37
38
  == Platforms supported
@@ -43,4 +44,26 @@ For any other questions, comments, help, email Anand Bagmar @ abagmar@gmail.com
43
44
 
44
45
  == How to use WAAT-Ruby?
45
46
 
46
- See {this wiki page}[https://github.com/anandbagmar/WAAT-ruby/wiki/WAAT-Ruby-HttpSniffer] for step-by-step instructions on how to use WAAT-Ruby in your project.
47
+ See the {HttpSniffer}[https://github.com/anandbagmar/WAAT-ruby/wiki/WAAT-Ruby-HttpSniffer] or {JSSniffer}[https://github.com/anandbagmar/WAAT-ruby/wiki/WAAT-Ruby-JsSniffer] wiki page for step-by-step instructions on how to use WAAT-Ruby in your project.
48
+
49
+ == Changes in v1.5.0
50
+
51
+ Some APIs have changed between v1.4.0 and v1.5.0.
52
+
53
+ * **initailze_waat**: See method definition in {WAAT.rb}[https://github.com/anandbagmar/WAAT-ruby/blob/master/lib/WAAT.rb] for usage information
54
+ v1.4.0: initialize_waat() or initialize_waat(true)
55
+ where the boolean value was to specify the value for keep_loaded_file_in_memory
56
+ -
57
+ v1.5.0: initialize_waat now takes an optional hash.
58
+
59
+ * **verify_web_analytics_data**: See method definition in {WAAT.rb}[https://github.com/anandbagmar/WAAT-ruby/blob/master/lib/WAAT.rb] for usage information
60
+ v1.4.0: This method took a Array as an input
61
+ -
62
+ v1.5.0: This method now takes a Hash as an input, with symbols as keys.
63
+
64
+ * Default plugin: HttpSniffer
65
+ v1.4.0 only supported the http_sniffer plugin.
66
+ -
67
+ v1.5.0 supports http_sniffer and js_sniffer plugins (default: http_sniffer).
68
+ To override, initialize WAAT using the following command:
69
+ initialize_waat(:waat_plugin => "js_sniffer")
data/Rakefile CHANGED
@@ -30,6 +30,7 @@ Jeweler::Tasks.new do |gem|
30
30
  gem.description = %Q{An automated way of testing the Web Analytic tags reported to 'n' number of Web Analytic tools by your product. See here for more details: http://essenceoftesting.blogspot.com/search/label/waat}
31
31
  gem.email = "abagmar@gmail.com"
32
32
  gem.authors = ["Anand Bagmar"]
33
+ gem.files.exclude "dist/**/*"
33
34
 
34
35
  # dependencies defined in Gemfile
35
36
  # gem.add_dependency('rjb', ">= 1.3.2")
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.4.1
1
+ 1.5.0
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{WAAT}
8
- s.version = "1.4.1"
8
+ s.version = "1.5.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Anand Bagmar"]
12
- s.date = %q{2012-09-25}
12
+ s.date = %q{2012-11-05}
13
13
  s.description = %q{An automated way of testing the Web Analytic tags reported to 'n' number of Web Analytic tools by your product. See here for more details: http://essenceoftesting.blogspot.com/search/label/waat}
14
14
  s.email = %q{abagmar@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -39,7 +39,7 @@ Gem::Specification.new do |s|
39
39
  "lib/WAAT/docs/WAAT Readme.docx",
40
40
  "lib/WAAT/docs/WAAT Readme.html",
41
41
  "lib/WAAT/docs/WAAT Readme.pdf",
42
- "lib/WAAT/lib/WAAT_v1.4.jar",
42
+ "lib/WAAT/lib/WAAT_v1.5.0.jar",
43
43
  "lib/WAAT/lib/commons-lang-2.3.jar",
44
44
  "lib/WAAT/lib/httpSniffer/Linux/jpcap-0.7-1.i386.rpm",
45
45
  "lib/WAAT/lib/httpSniffer/Linux/jpcap-0.7.deb",
@@ -77,12 +77,14 @@ Gem::Specification.new do |s|
77
77
  s.add_development_dependency(%q<cucumber>, [">= 0"])
78
78
  s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
79
79
  s.add_development_dependency(%q<ffi>, ["= 1.0.7"])
80
+ s.add_development_dependency(%q<rjb>, [">= 0"])
80
81
  else
81
82
  s.add_dependency(%q<bundler>, [">= 0"])
82
83
  s.add_dependency(%q<selenium-webdriver>, [">= 2.0.0"])
83
84
  s.add_dependency(%q<cucumber>, [">= 0"])
84
85
  s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
85
86
  s.add_dependency(%q<ffi>, ["= 1.0.7"])
87
+ s.add_dependency(%q<rjb>, [">= 0"])
86
88
  end
87
89
  else
88
90
  s.add_dependency(%q<bundler>, [">= 0"])
@@ -90,6 +92,7 @@ Gem::Specification.new do |s|
90
92
  s.add_dependency(%q<cucumber>, [">= 0"])
91
93
  s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
92
94
  s.add_dependency(%q<ffi>, ["= 1.0.7"])
95
+ s.add_dependency(%q<rjb>, [">= 0"])
93
96
  end
94
97
  end
95
98
 
@@ -15,5 +15,8 @@
15
15
  Feature: Check if tags are reported when my blog page is opened
16
16
 
17
17
  @waat
18
- Scenario: Tags reported on loading blog page
19
- Given I navigate to Anand Bagmar's blog
18
+ Scenario: Tags reported on loading blog page - HttpSniffer
19
+ Given I navigate to Anand Bagmar's blog - HttpSniffer
20
+
21
+ Scenario: Tags reported on loading blog page - JsSniffer
22
+ Given I navigate to some page - JsSniffer
@@ -14,20 +14,19 @@
14
14
 
15
15
  require 'selenium-webdriver'
16
16
 
17
- Given /^I navigate to Anand Bagmar's blog$/ do
17
+ Given /^I navigate to Anand Bagmar's blog - HttpSniffer$/ do
18
18
  url_patterns = ["GET /ps/ifr?container=friendconnect&mid=0"]
19
19
  action_name = "OpenWAATArticleOnBlog_HttpSniffer"
20
20
  test_data_file_name = File.join(File.dirname(__FILE__), "..", "..", "sampleData", "TestData.xml")
21
21
 
22
- # initialize_waat()
23
- #
24
- # enable_web_analytics_testing
22
+ initialize_waat(:waat_plugin => "http_sniffer")
23
+ enable_web_analytics_testing
25
24
 
26
25
  url = "http://essenceoftesting.blogspot.com"
27
26
  @driver = Selenium::WebDriver.for :firefox
28
27
  @driver.get url
29
28
 
30
- params = [:test_data_file_name=> test_data_file_name, :action_name => action_name, :url_patterns => url_patterns, :minimum_number_of_packets => 1]
29
+ params = {:test_data_file_name=> test_data_file_name, :action_name => action_name, :url_patterns => url_patterns, :minimum_number_of_packets => 1}
31
30
  result = verify_web_analytics_data(params)
32
31
 
33
32
  puts "->#{result.status}"
@@ -37,5 +36,35 @@ Given /^I navigate to Anand Bagmar's blog$/ do
37
36
  puts "->\t#{err}"
38
37
  end
39
38
 
40
- # disable_web_analytics_testing
41
- end
39
+ disable_web_analytics_testing
40
+ end
41
+
42
+ Given /^I navigate to some page - JsSniffer$/ do
43
+ base_url = "https://www.mirena.com/en/privacy_statement_user.php"
44
+
45
+ test_data_file_name = File.join(File.dirname(__FILE__), "..", "..", "sampleData", "TestData.xml")
46
+ action_name = "OpenAMirenaSecureSite_JsSniffer"
47
+
48
+ JS_FOR_MIRENA_SITE = "window.WAAT_URL=\"\";window.WebTrends.prototype.dcsTag=function(){if(document.cookie.indexOf(\"WTLOPTOUT=\")!=-1){return}var WT=this.WT;var DCS=this.DCS;var DCSext=this.DCSext;var i18n=this.i18n;var P=\"http\"+(window.location.protocol.indexOf('https:')==0?'s':'')+\"://\"+this.domain+(this.dcsid==\"\"?'':'/'+this.dcsid)+\"/dcs.gif?\";if(i18n){WT.dep=\"\"}for(var N in DCS){if(DCS[N]&&(typeof DCS[N]!=\"function\")){P+=this.dcsA(N,DCS[N])}}for(N in WT){if(WT[N]&&(typeof WT[N]!=\"function\")){P+=this.dcsA(\"WT.\"+N,WT[N])}}for(N in DCSext){if(DCSext[N]&&(typeof DCSext[N]!=\"function\")){if(i18n){WT.dep=(WT.dep.length==0)?N:(WT.dep+\";\"+N)}P+=this.dcsA(N,DCSext[N])}}if(i18n&&(WT.dep.length>0)){P+=this.dcsA(\"WT.dep\",WT.dep)}if(P.length>2048&&navigator.userAgent.indexOf('MSIE')>=0){P=P.substring(0,2040)+\"&WT.tu=1\"}this.dcsCreateImage(P);window.WAAT_URL=P;this.WT.ad=\"\"};_tag.dcsCustom=function(){}; _tag.DCS.dcscfg=\"1\"; _tag.dcsCollect();return window.WAAT_URL"
49
+
50
+ initialize_waat(:waat_plugin => "js_sniffer")
51
+
52
+ @driver = Selenium::WebDriver.for :firefox
53
+ @driver.get base_url
54
+
55
+ extracted_url = extract_url_from_javascript(JS_FOR_MIRENA_SITE);
56
+
57
+ params = {:test_data_file_name=> test_data_file_name, :action_name => action_name, :url_patterns => extracted_url}
58
+ result = verify_web_analytics_data(params)
59
+
60
+ puts "->#{result.status}"
61
+ assert (result.status=="FAIL"), "Incorrect Verification Status. Expected: 'FAIL', Actual: #{result.status}"
62
+ assert (result.list_of_errors.size==14), "Incorrect number of errors. Expected: '14', Actual: #{result.list_of_errors.size}"
63
+ result.list_of_errors.each do |err|
64
+ puts "->\t#{err}"
65
+ end
66
+ end
67
+
68
+ def extract_url_from_javascript(javascript)
69
+ @driver.execute_script(javascript)
70
+ end
@@ -16,19 +16,28 @@ Before do
16
16
  puts "Generic before hook"
17
17
  end
18
18
 
19
- Before ('@waat') do
20
- puts "*** Before hook for WAAT ***"
21
- initialize_waat()
22
- enable_web_analytics_testing
23
- end
19
+ #Before ('@waat') do
20
+ # puts "*** Before hook for WAAT ***"
21
+
22
+ # If you want to use http_sniffer
23
+ # initialize_waat(:waat_plugin => "http_sniffer")
24
+ # enable_web_analytics_testing
25
+
26
+ # OR
27
+
28
+ # If you want to use js_sniffer
29
+ # initialize_waat(:waat_plugin => "js_sniffer")
30
+ #end
24
31
 
25
32
  After do
26
33
  puts "Generic after hook"
27
34
  @driver.quit
28
35
  end
29
36
 
30
- After ('@waat') do
31
- puts "*** After hook for WAAT ***"
32
- disable_web_analytics_testing
33
- end
37
+ #After ('@waat') do
38
+ # puts "*** After hook for WAAT ***"
39
+
40
+ # If you want to use http_sniffer
41
+ # disable_web_analytics_testing
42
+ #end
34
43
 
@@ -39,33 +39,42 @@ module WAAT
39
39
  # This method initializes 'WAAT-Ruby'
40
40
  #
41
41
  # === Args
42
- # *keep_loaded_file_in_memory*: Default: true
43
- # This means the loaded test data file will be kept in memory till the tests are running.
42
+ # This takes a hash as an input with the following possible name/value pairs
43
+
44
+ # {
45
+ # *:keep_loaded_file_in_memory* => Default: true,
46
+ # *:waat_plugin* => Default: "http_sniffer",
47
+ # *:input_file_type* => Default: "xml", (Currently the only supported file type)
48
+ # *:log4j_properties_absolute_file_path => Default: File.join(File.dirname(__FILE__), "WAAT", "resources", "log4j.properties")}
49
+
50
+ # keep_loaded_file_in_memory: This means the loaded test data file will be kept in memory till the tests are running.
51
+ # waat_plugin: http_sniffer or js_sniffer
44
52
  #
45
53
  # === Examples:
46
54
  #
47
- # * initialize_waat => This will use the default value for keep_loaded_file_in_memory
48
- # * initialize_waat(true) => Same as initialize_waat
49
- # * initialize_waat(false) => This will unload the test data file after the Web Analytic tags verification is done
55
+ # * initialize_waat => This will use the default value for keep_loaded_file_in_memory, and will use the http_sniffer
56
+ # * initialize_waat(:keep_loaded_file_in_memory => true) => Uses http_sniffer by default
57
+ # * initialize_waat(:keep_loaded_file_in_memory => false, :waat_plugin => "js_sniffer") => This will unload the test data file after the Web Analytic tags verification is done AND uses js_sniffer as the web analytic plugin
50
58
  #
51
59
  # === Corresponding WAAT-Java API
52
60
  # getInstance(WebAnalyticTool, InputFileType, keepLoadedFileInMemory, log4jPropertiesFilePath)::
53
61
  # This method initializes WAAT-Java.
54
- # Unlike WAAT-Java, WAAT-Ruby supports only the http_sniffer mechanism for doing Web Analytics testing.
62
+ # Unlike WAAT-Java, WAAT-Ruby supports the http_sniffer & js_sniffer mechanism for doing Web Analytics testing.
55
63
  # Also, WAAT-Ruby supports specification of the input test data in XML format only.
56
64
  #
57
65
  #
58
- def initialize_waat(keep_loaded_file_in_memory = true)
66
+ def initialize_waat(init_params={})
59
67
  logger = Logger.new(STDOUT)
60
68
  logger.level = Logger::INFO
61
69
  logger.info("Initializing WAAT")
62
70
  load_java_classes
63
- engine_instance(keep_loaded_file_in_memory)
71
+ engine_instance(init_params)
64
72
  end
65
73
 
66
74
  #
67
75
  # === Synopsis
68
76
  # This method enables Web Analytic testing for all subsequent tests till it is explicitly disabled
77
+ # This is applicable ONLY WHEN USING HTTP_SNIFFER
69
78
  #
70
79
  # === Corresponding WAAT-Java API
71
80
  # enableWebAnalyticsTesting::
@@ -80,6 +89,7 @@ module WAAT
80
89
  #
81
90
  # === Synopsis
82
91
  # This method disables Web Analytic testing for all subsequent tests till it is explicitly enabled again
92
+ # This is applicable ONLY WHEN USING HTTP_SNIFFER
83
93
  #
84
94
  # === Corresponding WAAT-Java API
85
95
  # disableWebAnalyticsTesting::
@@ -110,6 +120,7 @@ module WAAT
110
120
  #
111
121
  # *:minimum_number_of_packets*:
112
122
  # The minimum number of "filtered" packets to capture based on the url_patterns provided
123
+ # *This is applicable ONLY WHEN USING HTTP_SNIFFER*
113
124
  #
114
125
  # === Examples:
115
126
  #
@@ -126,10 +137,21 @@ module WAAT
126
137
  # When this method is called, the packet capturing is started on all the network interfaces on the machine where the tests are running.
127
138
  #
128
139
  def verify_web_analytics_data(params)
129
- logger.info("Verify Web Analytics Data")
140
+ logger.info("Verify Web Analytics Data with params: #{params.inspect}")
130
141
  logger.info("\tTest Data File Name: #{params[:test_data_file_name]}")
131
142
  logger.info("\tAction Name: #{params[:action_name]}")
132
- java_result = @engine_instance.verifyWebAnalyticsData(params[:test_data_file_name], params[:action_name], params[:url_patterns], params[:minimum_number_of_packets])
143
+
144
+ params = symbolize_keys(params)
145
+ if(@waat_plugin_type.nil?)
146
+ logger.error("WAAT plugin not initialized. Have you invoked the initialize_waat method?")
147
+ elsif(@waat_plugin_type.upcase=="HTTP_SNIFFER")
148
+ logger.info("Verifying web analytics data for: #{params.inspect}")
149
+ java_result = @engine_instance.verifyWebAnalyticsData(params[:test_data_file_name], params[:action_name], params[:url_patterns], params[:minimum_number_of_packets])
150
+ else
151
+ logger.info("Verifying web analytics data for: #{params.inspect}")
152
+ java_result = @engine_instance.verifyWebAnalyticsData(params[:test_data_file_name], params[:action_name], params[:url_patterns])
153
+ end
154
+
133
155
  Result.new(java_result)
134
156
  end
135
157
 
@@ -140,9 +162,19 @@ module WAAT
140
162
  @logger
141
163
  end
142
164
 
143
- def engine_instance(keep_loaded_file_in_memory = true)
144
- log4j_properties_absolute_file_path = File.join(File.dirname(__FILE__), "WAAT", "resources", "log4j.properties")
145
- @engine_instance ||= controller.getInstance(web_analytic_tool("http_sniffer"), input_file_type("xml"), keep_loaded_file_in_memory, log4j_properties_absolute_file_path)
165
+ def engine_instance(init_params={})
166
+ waat_defaults = {:keep_loaded_file_in_memory => true,
167
+ :waat_plugin => "http_sniffer",
168
+ :input_file_type => "xml",
169
+ :log4j_properties_absolute_file_path => File.join(File.dirname(__FILE__), "WAAT", "resources", "log4j.properties")}
170
+
171
+ init_params = waat_defaults.merge(symbolize_keys(init_params))
172
+ logger.info("Initializing WAAT with following params: #{init_params.inspect}")
173
+ @engine_instance ||= controller.getInstance(
174
+ web_analytic_tool(init_params[:waat_plugin]),
175
+ input_file_type(init_params[:input_file_type]),
176
+ init_params[:keep_loaded_file_in_memory],
177
+ init_params[:log4j_properties_absolute_file_path])
146
178
  end
147
179
 
148
180
  def controller
@@ -170,19 +202,26 @@ module WAAT
170
202
  Rjb::load(classpath = waat_file_list,[])
171
203
  end
172
204
 
173
- def proxy_from_java_enum(java_enum, web_analytic_tool)
205
+ def proxy_from_java_enum(java_enum, java_enum_value)
174
206
  java_enum.values.each do |each_value|
175
- return each_value if each_value.name==web_analytic_tool.upcase
207
+ return each_value if each_value.name==java_enum_value.upcase
176
208
  end
177
209
  end
178
210
 
179
- def web_analytic_tool(web_analytic_tool)
180
- proxy_from_java_enum(web_analytic_tool_reference, web_analytic_tool)
211
+ def web_analytic_tool(waat_plugin)
212
+ @waat_plugin_type = waat_plugin
213
+ proxy_from_java_enum(web_analytic_tool_reference, waat_plugin)
181
214
  end
182
215
 
183
216
  def input_file_type(input_file_type)
184
217
  proxy_from_java_enum(input_file_type_reference, input_file_type)
185
218
  end
186
219
 
220
+ def symbolize_keys(hash)
221
+ hash.keys.each do |key|
222
+ hash[(key.to_sym rescue key) || key ] = hash.delete(key)
223
+ end
224
+ hash
225
+ end
187
226
  end
188
227
  World(WAAT)
@@ -48,9 +48,9 @@
48
48
  -->
49
49
 
50
50
  <Sections>
51
- <Section actionName="OpenUpcomingPage_OmnitureDebugger_Selenium"
52
- numberOfEventsTriggered="1"
53
- tagList="s.pageName = 'upcoming:index'||
51
+ <Section actionName="OpenUpcomingPage_OmnitureDebugger_Selenium"
52
+ numberOfEventsTriggered="1"
53
+ tagList="s.pageName = 'upcoming:index'||
54
54
  s.eVar23 = 'upcoming:index'||
55
55
  s.heir1 = 'upcoming'||
56
56
  s.heir2 = 'index'||
@@ -64,23 +64,29 @@
64
64
  s.eVar9 = 'all'||
65
65
  s.events = 'event2'||"/>
66
66
 
67
- <Section actionName="OpenUpcomingPage_OmnitureDebugger_WebDriver"
68
- numberOfEventsTriggered="1"
69
- tagList="pageName=upcoming:index||
67
+ <Section actionName="OpenUpcomingPage_OmnitureDebugger_WebDriver"
68
+ numberOfEventsTriggered="1"
69
+ tagList="pageName=upcoming:index||
70
70
  cc=USD||
71
71
  ch=upcoming||
72
72
  events=event2||"/>
73
73
 
74
- <Section actionName="OpenUpcomingPage_HttpSniffer"
75
- numberOfEventsTriggered="1"
76
- tagList="pageName=upcoming:index||
74
+ <Section actionName="OpenUpcomingPage_HttpSniffer"
75
+ numberOfEventsTriggered="1"
76
+ tagList="pageName=upcoming:index||
77
77
  cc=USD||
78
78
  ch=upcoming||
79
79
  events=event2||"/>
80
80
 
81
- <Section actionName="OpenWAATArticleOnBlog_HttpSniffer"
82
- numberOfEventsTriggered="1"
83
- tagList="caller=http://essenceoftesting.blogspot.com/2011/01/my-article-on-future-of-test-automation.html||
81
+ <Section actionName="OpenWAATArticleOnBlog_HttpSniffer"
82
+ numberOfEventsTriggered="1"
83
+ tagList="caller=http://essenceoftesting.blogspot.com/2011/01/my-article-on-future-of-test-automation.html||
84
84
  container=friendconnect||
85
85
  parent=http://essenceoftesting.blogspot.com/||"/>
86
+
87
+ <Section actionName="OpenAMirenaSecureSite_JsSniffer"
88
+ numberOfEventsTriggered="1"
89
+ tagList="dcssip=www.mirena.com||
90
+ dcsuri=/en/privacy_statement_user.php||"/>
91
+
86
92
  </Sections>
metadata CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 1
7
- - 4
8
- - 1
9
- version: 1.4.1
7
+ - 5
8
+ - 0
9
+ version: 1.5.0
10
10
  platform: ruby
11
11
  authors:
12
12
  - Anand Bagmar
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2012-09-25 00:00:00 +05:30
17
+ date: 2012-11-05 00:00:00 +05:30
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -83,6 +83,18 @@ dependencies:
83
83
  - 7
84
84
  version: 1.0.7
85
85
  requirement: *id005
86
+ - !ruby/object:Gem::Dependency
87
+ prerelease: false
88
+ type: :development
89
+ name: rjb
90
+ version_requirements: &id006 !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ segments:
95
+ - 0
96
+ version: "0"
97
+ requirement: *id006
86
98
  description: "An automated way of testing the Web Analytic tags reported to 'n' number of Web Analytic tools by your product. See here for more details: http://essenceoftesting.blogspot.com/search/label/waat"
87
99
  email: abagmar@gmail.com
88
100
  executables: []
@@ -115,7 +127,7 @@ files:
115
127
  - lib/WAAT/docs/WAAT Readme.docx
116
128
  - lib/WAAT/docs/WAAT Readme.html
117
129
  - lib/WAAT/docs/WAAT Readme.pdf
118
- - lib/WAAT/lib/WAAT_v1.4.jar
130
+ - lib/WAAT/lib/WAAT_v1.5.0.jar
119
131
  - lib/WAAT/lib/commons-lang-2.3.jar
120
132
  - lib/WAAT/lib/httpSniffer/Linux/jpcap-0.7-1.i386.rpm
121
133
  - lib/WAAT/lib/httpSniffer/Linux/jpcap-0.7.deb
Binary file