ddtframework 0.0.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,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: []