Class: BudgetColumnObject
- Inherits:
-
Object
- Object
- BudgetColumnObject
- Includes:
- DataFactory, Foundry, Navigation, StringFactory
- Defined in:
- lib/kuality-coeus/data_objects/maintenance/budget_column.rb
Instance Attribute Summary collapse
-
#has_lookup ⇒ Object
Returns the value of attribute has_lookup.
-
#lookup_argument ⇒ Object
Returns the value of attribute lookup_argument.
-
#lookup_return ⇒ Object
Returns the value of attribute lookup_return.
-
#name ⇒ Object
Returns the value of attribute name.
Instance Method Summary collapse
- #create ⇒ Object
- #edit(opts = {}) ⇒ Object
- #exists? ⇒ Boolean
-
#initialize(browser, opts = {}) ⇒ BudgetColumnObject
constructor
A new instance of BudgetColumnObject.
- #view(in_class = false) ⇒ Object
Methods included from Navigation
#doc_search, #fill_out, #fill_out_item, #on_document?, #on_page?, #open_document, #window_cleanup
Methods included from Utilities
#get, #make_role, #make_user, #random_percentage, #set, #snake_case
Constructor Details
#initialize(browser, opts = {}) ⇒ BudgetColumnObject
Returns a new instance of BudgetColumnObject.
10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/kuality-coeus/data_objects/maintenance/budget_column.rb', line 10 def initialize(browser, opts={}) @browser = browser defaults = { name: '::random::', has_lookup: :set, lookup_argument: '::random::', lookup_return: '::random::' } (defaults.merge(opts)) end |
Instance Attribute Details
#has_lookup ⇒ Object
Returns the value of attribute has_lookup.
8 9 10 |
# File 'lib/kuality-coeus/data_objects/maintenance/budget_column.rb', line 8 def has_lookup @has_lookup end |
#lookup_argument ⇒ Object
Returns the value of attribute lookup_argument.
8 9 10 |
# File 'lib/kuality-coeus/data_objects/maintenance/budget_column.rb', line 8 def lookup_argument @lookup_argument end |
#lookup_return ⇒ Object
Returns the value of attribute lookup_return.
8 9 10 |
# File 'lib/kuality-coeus/data_objects/maintenance/budget_column.rb', line 8 def lookup_return @lookup_return end |
#name ⇒ Object
Returns the value of attribute name.
8 9 10 |
# File 'lib/kuality-coeus/data_objects/maintenance/budget_column.rb', line 8 def name @name end |
Instance Method Details
#create ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/kuality-coeus/data_objects/maintenance/budget_column.rb', line 23 def create if exists? edit has_lookup: @has_lookup, lookup_argument: @lookup_argument, lookup_return: @lookup_return else on(BudgetColumnsToAlterLookup).create on BudgetColumnToAlter do |create| create.description.set random_alphanums # Note: can't use fill_out here because field # selection can't be in a random order. create.name.pick! @name create.has_lookup.fit @has_lookup create.lookup_argument.pick! @lookup_argument create.lookup_return.pick! @lookup_return create.blanket_approve end end end |
#edit(opts = {}) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/kuality-coeus/data_objects/maintenance/budget_column.rb', line 50 def edit opts={} view(true) on BudgetColumnToAlter do |edit| edit.description.set random_alphanums edit.has_lookup.fit opts[:has_lookup] edit.lookup_argument.pick! opts[:lookup_argument] edit.lookup_return.pick! opts[:lookup_return] edit.blanket_approve end opts end |
#exists? ⇒ Boolean
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/kuality-coeus/data_objects/maintenance/budget_column.rb', line 62 def exists? # TODO: This will need to be made more robust at some point because not every user will have permissions # To keep it simple for now, just be sure this code is run very early in scenarios. $users.admin.log_in if $users.current_user==nil visit Maintenance do |page| if Login.new(@browser).username.present? UserObject.new(@browser).log_in end page.budget_editable_columns end on BudgetColumnsToAlterLookup do |look| look.column_name.select @name look.search begin if look.results_table.present? return true else return false end rescue return false end end end |
#view(in_class = false) ⇒ Object
42 43 44 45 46 47 48 |
# File 'lib/kuality-coeus/data_objects/maintenance/budget_column.rb', line 42 def view(in_class=false) if in_class # add navigation code here, because we're using this method outside # of the class methods end on(BudgetColumnsToAlterLookup).edit_first_item end |