Class: Scriptorium::Widget::ListWidget
- Inherits:
-
Scriptorium::Widget
- Object
- Scriptorium::Widget
- Scriptorium::Widget::ListWidget
- Includes:
- Contract
- Defined in:
- lib/scriptorium/widgets/widget.rb
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from Scriptorium::Widget
#config, #name, #path, #repo, #view
Instance Method Summary collapse
-
#define_invariants ⇒ Object
Invariants.
-
#initialize(repo, view) ⇒ ListWidget
constructor
A new instance of ListWidget.
-
#load_data ⇒ Object
Method to load the list data from the list.txt file.
Methods included from Contract
#assume, #check_invariants, enabled?, #invariant, #verify
Methods inherited from Scriptorium::Widget
#generate, #html_body, #html_card, #html_container, #load_config
Methods included from Helpers
#cf_time, #change_config, #clean_slugify, #copy_gem_asset_to_user, #copy_to_clipboard, #d4, #escape_html, #generate_missing_asset_svg, #get_asset_path, #get_from_clipboard, #getvars, #list_gem_assets, #make_dir, #make_tree, #need, #read_commented_file, #read_file, #see, #see_file, #slugify, #substitute, #system!, #view_dir, #write_file, #write_file!, #ymdhms
Methods included from Exceptions
Constructor Details
#initialize(repo, view) ⇒ ListWidget
Returns a new instance of ListWidget.
108 109 110 111 112 113 114 115 116 117 118 119 120 |
# File 'lib/scriptorium/widgets/widget.rb', line 108 def initialize(repo, view) assume { repo.is_a?(Scriptorium::Repo) } assume { view.is_a?(Scriptorium::View) } super(repo, view) @list = "#{@path}/list.txt" @data = load_data define_invariants verify { @list.include?("list.txt") } verify { @data.is_a?(Array) } check_invariants end |
Instance Method Details
#define_invariants ⇒ Object
Invariants
103 104 105 106 |
# File 'lib/scriptorium/widgets/widget.rb', line 103 def define_invariants invariant { @list.is_a?(String) && !@list.empty? } invariant { @data.is_a?(Array) } end |
#load_data ⇒ Object
Method to load the list data from the list.txt file
123 124 125 126 127 128 129 130 131 132 |
# File 'lib/scriptorium/widgets/widget.rb', line 123 def load_data check_invariants assume { @list.is_a?(String) && !@list.empty? } result = read_file(@list, lines: true, chomp: true).map(&:strip) verify { result.is_a?(Array) } check_invariants result end |