app_prism 0.1.0 → 0.1.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 525d7da92f4aab94761e2535a8c79d5b06f262b8b2fe0edbd7922d37379301bf
4
- data.tar.gz: 6e3a286be4e5f092049bb69ece8633dff0969a922a06e99cf8b7b101c481e87b
3
+ metadata.gz: 592b0847efe68ed50816e27f22b095c627830dbba7321a85a9d88bc14a29cba7
4
+ data.tar.gz: 264173d456563fad75ed58c72be58973a4561ba1ade9d5445de3697a7ad159e3
5
5
  SHA512:
6
- metadata.gz: 3c9ee8bcfe39ef1a3400ded4c163478d498fdc70553b666f947908bb940ceaf1dc00f047799e90c608775f72e08eb1259143e4b9f2f13729834b6f15a15ccee9
7
- data.tar.gz: 39198b56c6142b7c70c66ca6eb477fd5698c2c69c4951a1aac727cdb48246082b60d0a11a0100a459a6d6fdb69abc52433d1449b523f6cf97bbf7e30bc771608
6
+ metadata.gz: 885cf6ef92a6428a4f437b820a0c8b1095eab689bd1f174f51ad9ce6cde5832d9f4a5d496f31be340fc7b634fda2422d84c04e1d2baa3ec0f6647ebff0340208
7
+ data.tar.gz: 06bbe90c27cc77726bdceaf30ed147830368e82a7fc2b3ac8ccc4c0d1853c9c9ef2c0b3cbb6973a666fec27a1777faa5218d390f3ac12baca1a99e306524eb30
@@ -0,0 +1,62 @@
1
+ # Ruby CircleCI 2.0 configuration file
2
+ #
3
+ # Check https://circleci.com/docs/2.0/language-ruby/ for more details
4
+ #
5
+ version: 2
6
+ jobs:
7
+ build:
8
+ docker:
9
+ # specify the version you desire here
10
+ - image: circleci/ruby:2.6.1-node
11
+ # environment:
12
+ # BUNDLER_VERSION: 2.0.1
13
+
14
+ working_directory: ~/repo
15
+
16
+ steps:
17
+ - checkout
18
+
19
+ # Download and cache dependencies
20
+ - restore_cache:
21
+ keys:
22
+ - v1-dependencies-{{ checksum "Gemfile.lock" }}
23
+ # fallback to using the latest cache if no exact match is found
24
+ - v1-dependencies-
25
+
26
+ - run:
27
+ name: install dependencies
28
+ command: |
29
+ gem install bundler
30
+ bundle install --jobs=4 --retry=3 --path vendor/bundle
31
+
32
+ - save_cache:
33
+ paths:
34
+ - ./vendor/bundle
35
+ key: v1-dependencies-{{ checksum "Gemfile.lock" }}
36
+
37
+ - run:
38
+ name: Creating artifacts folder
39
+ command: mkdir -p /tmp/test-results
40
+ - run:
41
+ name: Run Rubocop
42
+ command: bundle exec rubocop --fail-level E --format html --out /tmp/test-results/rubocop.html
43
+
44
+ - run:
45
+ name: Run Reek
46
+ command: bundle exec reek lib/
47
+
48
+ - run:
49
+ name: Run rspec in parallel
50
+ command: |
51
+ bundle exec rspec --profile 10 \
52
+ --format RspecJunitFormatter \
53
+ --out /tmp/test_results/rspec.xml \
54
+ --format progress \
55
+ $(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timings)
56
+
57
+ # Collecting reports
58
+ - store_test_results:
59
+ path: /tmp/test-results
60
+ - store_artifacts:
61
+ path: /tmp/test-results
62
+ destination: test-results
@@ -0,0 +1,39 @@
1
+ detectors:
2
+ IrresponsibleModule:
3
+ enabled: false
4
+ NestedIterators:
5
+ enabled: false
6
+ DuplicateMethodCall:
7
+ max_calls: 2
8
+ exclude:
9
+ - AppPrism::Finders#element
10
+ - AppPrism::Platforms::AppiumPlatform#swipe_down
11
+ - AppPrism::Platforms::AppiumPlatform#swipe_up
12
+ TooManyInstanceVariables:
13
+ max_instance_variables: 5
14
+ TooManyStatements:
15
+ max_statements: 10
16
+ NilCheck:
17
+ exclude:
18
+ - AppPrism::Elements::Element#visible?
19
+ ManualDispatch:
20
+ exclude:
21
+ - AppPrism::Finders#expected_element
22
+ UtilityFunction:
23
+ exclude:
24
+ - AppPrism::HelperMethods#android
25
+ - AppPrism::HelperMethods#ios?
26
+ - AppPrism::ScreenFactory#class_from_string
27
+ FeatureEnvy:
28
+ exclude:
29
+ - AppPrism::Platforms::AppiumPlatform#swipe_down
30
+ - AppPrism::Platforms::AppiumPlatform#swipe_up
31
+ InstanceVariableAssumption:
32
+ exclude:
33
+ - AppPrism::Platforms::AppiumPlatform
34
+ SubclassedFromCoreClass:
35
+ exclude:
36
+ - AppPrism::Sections::SectionsCollection #rework later, this might be really not good
37
+ ModuleInitialize:
38
+ exclude:
39
+ - AppPrism
@@ -0,0 +1,166 @@
1
+ #AllCops:
2
+ # Exclude:
3
+ # - 'vendor/bundle/**/*'
4
+ # - 'features/support/fixtures/*'
5
+
6
+ Bundler/DuplicatedGem:
7
+ Enabled: true
8
+
9
+ Bundler/OrderedGems:
10
+ TreatCommentsAsGroupSeparators: true
11
+
12
+ Layout/AccessModifierIndentation:
13
+ EnforcedStyle: indent
14
+
15
+ Layout/AlignParameters:
16
+ EnforcedStyle: with_fixed_indentation
17
+
18
+ Layout/BlockEndNewline:
19
+ Enabled: true
20
+
21
+ Layout/CaseIndentation:
22
+ EnforcedStyle: end
23
+ IndentOneStep: false
24
+
25
+ Layout/ClosingParenthesisIndentation:
26
+ Enabled: true
27
+
28
+ Layout/CommentIndentation:
29
+ Enabled: true
30
+
31
+ Layout/DotPosition:
32
+ EnforcedStyle: leading
33
+
34
+ Layout/EmptyLineBetweenDefs:
35
+ AllowAdjacentOneLineDefs: false
36
+
37
+ Layout/EmptyLines:
38
+ Enabled: true
39
+
40
+ Layout/EmptyLinesAroundAccessModifier:
41
+ Enabled: true
42
+
43
+ Layout/EmptyLinesAroundClassBody:
44
+ EnforcedStyle: no_empty_lines
45
+
46
+ Layout/EmptyLinesAroundExceptionHandlingKeywords:
47
+ Enabled: true
48
+
49
+ Layout/EmptyLinesAroundMethodBody:
50
+ Enabled: true
51
+
52
+ Layout/EmptyLinesAroundModuleBody:
53
+ EnforcedStyle: no_empty_lines
54
+
55
+ Layout/EndOfLine:
56
+ Enabled: true
57
+
58
+ Layout/ExtraSpacing:
59
+ AllowForAlignment: true
60
+ ForceEqualSignAlignment: false
61
+ Exclude:
62
+ - 'db/schema.rb'
63
+
64
+ Layout/FirstParameterIndentation:
65
+ EnforcedStyle: special_for_inner_method_call_in_parentheses
66
+
67
+ Layout/LeadingCommentSpace:
68
+ Enabled: true
69
+
70
+ Layout/SpaceAroundBlockParameters:
71
+ EnforcedStyleInsidePipes: no_space
72
+
73
+ Layout/SpaceAroundEqualsInParameterDefault:
74
+ EnforcedStyle: space
75
+
76
+ Layout/SpaceBeforeBlockBraces:
77
+ EnforcedStyle: space
78
+
79
+ Layout/SpaceInsideBlockBraces:
80
+ EnforcedStyle: space
81
+ EnforcedStyleForEmptyBraces: space
82
+
83
+ Layout/SpaceInsideHashLiteralBraces:
84
+ EnforcedStyle: no_space
85
+ EnforcedStyleForEmptyBraces: no_space
86
+
87
+ Layout/Tab:
88
+ Enabled: true
89
+
90
+ Layout/TrailingBlankLines:
91
+ EnforcedStyle: final_newline
92
+
93
+ Layout/TrailingWhitespace:
94
+ Enabled: true
95
+
96
+ Layout/EndAlignment:
97
+ EnforcedStyleAlignWith: variable
98
+
99
+ Metrics/AbcSize:
100
+ Max: 18
101
+
102
+ MethodLength:
103
+ Max: 10
104
+ Exclude:
105
+ - "spec/**/*"
106
+
107
+ Metrics/LineLength:
108
+ Max: 105
109
+ Exclude:
110
+ - 'Gemfile'
111
+
112
+ ModuleLength:
113
+ Max: 100
114
+ Exclude:
115
+ - "spec/**/*"
116
+
117
+ Rails:
118
+ Enabled: true
119
+
120
+ Rails/Date:
121
+ EnforcedStyle: flexible
122
+ Enabled: false
123
+
124
+ Rails/TimeZone:
125
+ EnforcedStyle: flexible
126
+
127
+ Style/BlockDelimiters:
128
+ EnforcedStyle: line_count_based
129
+
130
+ Style/BracesAroundHashParameters:
131
+ EnforcedStyle: context_dependent
132
+
133
+ Style/CollectionMethods:
134
+ Enabled: true
135
+ PreferredMethods:
136
+ collect: 'map'
137
+ collect!: 'map!'
138
+ inject: 'reduce'
139
+ detect: 'find'
140
+ find_all: 'select'
141
+
142
+ Style/ClassAndModuleChildren:
143
+ EnforcedStyle: compact
144
+
145
+ Style/Documentation:
146
+ Enabled: false
147
+
148
+ Style/FrozenStringLiteralComment:
149
+ Enabled: false
150
+
151
+ Style/HashSyntax:
152
+ EnforcedStyle: ruby19_no_mixed_keys
153
+
154
+ Style/MethodDefParentheses:
155
+ EnforcedStyle: require_parentheses
156
+
157
+ Style/RedundantReturn:
158
+ AllowMultipleReturnValues: false
159
+
160
+ Style/StringLiterals:
161
+ EnforcedStyle: single_quotes
162
+ ConsistentQuotesInMultiline: true
163
+
164
+ #Lint/UnusedBlockArgument:
165
+ # Exclude:
166
+ # - 'features/step_definitions/**/*'
@@ -0,0 +1 @@
1
+ 2.6.1
@@ -0,0 +1,86 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ app_prism (0.1.1)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+ ast (2.4.0)
10
+ axiom-types (0.1.1)
11
+ descendants_tracker (~> 0.0.4)
12
+ ice_nine (~> 0.11.0)
13
+ thread_safe (~> 0.3, >= 0.3.1)
14
+ codeclimate-engine-rb (0.4.1)
15
+ virtus (~> 1.0)
16
+ coercible (1.0.0)
17
+ descendants_tracker (~> 0.0.1)
18
+ descendants_tracker (0.0.4)
19
+ thread_safe (~> 0.3, >= 0.3.1)
20
+ diff-lcs (1.3)
21
+ equalizer (0.0.11)
22
+ ice_nine (0.11.2)
23
+ jaro_winkler (1.5.2)
24
+ kwalify (0.7.2)
25
+ parallel (1.13.0)
26
+ parser (2.6.0.0)
27
+ ast (~> 2.4.0)
28
+ powerpack (0.1.2)
29
+ psych (3.1.0)
30
+ rainbow (3.0.0)
31
+ rake (10.5.0)
32
+ reek (5.4.0)
33
+ codeclimate-engine-rb (~> 0.4.0)
34
+ kwalify (~> 0.7.0)
35
+ parser (>= 2.5.0.0, < 2.7, != 2.5.1.1)
36
+ psych (~> 3.1.0)
37
+ rainbow (>= 2.0, < 4.0)
38
+ rspec (3.8.0)
39
+ rspec-core (~> 3.8.0)
40
+ rspec-expectations (~> 3.8.0)
41
+ rspec-mocks (~> 3.8.0)
42
+ rspec-core (3.8.0)
43
+ rspec-support (~> 3.8.0)
44
+ rspec-expectations (3.8.3)
45
+ diff-lcs (>= 1.2.0, < 2.0)
46
+ rspec-support (~> 3.8.0)
47
+ rspec-mocks (3.8.0)
48
+ diff-lcs (>= 1.2.0, < 2.0)
49
+ rspec-support (~> 3.8.0)
50
+ rspec-support (3.8.0)
51
+ rspec_junit_formatter (0.4.1)
52
+ rspec-core (>= 2, < 4, != 2.12.0)
53
+ rubocop (0.63.1)
54
+ jaro_winkler (~> 1.5.1)
55
+ parallel (~> 1.10)
56
+ parser (>= 2.5, != 2.5.1.1)
57
+ powerpack (~> 0.1)
58
+ rainbow (>= 2.2.2, < 4.0)
59
+ ruby-progressbar (~> 1.7)
60
+ unicode-display_width (~> 1.4.0)
61
+ rubocop-rspec (1.33.0)
62
+ rubocop (>= 0.60.0)
63
+ ruby-progressbar (1.10.0)
64
+ thread_safe (0.3.6)
65
+ unicode-display_width (1.4.1)
66
+ virtus (1.0.5)
67
+ axiom-types (~> 0.1)
68
+ coercible (~> 1.0)
69
+ descendants_tracker (~> 0.0, >= 0.0.3)
70
+ equalizer (~> 0.0, >= 0.0.9)
71
+
72
+ PLATFORMS
73
+ ruby
74
+
75
+ DEPENDENCIES
76
+ app_prism!
77
+ bundler (~> 2.0.1)
78
+ rake (~> 10.0)
79
+ reek
80
+ rspec (~> 3.0)
81
+ rspec_junit_formatter
82
+ rubocop
83
+ rubocop-rspec
84
+
85
+ BUNDLED WITH
86
+ 2.0.1
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2019 Denys Bazarnyi
3
+ Copyright (c) 2019 Denys Bazarnyi, Dmitriy Konovalov
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -36,7 +36,11 @@ Gem::Specification.new do |spec|
36
36
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
37
37
  spec.require_paths = ["lib"]
