eitil 2.0.3 → 2.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +0 -1
- data/lib/eitil/all.rb +0 -1
- data/lib/eitil/railtie.rb +1 -1
- data/lib/eitil/version.rb +1 -1
- data/spec/dummy_app/app/models/user.rb +0 -25
- data/spec/spec_helper.rb +0 -2
- metadata +2 -30
- data/eitil_integrate/README.md +0 -19
- data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/drop_data.rb +0 -63
- data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/format_data.rb +0 -30
- data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/initialize.rb +0 -22
- data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/present_data.rb +0 -31
- data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/reduce_data.rb +0 -18
- data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/sum_data.rb +0 -84
- data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum.rb +0 -10
- data/eitil_integrate/lib/eitil_integrate/application_exporter/default_export.rb +0 -44
- data/eitil_integrate/lib/eitil_integrate/application_exporter/helpers.rb +0 -50
- data/eitil_integrate/lib/eitil_integrate/application_exporter/infos.rb +0 -20
- data/eitil_integrate/lib/eitil_integrate/application_exporter/initialize.rb +0 -32
- data/eitil_integrate/lib/eitil_integrate/application_exporter/log_state.rb +0 -81
- data/eitil_integrate/lib/eitil_integrate/application_exporter/lookups.rb +0 -50
- data/eitil_integrate/lib/eitil_integrate/application_exporter/selectors.rb +0 -58
- data/eitil_integrate/lib/eitil_integrate/application_exporter/setters.rb +0 -27
- data/eitil_integrate/lib/eitil_integrate/application_exporter/store_file.rb +0 -34
- data/eitil_integrate/lib/eitil_integrate/application_exporter/style_cells.rb +0 -104
- data/eitil_integrate/lib/eitil_integrate/application_exporter/validations.rb +0 -28
- data/eitil_integrate/lib/eitil_integrate/application_exporter/write_cells.rb +0 -78
- data/eitil_integrate/lib/eitil_integrate/application_exporter/write_messages.rb +0 -18
- data/eitil_integrate/lib/eitil_integrate/application_exporter.rb +0 -23
- data/eitil_integrate/lib/eitil_integrate/railtie.rb +0 -7
- data/eitil_integrate/lib/eitil_integrate.rb +0 -4
- data/spec/eitil_wrapper/callbacks/helper_methods_spec.rb +0 -34
- data/spec/eitil_wrapper/jobs/single_method_job_spec.rb +0 -72
- data/spec/eitil_wrapper/routes/extended_resources_spec.rb +0 -16
- data/spec/eitil_wrapper/scopes/default_scopes_spec.rb +0 -154
@@ -1,50 +0,0 @@
|
|
1
|
-
|
2
|
-
# require "eitil_integrate/application_exporter/lookups"
|
3
|
-
|
4
|
-
require "eitil_integrate/application_exporter/initialize"
|
5
|
-
require "eitil_support/directory"
|
6
|
-
|
7
|
-
module EitilIntegrate::RubyXL
|
8
|
-
class ApplicationExporter
|
9
|
-
|
10
|
-
class << self
|
11
|
-
|
12
|
-
def exporter_paths
|
13
|
-
EitilSupport::Directory.files('app/views/exporters/exporters').select { |path| path.end_with? '_exporter.rb' }
|
14
|
-
end
|
15
|
-
|
16
|
-
def exporter_names
|
17
|
-
exporter_paths.map { |path| path.split('/').last.remove('.rb').camelcase }
|
18
|
-
end
|
19
|
-
|
20
|
-
def exporter_constants
|
21
|
-
exporter_names.map &:constantize
|
22
|
-
end
|
23
|
-
|
24
|
-
def exporter_infos
|
25
|
-
exporter_constants.map { |_c| { "#{_c.to_s.remove("Exporter")}": _c.info || {} } }.inject &:merge
|
26
|
-
end
|
27
|
-
|
28
|
-
def exporter_info(exporter, info)
|
29
|
-
exporter_infos[exporter]&.dig(info)
|
30
|
-
end
|
31
|
-
|
32
|
-
# returns the exporter_infos, without the datatypes – for taxonomy purpuses, the field
|
33
|
-
# names are often sufficient
|
34
|
-
def exporter_taxonomy
|
35
|
-
parameter_fields = exporter_infos.transform_values { |v| v.select { |k,v| k == :required || k == :optional } }
|
36
|
-
|
37
|
-
parameter_fields.transform_values do |setting_collection|
|
38
|
-
setting_collection.transform_values do |setting|
|
39
|
-
setting.map { |key| key.is_a?(Hash) ? key.keys : key }.flatten
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
def exporter_params
|
45
|
-
exporter_infos.transform_values { |v| [v[:required], v[:optional]].flatten.compact }
|
46
|
-
end
|
47
|
-
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
@@ -1,58 +0,0 @@
|
|
1
|
-
|
2
|
-
# require "eitil_integrate/application_exporter/selectors"
|
3
|
-
|
4
|
-
require "eitil_integrate/application_exporter/initialize"
|
5
|
-
|
6
|
-
module EitilIntegrate::RubyXL
|
7
|
-
class ApplicationExporter
|
8
|
-
|
9
|
-
private
|
10
|
-
|
11
|
-
# rows
|
12
|
-
|
13
|
-
def current_row
|
14
|
-
x
|
15
|
-
end
|
16
|
-
|
17
|
-
def previous_row
|
18
|
-
x - 1
|
19
|
-
end
|
20
|
-
|
21
|
-
def next_row
|
22
|
-
x + 1
|
23
|
-
end
|
24
|
-
|
25
|
-
def first_row
|
26
|
-
0
|
27
|
-
end
|
28
|
-
|
29
|
-
# columns
|
30
|
-
|
31
|
-
def current_column
|
32
|
-
y
|
33
|
-
end
|
34
|
-
|
35
|
-
def previous_column
|
36
|
-
y - 1
|
37
|
-
end
|
38
|
-
|
39
|
-
def next_column
|
40
|
-
y + 1
|
41
|
-
end
|
42
|
-
|
43
|
-
def first_column
|
44
|
-
0
|
45
|
-
end
|
46
|
-
|
47
|
-
# RubyXL object selectors for rows. For columns I have not found a RubyXL object,
|
48
|
-
# or a practical way of accessing the cells of a column, yet.
|
49
|
-
|
50
|
-
def method_missing(_method, *args, &block)
|
51
|
-
m = _method.to_s
|
52
|
-
super _method unless m.include?('row') and m.ends_with?('_object')
|
53
|
-
super _method unless respond_to? m.delete_suffix!('_object'), true
|
54
|
-
sheet[send(m)]
|
55
|
-
end
|
56
|
-
|
57
|
-
end
|
58
|
-
end
|
@@ -1,27 +0,0 @@
|
|
1
|
-
|
2
|
-
# require "eitil_integrate/application_exporter/setters"
|
3
|
-
|
4
|
-
require "eitil_integrate/application_exporter/initialize"
|
5
|
-
|
6
|
-
module EitilIntegrate::RubyXL
|
7
|
-
class ApplicationExporter
|
8
|
-
|
9
|
-
# The date setter methods allow Exporters to receive dates as strings, which are
|
10
|
-
# required to prevent serialization errors in perform_later background jobs.
|
11
|
-
|
12
|
-
private
|
13
|
-
|
14
|
-
def set_start_date
|
15
|
-
@start_date.is_a?(Date) ? @start_date : Date.parse(@start_date) if @start_date
|
16
|
-
end
|
17
|
-
|
18
|
-
def set_end_date
|
19
|
-
@end_date.is_a?(Date) ? @end_date : Date.parse(@end_date) if @end_date
|
20
|
-
end
|
21
|
-
|
22
|
-
def set_date_range
|
23
|
-
@start_date..@end_date if @start_date && @end_date
|
24
|
-
end
|
25
|
-
|
26
|
-
end
|
27
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
|
2
|
-
# require "eitil_integrate/application_exporter/store_file"
|
3
|
-
|
4
|
-
require "eitil_integrate/application_exporter/initialize"
|
5
|
-
require "eitil_core/setters/set_ivars"
|
6
|
-
|
7
|
-
module EitilIntegrate::RubyXL
|
8
|
-
class ApplicationExporter
|
9
|
-
|
10
|
-
attr_accessor :storage_path
|
11
|
-
|
12
|
-
private
|
13
|
-
|
14
|
-
def save_file
|
15
|
-
set_ivars :storage_path
|
16
|
-
save_book
|
17
|
-
run_after_save_effects
|
18
|
-
@storage_path
|
19
|
-
end
|
20
|
-
|
21
|
-
def set_storage_path
|
22
|
-
"#{Rails.root}/data/#{self.class.name.snakecase}_#{DateTime.now.prettify}.xlsx"
|
23
|
-
end
|
24
|
-
|
25
|
-
def save_book
|
26
|
-
book.write @storage_path
|
27
|
-
end
|
28
|
-
|
29
|
-
def run_after_save_effects
|
30
|
-
# nil fallback for if the application class (which inherits from ApplicationExporter) has no method #run_after_save_effects
|
31
|
-
end
|
32
|
-
|
33
|
-
end
|
34
|
-
end
|
@@ -1,104 +0,0 @@
|
|
1
|
-
|
2
|
-
# require "eitil_integrate/application_exporter/style_cells"
|
3
|
-
|
4
|
-
require "eitil_integrate/application_exporter/initialize"
|
5
|
-
|
6
|
-
module EitilIntegrate::RubyXL
|
7
|
-
class ApplicationExporter
|
8
|
-
|
9
|
-
COLOURS = { white: 'ffffff', black: '000000', red: 'FF0000', blue: '0000FF', green: '00FF00', yellow: 'FFFF00',
|
10
|
-
cyan: '00FFFF', magenta: 'FF00FF', dark_grey: '464646', grey: '7E7E7E', light_grey: 'C1C1C1',
|
11
|
-
eitje_blue: '0496FF' }
|
12
|
-
|
13
|
-
private
|
14
|
-
|
15
|
-
def style_file
|
16
|
-
style_general
|
17
|
-
style_custom
|
18
|
-
end
|
19
|
-
|
20
|
-
def style_general
|
21
|
-
style_row_height
|
22
|
-
style_column_width
|
23
|
-
style_first_row_bold
|
24
|
-
style_first_column_bold
|
25
|
-
style_first_column_width
|
26
|
-
end
|
27
|
-
|
28
|
-
def style_custom
|
29
|
-
%i[
|
30
|
-
style_first_x_columns_width
|
31
|
-
style_x_columns_width
|
32
|
-
style_first_x_rows_height
|
33
|
-
style_x_rows_height
|
34
|
-
].each { |_method| safe_send _method }
|
35
|
-
end
|
36
|
-
|
37
|
-
# multi rows
|
38
|
-
|
39
|
-
def style_row_height(height = 15)
|
40
|
-
base_style_x_rows_height row_indices, height
|
41
|
-
end
|
42
|
-
|
43
|
-
def style_first_x_rows_height(n_rows, height)
|
44
|
-
base_style_x_rows_height (0...n_rows), height
|
45
|
-
end
|
46
|
-
|
47
|
-
def style_x_rows_height(row_indices = [], height)
|
48
|
-
row_indices.each { |i| @sheet.change_row_height(i, height) }
|
49
|
-
end
|
50
|
-
|
51
|
-
alias_method :base_style_x_rows_height, :style_x_rows_height
|
52
|
-
|
53
|
-
# multi columns
|
54
|
-
|
55
|
-
def style_column_width(width = 40)
|
56
|
-
base_style_x_columns_width column_indices, width
|
57
|
-
end
|
58
|
-
|
59
|
-
def style_first_x_columns_width(n_columns, width)
|
60
|
-
base_style_x_columns_width (0...n_columns), width
|
61
|
-
end
|
62
|
-
|
63
|
-
def style_first_column_width(width = 35)
|
64
|
-
style_first_x_columns_width 1, width
|
65
|
-
end
|
66
|
-
|
67
|
-
alias_method :base_style_first_x_columns_width, :style_first_x_columns_width
|
68
|
-
|
69
|
-
def style_x_columns_width(column_indices = [], width)
|
70
|
-
column_indices.each { |i| @sheet.change_column_width(i, width) }
|
71
|
-
end
|
72
|
-
|
73
|
-
alias_method :base_style_x_columns_width, :style_x_columns_width
|
74
|
-
|
75
|
-
# single row
|
76
|
-
|
77
|
-
def style_first_row_bold
|
78
|
-
style_row_bold first_row
|
79
|
-
end
|
80
|
-
|
81
|
-
def style_row_bold(row)
|
82
|
-
@sheet.change_row_bold(row, true)
|
83
|
-
end
|
84
|
-
|
85
|
-
def style_row_font_colour(row, colour)
|
86
|
-
@sheet.change_row_font_color row, COLOURS[colour.to_sym]
|
87
|
-
end
|
88
|
-
|
89
|
-
def style_row_background_colour(row, colour)
|
90
|
-
sheet[row].cells.each { |cell| cell.change_fill COLOURS[colour.to_sym] }
|
91
|
-
end
|
92
|
-
|
93
|
-
# single column
|
94
|
-
|
95
|
-
def style_first_column_bold
|
96
|
-
style_column_bold first_column
|
97
|
-
end
|
98
|
-
|
99
|
-
def style_column_bold(column)
|
100
|
-
@sheet.change_column_bold(column, true)
|
101
|
-
end
|
102
|
-
|
103
|
-
end
|
104
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
|
2
|
-
# require "eitil_integrate/application_exporter/validations"
|
3
|
-
|
4
|
-
require "eitil_integrate/application_exporter/initialize"
|
5
|
-
require "eitil_core/errors/raise_error"
|
6
|
-
|
7
|
-
module EitilIntegrate::RubyXL
|
8
|
-
class ApplicationExporter
|
9
|
-
|
10
|
-
def validate_args_presence(*args)
|
11
|
-
args.each do |arg|
|
12
|
-
unless instance_variable_get "@#{arg}"
|
13
|
-
raise_error 'ExportArgumentsNotSetError', 'Set all required arguments. (Be aware that nil values will fail the test.)'
|
14
|
-
end
|
15
|
-
end
|
16
|
-
true
|
17
|
-
end
|
18
|
-
|
19
|
-
def validate_args_value
|
20
|
-
# Empty holder to prevent NoMethodError in DefaultExporter#export.
|
21
|
-
end
|
22
|
-
|
23
|
-
def validate_data
|
24
|
-
# Empty holder to prevent NoMethodError in DefaultExporter#export.
|
25
|
-
end
|
26
|
-
|
27
|
-
end
|
28
|
-
end
|
@@ -1,78 +0,0 @@
|
|
1
|
-
|
2
|
-
# require "eitil_integrate/application_exporter/write_cells"
|
3
|
-
|
4
|
-
require "eitil_integrate/application_exporter/initialize"
|
5
|
-
|
6
|
-
module EitilIntegrate::RubyXL
|
7
|
-
class ApplicationExporter
|
8
|
-
|
9
|
-
def new_row(row_hash)
|
10
|
-
row_hash.each { |x_axis, title| @sheet.add_cell(x, x_axis.to_s.to_i, title) }
|
11
|
-
@x += 1
|
12
|
-
end
|
13
|
-
|
14
|
-
def empty_row
|
15
|
-
@x += 1
|
16
|
-
end
|
17
|
-
|
18
|
-
def empty_rows(n_rows)
|
19
|
-
@x += n_rows
|
20
|
-
end
|
21
|
-
|
22
|
-
def new_column(column_hash)
|
23
|
-
column_hash.each { |y_axis, title| @sheet.add_cell(y_axis.to_s.to_i, y, title) }
|
24
|
-
@y += 1
|
25
|
-
end
|
26
|
-
|
27
|
-
def empty_column
|
28
|
-
@y += 1
|
29
|
-
end
|
30
|
-
|
31
|
-
def empty_columns(n_columns)
|
32
|
-
@y += n_columns
|
33
|
-
end
|
34
|
-
|
35
|
-
def rows
|
36
|
-
@sheet.sheet_data.rows
|
37
|
-
end
|
38
|
-
|
39
|
-
def row_indices
|
40
|
-
(0...rows.count).to_a
|
41
|
-
end
|
42
|
-
|
43
|
-
def columns
|
44
|
-
# RubyXl does not seem to be purposed around columns, but merely handle rows properly.
|
45
|
-
end
|
46
|
-
|
47
|
-
def column_indices
|
48
|
-
n_rows = rows.map { |r| r&.cells&.count }.compact.max #temporary hack
|
49
|
-
(0...n_rows).to_a
|
50
|
-
end
|
51
|
-
|
52
|
-
def array_to_row(array)
|
53
|
-
new_row array_to_indexed_hash(array)
|
54
|
-
end
|
55
|
-
|
56
|
-
def row_values(row_index)
|
57
|
-
rows.dig(row_index).cells.map &:value
|
58
|
-
end
|
59
|
-
|
60
|
-
def column_values(column_index)
|
61
|
-
rows.map { |row| row&.cells&.dig(column_index)&.value }
|
62
|
-
end
|
63
|
-
|
64
|
-
def all_column_values
|
65
|
-
column_indices.map { |i| { i => column_values(i) } }.inject &:merge
|
66
|
-
end
|
67
|
-
|
68
|
-
def all_row_values
|
69
|
-
row_indices.map { |i| { i => row_values(i) } }.inject &:merge
|
70
|
-
end
|
71
|
-
|
72
|
-
def sum_row
|
73
|
-
new_row EitilIntegrate::RubyXL::AutoSum.perform(all_column_values)
|
74
|
-
style_row_bold previous_row
|
75
|
-
end
|
76
|
-
|
77
|
-
end
|
78
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
|
2
|
-
# require "eitil_integrate/application_exporter/write_messages"
|
3
|
-
|
4
|
-
require "eitil_integrate/application_exporter/initialize"
|
5
|
-
|
6
|
-
module EitilIntegrate::RubyXL
|
7
|
-
class ApplicationExporter
|
8
|
-
|
9
|
-
def fill_messages
|
10
|
-
# nil fallback for if the exporter class has no method #fill_messages
|
11
|
-
end
|
12
|
-
|
13
|
-
def write_message(message)
|
14
|
-
new_row({ '0': message })
|
15
|
-
end
|
16
|
-
|
17
|
-
end
|
18
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
# require "eitil_integrate/application_exporter"
|
2
|
-
|
3
|
-
# base file, which is required by all others
|
4
|
-
require_relative "application_exporter/initialize"
|
5
|
-
|
6
|
-
# temp file, with methods that should, at some point, moved elsewhere
|
7
|
-
require_relative "application_exporter/helpers"
|
8
|
-
|
9
|
-
# files split by theme and purpose, feel free to cherry-pick
|
10
|
-
require_relative "application_exporter/default_export"
|
11
|
-
require_relative "application_exporter/validations"
|
12
|
-
require_relative "application_exporter/write_cells"
|
13
|
-
require_relative "application_exporter/write_messages"
|
14
|
-
require_relative "application_exporter/style_cells"
|
15
|
-
require_relative "application_exporter/store_file"
|
16
|
-
require_relative "application_exporter/setters"
|
17
|
-
require_relative "application_exporter/selectors"
|
18
|
-
require_relative "application_exporter/lookups"
|
19
|
-
require_relative "application_exporter/infos"
|
20
|
-
require_relative "application_exporter/log_state"
|
21
|
-
|
22
|
-
# the AutoSum module, which is a seperately functioning module (service)
|
23
|
-
require_relative "application_exporter/auto_sum"
|
@@ -1,34 +0,0 @@
|
|
1
|
-
|
2
|
-
RSpec.describe "EitilWrapper::Callbacks" do
|
3
|
-
|
4
|
-
let(:callbacks) { User.instance_methods(false) }
|
5
|
-
|
6
|
-
context "for columns of datatype: boolean" do
|
7
|
-
|
8
|
-
it "should create the callback .{column_name}_became_true" do
|
9
|
-
expect(callbacks).to include(:confirmed_became_true)
|
10
|
-
end
|
11
|
-
|
12
|
-
it "should create the callback .{column_name}_becomes_true" do
|
13
|
-
expect(callbacks).to include(:confirmed_becomes_true)
|
14
|
-
end
|
15
|
-
|
16
|
-
it "should create the callback .{column_name}_to_true (works for both become and became)" do
|
17
|
-
expect(callbacks).to include(:confirmed_to_true)
|
18
|
-
end
|
19
|
-
|
20
|
-
it "should create the callback .{column_name}_became_false" do
|
21
|
-
expect(callbacks).to include(:confirmed_became_false)
|
22
|
-
end
|
23
|
-
|
24
|
-
it "should create the callback .{column_name}_becomes_false" do
|
25
|
-
expect(callbacks).to include(:confirmed_becomes_false)
|
26
|
-
end
|
27
|
-
|
28
|
-
it "should create the callback .{column_name}_to_false (works for both become and became)" do
|
29
|
-
expect(callbacks).to include(:confirmed_to_false)
|
30
|
-
end
|
31
|
-
|
32
|
-
end
|
33
|
-
|
34
|
-
end
|
@@ -1,72 +0,0 @@
|
|
1
|
-
|
2
|
-
RSpec.describe "EitilWrapper::Jobs" do
|
3
|
-
|
4
|
-
let(:user) { User.create(first_name: "Donald", last_name: "Duck") }
|
5
|
-
|
6
|
-
it "should create a new method, if the new_job (perform_later) is used for a singleton method" do
|
7
|
-
expect(User.methods).to include(:this_is_a_singleton_method_job)
|
8
|
-
end
|
9
|
-
|
10
|
-
it "should create a new method, if the new_job (perform_later) is used for an instance method" do
|
11
|
-
expect(User.instance_methods).to include(:this_is_an_instance_method_job)
|
12
|
-
end
|
13
|
-
|
14
|
-
it "should create a new method, if the new_job_now (perform_now) is used for a singleton method" do
|
15
|
-
expect(User.methods).to include(:this_is_a_singleton_method_job_now)
|
16
|
-
end
|
17
|
-
|
18
|
-
it "should create a new method, if the new_job_now (perform_now) is used for an instance method" do
|
19
|
-
expect(User.instance_methods).to include(:this_is_an_instance_method_job_now)
|
20
|
-
end
|
21
|
-
|
22
|
-
it "should allow us to perform the created singleton perform_later method" do
|
23
|
-
begin
|
24
|
-
User.this_is_a_singleton_method_job
|
25
|
-
status = 'passed'
|
26
|
-
rescue
|
27
|
-
status = 'failed'
|
28
|
-
end
|
29
|
-
expect(status).to eq 'passed'
|
30
|
-
end
|
31
|
-
|
32
|
-
it "should allow us to perform the created instance perform_later method" do
|
33
|
-
begin
|
34
|
-
user.this_is_an_instance_method_job
|
35
|
-
status = 'passed'
|
36
|
-
rescue
|
37
|
-
status = 'failed'
|
38
|
-
end
|
39
|
-
expect(status).to eq 'passed'
|
40
|
-
end
|
41
|
-
|
42
|
-
it "should allow us to perform the created singleton perform_now method" do
|
43
|
-
begin
|
44
|
-
User.this_is_a_singleton_method_job_now
|
45
|
-
status = 'passed'
|
46
|
-
rescue
|
47
|
-
status = 'failed'
|
48
|
-
end
|
49
|
-
expect(status).to eq 'passed'
|
50
|
-
end
|
51
|
-
|
52
|
-
it "should allow us to perform the created instance perform_now method" do
|
53
|
-
begin
|
54
|
-
user.this_is_an_instance_method_job_now
|
55
|
-
status = 'passed'
|
56
|
-
rescue
|
57
|
-
status = 'failed'
|
58
|
-
end
|
59
|
-
expect(status).to eq 'passed'
|
60
|
-
end
|
61
|
-
|
62
|
-
it "should accept positional arguments" do
|
63
|
-
return_value = User.this_is_a_singleton_method_job_now("positional_argument")
|
64
|
-
expect(return_value).to eq "positional_argument"
|
65
|
-
end
|
66
|
-
|
67
|
-
it "should accept keyword arguments " do
|
68
|
-
return_value = User.this_is_a_singleton_method_job_now(keyword_value: "keyword_argument")
|
69
|
-
expect(return_value).to eq "keyword_argument"
|
70
|
-
end
|
71
|
-
|
72
|
-
end
|
@@ -1,16 +0,0 @@
|
|
1
|
-
|
2
|
-
# NOT YET IMPLEMENTED, SINCE THIS PART OF EITIL IS NOT YET IN USE.
|
3
|
-
# FIRST HOOK UP INTO EITJE_API, SINCE THAT MAY CHANGE THE FUNCTIONALITY.
|
4
|
-
|
5
|
-
# RSpec.describe "EitilWrapper::Routes" do
|
6
|
-
|
7
|
-
# before do
|
8
|
-
# @pretty_routes = `cd spec/dummy_app && rails routes`
|
9
|
-
# @routes = @pretty_routes.gsub(/[ \t]+/, ' ')
|
10
|
-
# end
|
11
|
-
|
12
|
-
# it "should " do
|
13
|
-
# expect(@routes).to include('POST /users(.:format) users#create')
|
14
|
-
# end
|
15
|
-
|
16
|
-
# end
|