gridinit-jmeter 0.0.9 → 0.1.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.
@@ -0,0 +1,17 @@
1
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
+ require 'gridinit-jmeter'
3
+
4
+ test do
5
+ threads 1 do
6
+ ldap_ext 'ldap_ext sample',
7
+ { 'test' => 'sbind',
8
+ 'user_dn' => 'user_dn',
9
+ 'user_pw' => 'user_password',
10
+ 'servername' => 'your_ldap_server',
11
+ 'secure' => true,
12
+ 'port' => 636
13
+ }
14
+ end
15
+ view_results 'tree'
16
+ end.jmx
17
+
@@ -0,0 +1,15 @@
1
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
+ require 'gridinit-jmeter'
3
+
4
+ # this is an example using the Gridinit test data API
5
+
6
+ ENV['TESTDATA'] ='http://prod.gridinit.com:8080'
7
+
8
+ test do
9
+ threads 1 do
10
+
11
+ visit 'data', ENV['TESTDATA'] + '/ad48720631cd2f24/SRANDMEMBER' do extract 'url', '(http://.+?)"'; end
12
+
13
+ visit 'Google Search', 'http://google.com?url=${url}'
14
+ end
15
+ end.jmx
@@ -104,6 +104,8 @@ module Gridinit
104
104
  self.instance_exec(&block) if block
105
105
  end
106
106
 
107
+ alias_method :get, :visit
108
+
107
109
  def submit(name="HTTP Request", url="", params={}, &block)
108
110
  params[:method] = 'POST'
109
111
  node = Gridinit::Jmeter::HttpSampler.new(name, url, params)
@@ -206,6 +208,12 @@ module Gridinit
206
208
  last_node_from(caller) << node.doc.children << hash_tree
207
209
  self.instance_exec(&block) if block
208
210
  end
211
+
212
+ def ldap_ext(name="LDAPExtSampler", params={}, &block)
213
+ node = Gridinit::Jmeter::LDAPExtSampler.new(name, params)
214
+ last_node_from(caller) << node.doc.children << hash_tree
215
+ self.instance_exec(&block) if block
216
+ end
209
217
 
210
218
  private
211
219
 
@@ -0,0 +1,40 @@
1
+ module Gridinit
2
+ module Jmeter
3
+
4
+ class LDAPExtSampler
5
+ attr_accessor :doc
6
+ def initialize(name, params={})
7
+ @doc = Nokogiri::XML(<<-EOF.strip_heredoc)
8
+
9
+ <LDAPExtSampler guiclass="LdapExtTestSamplerGui" testclass="LDAPExtSampler" testname="#{name}" enabled="true">
10
+ <stringProp name="servername"></stringProp>
11
+ <stringProp name="port">389</stringProp>
12
+ <stringProp name="rootdn"></stringProp>
13
+ <stringProp name="scope">2</stringProp>
14
+ <stringProp name="countlimit"></stringProp>
15
+ <stringProp name="timelimit"></stringProp>
16
+ <stringProp name="attributes"></stringProp>
17
+ <stringProp name="return_object">false</stringProp>
18
+ <stringProp name="deref_aliases">false</stringProp>
19
+ <stringProp name="connection_timeout"></stringProp>
20
+ <stringProp name="parseflag">false</stringProp>
21
+ <stringProp name="secure">false</stringProp>
22
+ <stringProp name="user_dn"></stringProp>
23
+ <stringProp name="user_pw"></stringProp>
24
+ <stringProp name="comparedn"></stringProp>
25
+ <stringProp name="comparefilt"></stringProp>
26
+ <stringProp name="modddn"></stringProp>
27
+ <stringProp name="newdn"></stringProp>
28
+ <stringProp name="test">bind</stringProp>
29
+ </LDAPExtSampler>
30
+ EOF
31
+ params.each do |name, value|
32
+ node = @doc.children.xpath("//*[contains(@name,\"#{name.to_s}\")]")
33
+ node.first.content = value unless node.empty?
34
+ end
35
+ end
36
+
37
+ end
38
+
39
+ end
40
+ end
@@ -1,5 +1,5 @@
1
1
  module Gridinit
2
2
  module Jmeter
3
- VERSION = "0.0.9"
3
+ VERSION = "0.1.0"
4
4
  end
5
5
  end
@@ -28,3 +28,4 @@ require 'gridinit-jmeter/view_results_full_visualizer'
28
28
  require 'gridinit-jmeter/table_visualizer'
29
29
  require 'gridinit-jmeter/graph_visualizer'
30
30
  require 'gridinit-jmeter/summary_report'
31
+ require 'gridinit-jmeter/ldap_ext_sampler'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gridinit-jmeter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-01-19 00:00:00.000000000 Z
12
+ date: 2013-01-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rest-client
@@ -69,11 +69,13 @@ files:
69
69
  - examples/basic_google.rb
70
70
  - examples/basic_grid.rb
71
71
  - examples/basic_header.rb
72
+ - examples/basic_ldap_ext.rb
72
73
  - examples/basic_post.rb
73
74
  - examples/basic_proxy.rb
74
75
  - examples/basic_query_params.rb
75
76
  - examples/basic_run.rb
76
77
  - examples/basic_stdout.rb
78
+ - examples/basic_test_data.rb
77
79
  - examples/basic_testplan.jmx
78
80
  - examples/basic_testplan.rb
79
81
  - examples/basic_think_time.rb
@@ -90,6 +92,7 @@ files:
90
92
  - lib/gridinit-jmeter/header_manager.rb
91
93
  - lib/gridinit-jmeter/http_sampler.rb
92
94
  - lib/gridinit-jmeter/if_controller.rb
95
+ - lib/gridinit-jmeter/ldap_ext_sampler.rb
93
96
  - lib/gridinit-jmeter/logger-colors.rb
94
97
  - lib/gridinit-jmeter/once_only.rb
95
98
  - lib/gridinit-jmeter/regex_extractor.rb