38
38
 
39
- spec.add_development_dependency "bundler", "~> 1.17"
39
+ spec.add_development_dependency "bundler", "~> 2.0.1"
40
40
  spec.add_development_dependency "rake", "~> 10.0"
41
41
  spec.add_development_dependency "rspec", "~> 3.0"
42
+ spec.add_development_dependency "rspec_junit_formatter"
43
+ spec.add_development_dependency "rubocop"
44
+ spec.add_development_dependency "rubocop-rspec"
45
+ spec.add_development_dependency "reek"
42
46
  end
File without changes
@@ -1,6 +1,6 @@
1
1
  module AppPrism
2
2
  module ScreenFactory
3
- def on_page(page_class, *args)
3
+ def on_page(page_class, _args)
4
4
  page_class = class_from_string(page_class) if page_class.is_a? String
5
5
  @current_screen = page_class.new(@browser)
6
6
  end
@@ -1,3 +1,3 @@
1
1
  module AppPrism
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: app_prism
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Denys Bazarnyi, Dmitriy Konovalov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-02-19 00:00:00.000000000 Z
11
+ date: 2019-06-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.17'
19
+ version: 2.0.1
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.17'
26
+ version: 2.0.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -52,6 +52,62 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '3.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec_junit_formatter
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rubocop
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop-rspec
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: reek
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
55
111
  description: Write a longer description or delete this line.
