ddtframework 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ NDMyZjY0MGE3YzIyNTJkMWM0ZDU3OGU1M2ZmMTc3OGE4N2UyZTk5Ng==
5
+ data.tar.gz: !binary |-
6
+ NDMxMjcyMjliMzIxMmVlNDBmYzQ1OTM5OTYyMzJjNmUxNjhmMDk3MQ==
7
+ !binary "U0hBNTEy":
8
+ metadata.gz: !binary |-
9
+ NzI2YjllMmI3NDA2MThjM2RhMTRlOWRmNDA3ODc1MTQ2M2RjYzg2OTMzYWFm
10
+ YmQxMjQ3ZWI0YzdhNTJmY2M3NDY3ODk3ZTE2YjhhMDRkZGM1YmQwZDBiNzEw
11
+ M2Y0M2Q1ZWQyMmJkYTEwMmQ4Nzk0YzhkMmU3MTAwMjQwN2I1MjE=
12
+ data.tar.gz: !binary |-
13
+ NDIyMDUxMDhiOTBhYjQ4YzAzYzNjM2RjODdkNDk5YjBmMzczMDVhYTIyMTE3
14
+ NWYyZTZhZjQxM2E3OWRlZGE5OGFiZTg0YzAwMWY0NjhjZTNlZTUyNGRiNDI5
15
+ MWY5MjAzMDA4ZGY4NmM4MDNiOGUyNzZmOTg5YjViMTkzYWJiMWI=
@@ -0,0 +1,40 @@
1
+ require 'fileutils'
2
+ require 'test/unit'
3
+ require 'DDTFramework/Create_folder_structure'
4
+ require 'DDTFramework/Create_action_classes'
5
+ require 'DDTFramework/Create_class_for_browser_open'
6
+ require 'DDTFramework/Create_main_class'
7
+ require 'DDTFramework/Create_flow_class'
8
+
9
+ class DDTFramework < Test::Unit::TestCase
10
+ def test_main
11
+ actionClass = Array.new
12
+ actionClassNumber = 1
13
+
14
+ print "What is the project name: "
15
+ project = gets().chomp
16
+ project = project.capitalize
17
+ print "What is the site name: "
18
+ site = gets().chomp
19
+ site = site.downcase
20
+
21
+ Create_folder_structure.new.main(project)
22
+
23
+ while(true)
24
+ print "What is the action class name: <Enter ZERO to exit> "
25
+ actionClass[actionClassNumber] = gets().chomp
26
+ if(actionClass[actionClassNumber] == '0')
27
+ break
28
+ end
29
+ actionClass[actionClassNumber] = actionClass[actionClassNumber].capitalize
30
+ Create_action_classes.new.main(actionClass[actionClassNumber], project)
31
+ actionClassNumber = actionClassNumber + 1
32
+ end
33
+ Create_class_for_browser_open.new.main(project)
34
+ Create_main_class.new.main(project, site)
35
+ Create_flow_class.new.main(project, site, actionClass, actionClassNumber)
36
+ end
37
+ end
38
+
39
+
40
+
@@ -0,0 +1,14 @@
1
+ class Create_action_classes
2
+ def main(actionClassName, project)
3
+ fileName = 'C:\Ruby\Projects\\' + project + '\\' + actionClassName + '.rb'
4
+ f3 = File.open(fileName, 'w')
5
+ f3.puts('class '+ actionClassName)
6
+ f3.puts("\tdef initialize(browser)")
7
+ f3.puts("\t\t@browser = browser")
8
+ f3.puts("\tend")
9
+ f3.puts("\tdef main()")
10
+ f3.puts(" ")
11
+ f3.puts("\tend")
12
+ f3.puts('end')
13
+ end
14
+ end
@@ -0,0 +1,31 @@
1
+ class Create_class_for_browser_open
2
+ def main(project)
3
+ fileName = 'C:\Ruby\Projects\\' + project + '\\' + 'CBrowser.rb'
4
+ f3 = File.open(fileName, 'w')
5
+ f3.puts "require \'watir-webdriver\'"
6
+
7
+ f3.puts "class CBrowser"
8
+ f3.puts "\t# Creating the Browser"
9
+ f3.puts "\t# Also navigate to the site, given by the siteName"
10
+ f3.puts "\t# Return the browser to request"
11
+ f3.puts "\t# By default it will open FireFox"
12
+ f3.puts "\tdef createFFBrowser(siteName)"
13
+ f3.puts "\t\tbrowser = Watir::Browser.new"
14
+ f3.puts "\t\tbrowser.goto (siteName)"
15
+ f3.puts "\t\treturn browser"
16
+ f3.puts "\tend"
17
+ f3.puts "\t# :IE - Will open Internet Explorer Browser"
18
+ f3.puts "\tdef createIEBrowser(siteName)"
19
+ f3.puts "\t\tbrowser = Watir::Browser.new:IE"
20
+ f3.puts "\t\tbrowser.goto (siteName)"
21
+ f3.puts "\t\treturn browser"
22
+ f3.puts "\tend"
23
+ f3.puts "\t# :Chrome - Will open Chormoe Browser"
24
+ f3.puts "\tdef createCHBrowser(siteName)"
25
+ f3.puts "\t\tbrowser = Watir::Browser.new:Chrome"
26
+ f3.puts "\t\tbrowser.goto (siteName)"
27
+ f3.puts "\t\treturn browser"
28
+ f3.puts "\tend"
29
+ f3.puts "end"
30
+ end
31
+ end
@@ -0,0 +1,18 @@
1
+ class Create_flow_class
2
+ def main(project, site, actionClass, actionClassNumber)
3
+ fileName = 'C:\Ruby\Projects\\' + project + '\\' + 'Flow.rb'
4
+ f3 = File.open(fileName, 'w')
5
+ 1.upto(actionClassNumber - 1).each {|i| f3.puts "require \'.\\" + actionClass[i] + "\'"}
6
+ f3.puts("")
7
+ f3.puts("")
8
+ f3.puts('class Flow')
9
+ f3.puts("\tdef initialize(browser, site)")
10
+ f3.puts("\t\t@browser = browser")
11
+ f3.puts("\t\t@site = site")
12
+ f3.puts("\tend")
13
+ f3.puts("\tdef main()")
14
+ 1.upto(actionClassNumber - 1).each {|i| f3.puts("\t\t" + actionClass[i] + ".new(@browser).main()")}
15
+ f3.puts("\tend")
16
+ f3.puts('end')
17
+ end
18
+ end
@@ -0,0 +1,37 @@
1
+ require 'win32ole'
2
+
3
+ class Create_folder_structure
4
+ def main(name)
5
+ excel = WIN32OLE::new('excel.Application')
6
+ excel.visible = true
7
+ workbook = excel.Workbooks.Add
8
+ wbWin = workbook.Worksheets('Sheet1')
9
+
10
+ wbWin.cells(1,1).value = 'Matt'
11
+ wbWin.cells(2,1).value = 'Tony'
12
+ wbWin.cells(3,1).value = 'Link'
13
+ wbWin.cells(4,1).value = 'Pete'
14
+ wbWin.cells(1,2).value = 'Java'
15
+ wbWin.cells(2,2).value = 'Ruby'
16
+ wbWin.cells(3,2).value = 'C#'
17
+ wbWin.cells(4,2).value = 'Python'
18
+ wbWin.cells(1,3).value = 'Both'
19
+ wbWin.cells(2,3).value = 'Both'
20
+ wbWin.cells(3,3).value = 'Both'
21
+ wbWin.cells(4,3).value = 'Both'
22
+ wbWin.cells(1,4).value = '1.9.2'
23
+ wbWin.cells(2,4).value = '1.9.2'
24
+ wbWin.cells(3,4).value = '1.9.2'
25
+ wbWin.cells(4,4).value = '1.9.2'
26
+
27
+ FileUtils.mkdir_p 'C:\Ruby\Input\\' + name
28
+
29
+ workbook.saveAs('C:\Ruby\Input\\' + name + '\input.xlsx')
30
+ workbook.close
31
+ excel.quit
32
+
33
+ FileUtils.mkdir_p 'C:\Ruby\Output\\' + name
34
+ FileUtils.mkdir_p 'C:\Ruby\Projects\\' + name
35
+ end
36
+ end
37
+
@@ -0,0 +1,42 @@
1
+ class Create_main_class
2
+ def main(project, site)
3
+ fileName = 'C:\Ruby\Projects\\' + project + '\\' + 'Main.rb'
4
+ f3 = File.open(fileName, 'w')
5
+ f3.puts ("require \'test/unit\'")
6
+ f3.puts ("require \'.\\Flow\'")
7
+ f3.puts ("require \'.\\CBrowser\'")
8
+ f3.puts ("require \'win32ole\'")
9
+ f3.puts ("")
10
+ f3.puts ("")
11
+ f3.puts ("class Main" + " < Test::Unit::TestCase")
12
+ f3.puts("\tdef test_" + project)
13
+
14
+ f3.puts("\t\t#Sample website has been created.")
15
+ f3.puts("\t\t#Sample excel sheet has been created for testing and understanding. This file will be in the input folder.")
16
+ f3.puts("\t\t#Sample excel sheet will be saved in the output folder.")
17
+ f3.puts("")
18
+
19
+ f3.puts("\t\tinputFileName = \'C:\\Ruby\\Input\\" + project + "\\input.xlsx\'")
20
+ f3.puts("\t\toutputFileName = \'C:\\Ruby\\Output\\" + project + "\\output.xlsx\'")
21
+ f3.puts("\t\texcel = WIN32OLE::new(\'excel.Application\')")
22
+ f3.puts("\t\texcel.visible = true")
23
+ f3.puts("\t\tworkbook = excel.Workbooks.Open(inputFileName)")
24
+ f3.puts("\t\twbWin = workbook.Worksheets(\'Sheet1\')")
25
+ f3.puts("\t\twbWin.Select")
26
+
27
+ f3.puts("")
28
+ f3.puts("\t\tsite = \'" + site + "\'")
29
+ f3.puts("\t\tbrowser = CBrowser.new.createFFBrowser(site)")
30
+ f3.puts("\t\tFlow.new(browser, site).main()")
31
+ f3.puts("\t\tsleep 2")
32
+ f3.puts("\t\tbrowser.close")
33
+ f3.puts("")
34
+
35
+ f3.puts("\t\tworkbook.saveAs(outputFileName)")
36
+ f3.puts("\t\tworkbook.close")
37
+ f3.puts("\t\texcel.quit")
38
+
39
+ f3.puts("\tend")
40
+ f3.puts("end")
41
+ end
42
+ end
Binary file
metadata ADDED
@@ -0,0 +1,50 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ddtframework
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Matt Cow
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-09-24 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: A simple and Easy DDT Automation Framework
14
+ email: watir.webdriver@gmail.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - readme.docx
20
+ - lib/DDTFramework.rb
21
+ - lib/DDTFramework/Create_action_classes.rb
22
+ - lib/DDTFramework/Create_class_for_browser_open.rb
23
+ - lib/DDTFramework/Create_flow_class.rb
24
+ - lib/DDTFramework/Create_folder_structure.rb
25
+ - lib/DDTFramework/Create_main_class.rb
26
+ homepage: http://rubygems.org/gems/DDTFramework
27
+ licenses:
28
+ - MIT
29
+ metadata: {}
30
+ post_install_message:
31
+ rdoc_options: []
32
+ require_paths:
33
+ - lib
34
+ required_ruby_version: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ! '>='
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ required_rubygems_version: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ requirements: []
45
+ rubyforge_project:
46
+ rubygems_version: 2.0.7
47
+ signing_key:
48
+ specification_version: 4
49
+ summary: New DDT Automation Framework
50
+ test_files: []