Class: Develry::Project

Inherits:
Object
  • Object
show all
Defined in:
lib/develry/project.rb,
lib/develry/project/initializer.rb,
lib/develry/project/initializer/rake.rb,
lib/develry/project/initializer/rspec.rb

Overview

The project develry supports

Defined Under Namespace

Classes: Initializer

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(root) ⇒ undefined

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Initialize object

Parameters:

  • root (Pathname)


122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
# File 'lib/develry/project.rb', line 122

def initialize(root)
  @root = root

  @shared_gemfile_path = @root.join(GEMFILE_NAME).freeze
  @default_config_path = @root.join(DEFAULT_CONFIG_DIR_NAME).freeze
  @lib_dir             = @root.join(LIB_DIRECTORY_NAME).freeze
  @spec_root           = @root.join(SPEC_DIRECTORY_NAME).freeze
  @file_pattern        = @lib_dir.join(RB_FILE_PATTERN).freeze
  @config_dir          = @default_config_path

  @reek      = Config::Reek.new(self)
  @rubocop   = Config::Rubocop.new(self)
  @flog      = Config::Flog.new(self)
  @yardstick = Config::Yardstick.new(self)
  @flay      = Config::Flay.new(self)
  @mutant    = Config::Mutant.new(self)
  @develry  = Config::Develry.new(self)

  @unit_test_timeout = @develry.unit_test_timeout
end

Instance Attribute Details

#config_dirPathname (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Return config directory

Returns:

  • (Pathname)


105
106
107
# File 'lib/develry/project.rb', line 105

def config_dir
  @config_dir
end

#default_config_pathPathname (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The default config path

Returns:

  • (Pathname)


77
78
79
# File 'lib/develry/project.rb', line 77

def default_config_path
  @default_config_path
end

#develryConfig::Develry (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The develry configuration

Returns:



55
56
57
# File 'lib/develry/project.rb', line 55

def develry
  @develry
end

#file_patternPathname (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The Ruby file pattern

Returns:

  • (Pathname)


91
92
93
# File 'lib/develry/project.rb', line 91

def file_pattern
  @file_pattern
end

#flayConfig::Flay (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The flay configuration

Returns:



41
42
43
# File 'lib/develry/project.rb', line 41

def flay
  @flay
end

#flogConfig::Flog (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The flog configuration

Returns:



27
28
29
# File 'lib/develry/project.rb', line 27

def flog
  @flog
end

#lib_dirPathname (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The lib directory

Returns:

  • (Pathname)


84
85
86
# File 'lib/develry/project.rb', line 84

def lib_dir
  @lib_dir
end

#mutantConfig::Mutant (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The mutant configuration

Returns:



48
49
50
# File 'lib/develry/project.rb', line 48

def mutant
  @mutant
end

#reekConfig::Reek (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The reek configuration

Returns:



13
14
15
# File 'lib/develry/project.rb', line 13

def reek
  @reek
end

#rootPathname (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Return project root

Returns:

  • (Pathname)


63
64
65
# File 'lib/develry/project.rb', line 63

def root
  @root
end

#rubocopConfig::Rubocop (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The rubocop configuration

Returns:



20
21
22
# File 'lib/develry/project.rb', line 20

def rubocop
  @rubocop
end

#shared_gemfile_pathPathname (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The shared gemfile path

Returns:

  • (Pathname)


70
71
72
# File 'lib/develry/project.rb', line 70

def shared_gemfile_path
  @shared_gemfile_path
end

#spec_rootPathname (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The spec root

Returns:

  • (Pathname)


98
99
100
# File 'lib/develry/project.rb', line 98

def spec_root
  @spec_root
end

#unit_test_timeoutNumeric (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The unit test timeout

Returns:

  • (Numeric)


112
113
114
# File 'lib/develry/project.rb', line 112

def unit_test_timeout
  @unit_test_timeout
end

#yardstickConfig::Yardstick (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The yardstick configuration

Returns:



34
35
36
# File 'lib/develry/project.rb', line 34

def yardstick
  @yardstick
end