56
112
  email:
57
113
  - den.bazarny@gmail.com, d.konovalov.39@gmail.com
@@ -60,11 +116,15 @@ executables:
60
116
  extensions: []
61
117
  extra_rdoc_files: []
62
118
  files:
119
+ - ".circleci/config.yml"
63
120
  - ".gitignore"
121
+ - ".reek.yml"
64
122
  - ".rspec"
65
- - ".travis.yml"
123
+ - ".rubocop.yml"
124
+ - ".ruby-version"
66
125
  - CODE_OF_CONDUCT.md
67
126
  - Gemfile
127
+ - Gemfile.lock
68
128
  - LICENSE.txt
69
129
  - README.md
70
130
  - Rakefile
@@ -105,8 +165,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
105
165
  - !ruby/object:Gem::Version
106
166
  version: '0'
107
167
  requirements: []
108
- rubyforge_project:
109
- rubygems_version: 2.7.8
168
+ rubygems_version: 3.0.1
110
169
  signing_key:
111
170
  specification_version: 4
112
171
  summary: Write a short summary, because RubyGems requires one.
@@ -1,7 +0,0 @@
1
- ---
2
- sudo: false
3
- language: ruby
4
- cache: bundler
5
- rvm:
6
- - 2.5.1
7
- before_install: gem install bundler -v 1.17.1