solidus_reviews 1.1.1 → 1.2.0
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 +4 -4
 - data/.circleci/config.yml +35 -0
 - data/.gitignore +1 -0
 - data/Gemfile +13 -11
 - data/README.md +1 -1
 - data/app/decorators/controllers/solidus_reviews/spree/admin/products_controller_decorator.rb +19 -0
 - data/app/decorators/helpers/solidus_reviews/spree/api/api_helpers_decorator.rb +33 -0
 - data/app/decorators/models/solidus_reviews/spree/product_decorator.rb +30 -0
 - data/app/decorators/models/solidus_reviews/spree/user_decorator.rb +15 -0
 - data/app/models/spree/feedback_review.rb +1 -1
 - data/app/models/spree/review.rb +2 -2
 - data/lib/solidus_reviews.rb +1 -1
 - data/lib/spree_reviews/engine.rb +0 -2
 - data/solidus_reviews.gemspec +4 -4
 - data/spec/controllers/{admin → spree/admin}/feedback_reviews_controller_spec.rb +0 -0
 - data/spec/controllers/{admin → spree/admin}/review_settings_controller_spec.rb +0 -0
 - data/spec/controllers/{admin → spree/admin}/reviews_controller_spec.rb +0 -0
 - data/spec/controllers/{feedback_reviews_controller_spec.rb → spree/feedback_reviews_controller_spec.rb} +0 -0
 - data/spec/controllers/{products_controller_spec.rb → spree/products_controller_spec.rb} +0 -0
 - data/spec/controllers/{reviews_controller_spec.rb → spree/reviews_controller_spec.rb} +0 -0
 - data/spec/spec_helper.rb +10 -25
 - metadata +41 -47
 - data/.travis.yml +0 -31
 - data/app/controllers/spree/products_controller_decorator.rb +0 -7
 - data/app/helpers/spree/api/api_helpers_decorator.rb +0 -21
 - data/app/models/spree/product_decorator.rb +0 -22
 - data/app/models/spree/user_decorator.rb +0 -3
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 6fc709261f34b4979904d11cceeb17b22a57be36089f37f77dea475262506c24
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 9a3b6b6f70b0867534f634426da005d312db19e21d5633bb9e5ca2e8ab6ba3ec
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 8c4eaa7f6e301a830b196bd194c897a670a8c193607fe98542890625ed6a3d19b54c7ce8b8df9678ba45bc3db114b0a358c58d053a93be0e438b4fa6354939fe
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: e2d8efba5a9ba5602318c40e1bcccb16291f49a68c577e76acf2db42b37e879bb9adfcbc56367b47dbfa84092964bdfe199e7aacb47b85c071c94d134c7906e4
         
     | 
| 
         @@ -0,0 +1,35 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            version: 2.1
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            orbs:
         
     | 
| 
      
 4 
     | 
    
         
            +
              # Always take the latest version of the orb, this allows us to
         
     | 
| 
      
 5 
     | 
    
         
            +
              # run specs against Solidus supported versions only without the need
         
     | 
| 
      
 6 
     | 
    
         
            +
              # to change this configuration every time a Solidus version is released
         
     | 
| 
      
 7 
     | 
    
         
            +
              # or goes EOL.
         
     | 
| 
      
 8 
     | 
    
         
            +
              solidusio_extensions: solidusio/extensions@volatile
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            jobs:
         
     | 
| 
      
 11 
     | 
    
         
            +
              run-specs-with-postgres:
         
     | 
| 
      
 12 
     | 
    
         
            +
                executor: solidusio_extensions/postgres
         
     | 
| 
      
 13 
     | 
    
         
            +
                steps:
         
     | 
| 
      
 14 
     | 
    
         
            +
                  - solidusio_extensions/run-tests
         
     | 
| 
      
 15 
     | 
    
         
            +
              run-specs-with-mysql:
         
     | 
| 
      
 16 
     | 
    
         
            +
                executor: solidusio_extensions/mysql
         
     | 
| 
      
 17 
     | 
    
         
            +
                steps:
         
     | 
| 
      
 18 
     | 
    
         
            +
                  - solidusio_extensions/run-tests
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            workflows:
         
     | 
| 
      
 21 
     | 
    
         
            +
              "Run specs on supported Solidus versions":
         
     | 
| 
      
 22 
     | 
    
         
            +
                jobs:
         
     | 
| 
      
 23 
     | 
    
         
            +
                  - run-specs-with-postgres
         
     | 
| 
      
 24 
     | 
    
         
            +
                  - run-specs-with-mysql
         
     | 
| 
      
 25 
     | 
    
         
            +
              "Weekly run specs against master":
         
     | 
| 
      
 26 
     | 
    
         
            +
                triggers:
         
     | 
| 
      
 27 
     | 
    
         
            +
                  - schedule:
         
     | 
| 
      
 28 
     | 
    
         
            +
                      cron: "0 0 * * 4" # every Thursday
         
     | 
| 
      
 29 
     | 
    
         
            +
                      filters:
         
     | 
| 
      
 30 
     | 
    
         
            +
                        branches:
         
     | 
| 
      
 31 
     | 
    
         
            +
                          only:
         
     | 
| 
      
 32 
     | 
    
         
            +
                            - master
         
     | 
| 
      
 33 
     | 
    
         
            +
                jobs:
         
     | 
| 
      
 34 
     | 
    
         
            +
                  - run-specs-with-postgres
         
     | 
| 
      
 35 
     | 
    
         
            +
                  - run-specs-with-mysql
         
     | 
    
        data/.gitignore
    CHANGED
    
    
    
        data/Gemfile
    CHANGED
    
    | 
         @@ -5,25 +5,27 @@ source 'https://rubygems.org' 
     | 
|
| 
       5 
5 
     | 
    
         
             
            branch = ENV.fetch('SOLIDUS_BRANCH', 'master')
         
     | 
| 
       6 
6 
     | 
    
         
             
            gem 'solidus', git: 'https://github.com/solidusio/solidus.git', branch: branch
         
     | 
| 
       7 
7 
     | 
    
         
             
            gem 'solidus_auth_devise'
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            # Needed to help Bundler figure out how to resolve dependencies, otherwise it takes forever to
         
     | 
| 
      
 10 
     | 
    
         
            +
            # resolve them
         
     | 
| 
      
 11 
     | 
    
         
            +
            if branch == 'master' || Gem::Version.new(branch[1..-1]) >= Gem::Version.new('2.10.0')
         
     | 
| 
      
 12 
     | 
    
         
            +
              gem 'rails', '~> 6.0'
         
     | 
| 
      
 13 
     | 
    
         
            +
            else
         
     | 
| 
      
 14 
     | 
    
         
            +
              gem 'rails', '~> 5.0'
         
     | 
| 
      
 15 
     | 
    
         
            +
            end
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
       8 
17 
     | 
    
         
             
            gem 'puma'
         
     | 
| 
       9 
18 
     | 
    
         
             
            gem 'rails-controller-testing', group: :test
         
     | 
| 
       10 
19 
     | 
    
         | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
      
 20 
     | 
    
         
            +
            case ENV['DB']
         
     | 
| 
      
 21 
     | 
    
         
            +
            when 'mysql'
         
     | 
| 
       12 
22 
     | 
    
         
             
              gem 'mysql2', '~> 0.4.10'
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
      
 23 
     | 
    
         
            +
            when 'postgres'
         
     | 
| 
       14 
24 
     | 
    
         
             
              gem 'pg', '~> 0.21'
         
     | 
| 
       15 
25 
     | 
    
         
             
            end
         
     | 
| 
       16 
26 
     | 
    
         | 
| 
       17 
27 
     | 
    
         
             
            group :development, :test do
         
     | 
| 
       18 
     | 
    
         
            -
               
     | 
| 
       19 
     | 
    
         
            -
                gem 'factory_bot', '4.10.0'
         
     | 
| 
       20 
     | 
    
         
            -
              else
         
     | 
| 
       21 
     | 
    
         
            -
                gem 'factory_bot', '> 4.10.0'
         
     | 
| 
       22 
     | 
    
         
            -
              end
         
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
              gem 'pry-rails'
         
     | 
| 
       25 
     | 
    
         
            -
              gem 'selenium-webdriver'
         
     | 
| 
       26 
     | 
    
         
            -
              gem 'webdrivers'
         
     | 
| 
      
 28 
     | 
    
         
            +
              gem 'factory_bot', '> 4.10.0'
         
     | 
| 
       27 
29 
     | 
    
         
             
            end
         
     | 
| 
       28 
30 
     | 
    
         | 
| 
       29 
31 
     | 
    
         
             
            gemspec
         
     | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # Reviews
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
     | 
    
         
            -
            [](https://circleci.com/gh/solidusio-contrib/solidus_reviews)
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            Straightforward review/rating functionality, updated for
         
     | 
| 
       6 
6 
     | 
    
         
             
            [Solidus](https://solidus.io). While the Gem name has changed, the module
         
     | 
| 
         @@ -0,0 +1,19 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module SolidusReviews
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Spree
         
     | 
| 
      
 5 
     | 
    
         
            +
                module ProductsControllerDecorator
         
     | 
| 
      
 6 
     | 
    
         
            +
                  def self.prepended(base)
         
     | 
| 
      
 7 
     | 
    
         
            +
                    base.class_eval do
         
     | 
| 
      
 8 
     | 
    
         
            +
                      helper ::Spree::ReviewsHelper
         
     | 
| 
      
 9 
     | 
    
         
            +
                    end
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
                    [:avg_rating, :reviews_count].each do |attribute|
         
     | 
| 
      
 12 
     | 
    
         
            +
                      ::Spree::PermittedAttributes.product_attributes << attribute
         
     | 
| 
      
 13 
     | 
    
         
            +
                    end
         
     | 
| 
      
 14 
     | 
    
         
            +
                  end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
                  ::Spree::ProductsController.prepend self
         
     | 
| 
      
 17 
     | 
    
         
            +
                end
         
     | 
| 
      
 18 
     | 
    
         
            +
              end
         
     | 
| 
      
 19 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,33 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module SolidusReviews
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Spree
         
     | 
| 
      
 5 
     | 
    
         
            +
                module Api
         
     | 
| 
      
 6 
     | 
    
         
            +
                  module ApiHelpersDecorator
         
     | 
| 
      
 7 
     | 
    
         
            +
                    def self.prepended(base)
         
     | 
| 
      
 8 
     | 
    
         
            +
                      base.module_eval do
         
     | 
| 
      
 9 
     | 
    
         
            +
                        @@review_attributes = [
         
     | 
| 
      
 10 
     | 
    
         
            +
                          :id, :product_id, :name, :location, :rating, :title, :review, :approved,
         
     | 
| 
      
 11 
     | 
    
         
            +
                          :created_at, :updated_at, :user_id, :ip_address, :locale, :show_identifier,
         
     | 
| 
      
 12 
     | 
    
         
            +
                          :verified_purchaser
         
     | 
| 
      
 13 
     | 
    
         
            +
                        ]
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                        @@feedback_review_attributes = [
         
     | 
| 
      
 16 
     | 
    
         
            +
                          :id, :user_id, :review_id, :rating, :comment, :created_at, :updated_at, :locale
         
     | 
| 
      
 17 
     | 
    
         
            +
                        ]
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
                        def review_attributes
         
     | 
| 
      
 20 
     | 
    
         
            +
                          @@review_attributes
         
     | 
| 
      
 21 
     | 
    
         
            +
                        end
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                        def feedback_review_attributes
         
     | 
| 
      
 24 
     | 
    
         
            +
                          @@feedback_review_attributes
         
     | 
| 
      
 25 
     | 
    
         
            +
                        end
         
     | 
| 
      
 26 
     | 
    
         
            +
                      end
         
     | 
| 
      
 27 
     | 
    
         
            +
                    end
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
                    ::Spree::Api::ApiHelpers.prepend self
         
     | 
| 
      
 30 
     | 
    
         
            +
                  end
         
     | 
| 
      
 31 
     | 
    
         
            +
                end
         
     | 
| 
      
 32 
     | 
    
         
            +
              end
         
     | 
| 
      
 33 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,30 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
            module SolidusReviews
         
     | 
| 
      
 3 
     | 
    
         
            +
              module Spree
         
     | 
| 
      
 4 
     | 
    
         
            +
                module ProductDecorator
         
     | 
| 
      
 5 
     | 
    
         
            +
                  def self.prepended(base)
         
     | 
| 
      
 6 
     | 
    
         
            +
                    base.class_eval do
         
     | 
| 
      
 7 
     | 
    
         
            +
                      has_many :reviews
         
     | 
| 
      
 8 
     | 
    
         
            +
                    end
         
     | 
| 
      
 9 
     | 
    
         
            +
                  end
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
                  def stars
         
     | 
| 
      
 12 
     | 
    
         
            +
                    avg_rating.try(:round) || 0
         
     | 
| 
      
 13 
     | 
    
         
            +
                  end
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                  def recalculate_rating
         
     | 
| 
      
 16 
     | 
    
         
            +
                    reviews_count = reviews.reload.default_approval_filter.count
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
                    self.reviews_count = reviews_count
         
     | 
| 
      
 19 
     | 
    
         
            +
                    if reviews_count > 0
         
     | 
| 
      
 20 
     | 
    
         
            +
                      self.avg_rating = '%.1f' % (reviews.default_approval_filter.sum(:rating).to_f / reviews_count)
         
     | 
| 
      
 21 
     | 
    
         
            +
                    else
         
     | 
| 
      
 22 
     | 
    
         
            +
                      self.avg_rating = 0
         
     | 
| 
      
 23 
     | 
    
         
            +
                    end
         
     | 
| 
      
 24 
     | 
    
         
            +
                    save
         
     | 
| 
      
 25 
     | 
    
         
            +
                  end
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
                  ::Spree::Product.prepend self
         
     | 
| 
      
 28 
     | 
    
         
            +
                end
         
     | 
| 
      
 29 
     | 
    
         
            +
              end
         
     | 
| 
      
 30 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,15 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module SolidusReviews
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Spree
         
     | 
| 
      
 5 
     | 
    
         
            +
                module UserDecorator
         
     | 
| 
      
 6 
     | 
    
         
            +
                  def self.prepended(base)
         
     | 
| 
      
 7 
     | 
    
         
            +
                    base.class_eval do
         
     | 
| 
      
 8 
     | 
    
         
            +
                      has_many :reviews, class_name: 'Spree::Review'
         
     | 
| 
      
 9 
     | 
    
         
            +
                    end
         
     | 
| 
      
 10 
     | 
    
         
            +
                  end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
                  ::Spree.user_class.prepend self
         
     | 
| 
      
 13 
     | 
    
         
            +
                end
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            class Spree::FeedbackReview < ActiveRecord::Base
         
     | 
| 
       4 
     | 
    
         
            -
              belongs_to :user, class_name: Spree.user_class.to_s
         
     | 
| 
      
 4 
     | 
    
         
            +
              belongs_to :user, class_name: Spree.user_class.to_s, optional: true
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
6 
     | 
    
         
             
              belongs_to :review, dependent: :destroy
         
     | 
| 
       7 
7 
     | 
    
         
             
              validates :review, presence: true
         
     | 
    
        data/app/models/spree/review.rb
    CHANGED
    
    | 
         @@ -1,8 +1,8 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            class Spree::Review < ActiveRecord::Base
         
     | 
| 
       4 
     | 
    
         
            -
              belongs_to :product, touch: true
         
     | 
| 
       5 
     | 
    
         
            -
              belongs_to :user, class_name: Spree.user_class.to_s
         
     | 
| 
      
 4 
     | 
    
         
            +
              belongs_to :product, touch: true, optional: true
         
     | 
| 
      
 5 
     | 
    
         
            +
              belongs_to :user, class_name: Spree.user_class.to_s, optional: true
         
     | 
| 
       6 
6 
     | 
    
         
             
              has_many   :feedback_reviews
         
     | 
| 
       7 
7 
     | 
    
         
             
              has_many   :images, -> { order(:position) }, as: :viewable,
         
     | 
| 
       8 
8 
     | 
    
         
             
                dependent: :destroy, class_name: "Spree::Image"
         
     | 
    
        data/lib/solidus_reviews.rb
    CHANGED
    
    
    
        data/lib/spree_reviews/engine.rb
    CHANGED
    
    | 
         @@ -6,8 +6,6 @@ module SpreeReviews 
     | 
|
| 
       6 
6 
     | 
    
         
             
                isolate_namespace Spree
         
     | 
| 
       7 
7 
     | 
    
         
             
                engine_name 'solidus_reviews'
         
     | 
| 
       8 
8 
     | 
    
         | 
| 
       9 
     | 
    
         
            -
                config.autoload_paths += %W(#{config.root}/lib)
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
9 
     | 
    
         
             
                def self.activate
         
     | 
| 
       12 
10 
     | 
    
         
             
                  Dir.glob(File.join(File.dirname(__FILE__), '../../app/**/*_decorator*.rb')) do |c|
         
     | 
| 
       13 
11 
     | 
    
         
             
                    Rails.configuration.cache_classes ? require(c) : load(c)
         
     | 
    
        data/solidus_reviews.gemspec
    CHANGED
    
    | 
         @@ -3,7 +3,7 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            Gem::Specification.new do |s|
         
     | 
| 
       4 
4 
     | 
    
         
             
              s.platform    = Gem::Platform::RUBY
         
     | 
| 
       5 
5 
     | 
    
         
             
              s.name        = 'solidus_reviews'
         
     | 
| 
       6 
     | 
    
         
            -
              s.version     = '1. 
     | 
| 
      
 6 
     | 
    
         
            +
              s.version     = '1.2.0'
         
     | 
| 
       7 
7 
     | 
    
         
             
              s.summary     = 'Basic review and ratings facility for Solidus'
         
     | 
| 
       8 
8 
     | 
    
         
             
              s.authors = ['Solidus Contrib']
         
     | 
| 
       9 
9 
     | 
    
         
             
              s.description = s.summary
         
     | 
| 
         @@ -19,7 +19,6 @@ Gem::Specification.new do |s| 
     | 
|
| 
       19 
19 
     | 
    
         | 
| 
       20 
20 
     | 
    
         
             
              s.add_dependency 'deface', '~> 1'
         
     | 
| 
       21 
21 
     | 
    
         
             
              s.add_dependency 'solidus', ['>= 1.4', '< 3']
         
     | 
| 
       22 
     | 
    
         
            -
              s.add_dependency 'solidus_auth_devise', ['>= 1.0', '< 3']
         
     | 
| 
       23 
22 
     | 
    
         
             
              s.add_dependency 'solidus_support', '~> 0.1'
         
     | 
| 
       24 
23 
     | 
    
         | 
| 
       25 
24 
     | 
    
         
             
              s.add_development_dependency 'capybara'
         
     | 
| 
         @@ -29,9 +28,10 @@ Gem::Specification.new do |s| 
     | 
|
| 
       29 
28 
     | 
    
         
             
              s.add_development_dependency 'ffaker'
         
     | 
| 
       30 
29 
     | 
    
         
             
              s.add_development_dependency 'poltergeist'
         
     | 
| 
       31 
30 
     | 
    
         
             
              s.add_development_dependency 'pry'
         
     | 
| 
       32 
     | 
    
         
            -
              s.add_development_dependency 'rspec-rails'
         
     | 
| 
      
 31 
     | 
    
         
            +
              s.add_development_dependency 'rspec-rails', '~> 4.0.0.beta2'
         
     | 
| 
       33 
32 
     | 
    
         
             
              s.add_development_dependency 'rubocop', '~> 0.53.0'
         
     | 
| 
       34 
33 
     | 
    
         
             
              s.add_development_dependency 'sass-rails'
         
     | 
| 
      
 34 
     | 
    
         
            +
              s.add_development_dependency 'selenium-webdriver'
         
     | 
| 
       35 
35 
     | 
    
         
             
              s.add_development_dependency 'simplecov'
         
     | 
| 
       36 
     | 
    
         
            -
              s.add_development_dependency 'sqlite3' 
     | 
| 
      
 36 
     | 
    
         
            +
              s.add_development_dependency 'sqlite3'
         
     | 
| 
       37 
37 
     | 
    
         
             
            end
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
    
        data/spec/spec_helper.rb
    CHANGED
    
    | 
         @@ -1,41 +1,26 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
     | 
    
         
            -
            require  
     | 
| 
       4 
     | 
    
         
            -
            SimpleCov.start  
     | 
| 
      
 3 
     | 
    
         
            +
            require "simplecov"
         
     | 
| 
      
 4 
     | 
    
         
            +
            SimpleCov.start "rails"
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
            ENV["RAILS_ENV"]  
     | 
| 
      
 6 
     | 
    
         
            +
            ENV["RAILS_ENV"] ||= "test"
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            require File.expand_path('dummy/config/environment.rb', __dir__)
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
     | 
    
         
            -
            # Requires factories and other useful helpers defined in spree_core.
         
     | 
| 
       11 
10 
     | 
    
         
             
            require "solidus_support/extension/feature_helper"
         
     | 
| 
       12 
11 
     | 
    
         
             
            require 'spree/testing_support/controller_requests'
         
     | 
| 
       13 
     | 
    
         
            -
            require ' 
     | 
| 
      
 12 
     | 
    
         
            +
            require 'spree/testing_support/capybara_ext'
         
     | 
| 
       14 
13 
     | 
    
         | 
| 
       15 
14 
     | 
    
         
             
            Dir[File.join(File.dirname(__FILE__), "support/**/*.rb")].each { |f| require f }
         
     | 
| 
       16 
15 
     | 
    
         | 
| 
       17 
16 
     | 
    
         
             
            require 'solidus_reviews/factories'
         
     | 
| 
       18 
17 
     | 
    
         | 
| 
       19 
18 
     | 
    
         
             
            RSpec.configure do |config|
         
     | 
| 
       20 
     | 
    
         
            -
              config.include Spree::TestingSupport::ControllerRequests, type: :controller
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
19 
     | 
    
         
             
              config.infer_spec_type_from_file_location!
         
     | 
| 
       23 
     | 
    
         
            -
              config. 
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
               
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
     | 
    
         
            -
                browser_options.args << '--window-size=1440,1080'
         
     | 
| 
       30 
     | 
    
         
            -
                Capybara::Selenium::Driver.new(app, browser: :chrome, options: browser_options)
         
     | 
| 
       31 
     | 
    
         
            -
              end
         
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
       33 
     | 
    
         
            -
              Capybara.javascript_driver = (ENV['CAPYBARA_DRIVER'] || :selenium_chrome_headless).to_sym
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
              if Gem.loaded_specs['solidus'].version < Gem::Version.new('2.4')
         
     | 
| 
       36 
     | 
    
         
            -
                config.include VersionCake::TestHelpers, type: :controller
         
     | 
| 
       37 
     | 
    
         
            -
                config.before(:each, type: :controller) do
         
     | 
| 
       38 
     | 
    
         
            -
                  set_request_version('', 1)
         
     | 
| 
       39 
     | 
    
         
            -
                end
         
     | 
| 
       40 
     | 
    
         
            -
              end
         
     | 
| 
      
 20 
     | 
    
         
            +
              config.raise_errors_for_deprecations!
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
              config.example_status_persistence_file_path = "./spec/examples.txt"
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
              config.include Spree::TestingSupport::UrlHelpers
         
     | 
| 
      
 25 
     | 
    
         
            +
              config.include Spree::TestingSupport::ControllerRequests, type: :controller
         
     | 
| 
       41 
26 
     | 
    
         
             
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: solidus_reviews
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.2.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Solidus Contrib
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2019- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2019-09-17 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: deface
         
     | 
| 
         @@ -44,26 +44,6 @@ dependencies: 
     | 
|
| 
       44 
44 
     | 
    
         
             
                - - "<"
         
     | 
| 
       45 
45 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       46 
46 
     | 
    
         
             
                    version: '3'
         
     | 
| 
       47 
     | 
    
         
            -
            - !ruby/object:Gem::Dependency
         
     | 
| 
       48 
     | 
    
         
            -
              name: solidus_auth_devise
         
     | 
| 
       49 
     | 
    
         
            -
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       50 
     | 
    
         
            -
                requirements:
         
     | 
| 
       51 
     | 
    
         
            -
                - - ">="
         
     | 
| 
       52 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       53 
     | 
    
         
            -
                    version: '1.0'
         
     | 
| 
       54 
     | 
    
         
            -
                - - "<"
         
     | 
| 
       55 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       56 
     | 
    
         
            -
                    version: '3'
         
     | 
| 
       57 
     | 
    
         
            -
              type: :runtime
         
     | 
| 
       58 
     | 
    
         
            -
              prerelease: false
         
     | 
| 
       59 
     | 
    
         
            -
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       60 
     | 
    
         
            -
                requirements:
         
     | 
| 
       61 
     | 
    
         
            -
                - - ">="
         
     | 
| 
       62 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       63 
     | 
    
         
            -
                    version: '1.0'
         
     | 
| 
       64 
     | 
    
         
            -
                - - "<"
         
     | 
| 
       65 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       66 
     | 
    
         
            -
                    version: '3'
         
     | 
| 
       67 
47 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       68 
48 
     | 
    
         
             
              name: solidus_support
         
     | 
| 
       69 
49 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -180,16 +160,16 @@ dependencies: 
     | 
|
| 
       180 
160 
     | 
    
         
             
              name: rspec-rails
         
     | 
| 
       181 
161 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       182 
162 
     | 
    
         
             
                requirements:
         
     | 
| 
       183 
     | 
    
         
            -
                - - " 
     | 
| 
      
 163 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       184 
164 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       185 
     | 
    
         
            -
                    version:  
     | 
| 
      
 165 
     | 
    
         
            +
                    version: 4.0.0.beta2
         
     | 
| 
       186 
166 
     | 
    
         
             
              type: :development
         
     | 
| 
       187 
167 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       188 
168 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       189 
169 
     | 
    
         
             
                requirements:
         
     | 
| 
       190 
     | 
    
         
            -
                - - " 
     | 
| 
      
 170 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       191 
171 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       192 
     | 
    
         
            -
                    version:  
     | 
| 
      
 172 
     | 
    
         
            +
                    version: 4.0.0.beta2
         
     | 
| 
       193 
173 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       194 
174 
     | 
    
         
             
              name: rubocop
         
     | 
| 
       195 
175 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -218,6 +198,20 @@ dependencies: 
     | 
|
| 
       218 
198 
     | 
    
         
             
                - - ">="
         
     | 
| 
       219 
199 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       220 
200 
     | 
    
         
             
                    version: '0'
         
     | 
| 
      
 201 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency
         
     | 
| 
      
 202 
     | 
    
         
            +
              name: selenium-webdriver
         
     | 
| 
      
 203 
     | 
    
         
            +
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
      
 204 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 205 
     | 
    
         
            +
                - - ">="
         
     | 
| 
      
 206 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 207 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
      
 208 
     | 
    
         
            +
              type: :development
         
     | 
| 
      
 209 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 210 
     | 
    
         
            +
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
      
 211 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 212 
     | 
    
         
            +
                - - ">="
         
     | 
| 
      
 213 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 214 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
       221 
215 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       222 
216 
     | 
    
         
             
              name: simplecov
         
     | 
| 
       223 
217 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -236,26 +230,26 @@ dependencies: 
     | 
|
| 
       236 
230 
     | 
    
         
             
              name: sqlite3
         
     | 
| 
       237 
231 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       238 
232 
     | 
    
         
             
                requirements:
         
     | 
| 
       239 
     | 
    
         
            -
                - - " 
     | 
| 
      
 233 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       240 
234 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       241 
     | 
    
         
            -
                    version:  
     | 
| 
      
 235 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
       242 
236 
     | 
    
         
             
              type: :development
         
     | 
| 
       243 
237 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       244 
238 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       245 
239 
     | 
    
         
             
                requirements:
         
     | 
| 
       246 
     | 
    
         
            -
                - - " 
     | 
| 
      
 240 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       247 
241 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       248 
     | 
    
         
            -
                    version:  
     | 
| 
      
 242 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
       249 
243 
     | 
    
         
             
            description: Basic review and ratings facility for Solidus
         
     | 
| 
       250 
244 
     | 
    
         
             
            email: 
         
     | 
| 
       251 
245 
     | 
    
         
             
            executables: []
         
     | 
| 
       252 
246 
     | 
    
         
             
            extensions: []
         
     | 
| 
       253 
247 
     | 
    
         
             
            extra_rdoc_files: []
         
     | 
| 
       254 
248 
     | 
    
         
             
            files:
         
     | 
| 
      
 249 
     | 
    
         
            +
            - ".circleci/config.yml"
         
     | 
| 
       255 
250 
     | 
    
         
             
            - ".gitignore"
         
     | 
| 
       256 
251 
     | 
    
         
             
            - ".rspec"
         
     | 
| 
       257 
252 
     | 
    
         
             
            - ".rubocop.yml"
         
     | 
| 
       258 
     | 
    
         
            -
            - ".travis.yml"
         
     | 
| 
       259 
253 
     | 
    
         
             
            - CONTRIBUTING.md
         
     | 
| 
       260 
254 
     | 
    
         
             
            - Gemfile
         
     | 
| 
       261 
255 
     | 
    
         
             
            - LICENSE.md
         
     | 
| 
         @@ -271,16 +265,16 @@ files: 
     | 
|
| 
       271 
265 
     | 
    
         
             
            - app/controllers/spree/admin/review_settings_controller.rb
         
     | 
| 
       272 
266 
     | 
    
         
             
            - app/controllers/spree/admin/reviews_controller.rb
         
     | 
| 
       273 
267 
     | 
    
         
             
            - app/controllers/spree/feedback_reviews_controller.rb
         
     | 
| 
       274 
     | 
    
         
            -
            - app/controllers/spree/products_controller_decorator.rb
         
     | 
| 
       275 
268 
     | 
    
         
             
            - app/controllers/spree/reviews_controller.rb
         
     | 
| 
       276 
     | 
    
         
            -
            - app/ 
     | 
| 
      
 269 
     | 
    
         
            +
            - app/decorators/controllers/solidus_reviews/spree/admin/products_controller_decorator.rb
         
     | 
| 
      
 270 
     | 
    
         
            +
            - app/decorators/helpers/solidus_reviews/spree/api/api_helpers_decorator.rb
         
     | 
| 
      
 271 
     | 
    
         
            +
            - app/decorators/models/solidus_reviews/spree/product_decorator.rb
         
     | 
| 
      
 272 
     | 
    
         
            +
            - app/decorators/models/solidus_reviews/spree/user_decorator.rb
         
     | 
| 
       277 
273 
     | 
    
         
             
            - app/helpers/spree/reviews_helper.rb
         
     | 
| 
       278 
274 
     | 
    
         
             
            - app/models/spree/feedback_review.rb
         
     | 
| 
       279 
     | 
    
         
            -
            - app/models/spree/product_decorator.rb
         
     | 
| 
       280 
275 
     | 
    
         
             
            - app/models/spree/review.rb
         
     | 
| 
       281 
276 
     | 
    
         
             
            - app/models/spree/reviews_ability.rb
         
     | 
| 
       282 
277 
     | 
    
         
             
            - app/models/spree/reviews_configuration.rb
         
     | 
| 
       283 
     | 
    
         
            -
            - app/models/spree/user_decorator.rb
         
     | 
| 
       284 
278 
     | 
    
         
             
            - app/overrides/add_reviews_after_product_properties.rb
         
     | 
| 
       285 
279 
     | 
    
         
             
            - app/overrides/add_reviews_tab_to_admin.rb
         
     | 
| 
       286 
280 
     | 
    
         
             
            - app/overrides/add_reviews_to_admin_configuration_sidebar.rb
         
     | 
| 
         @@ -347,13 +341,13 @@ files: 
     | 
|
| 
       347 
341 
     | 
    
         
             
            - lib/solidus_reviews/factories/review_factory.rb
         
     | 
| 
       348 
342 
     | 
    
         
             
            - lib/spree_reviews/engine.rb
         
     | 
| 
       349 
343 
     | 
    
         
             
            - solidus_reviews.gemspec
         
     | 
| 
       350 
     | 
    
         
            -
            - spec/controllers/admin/feedback_reviews_controller_spec.rb
         
     | 
| 
       351 
     | 
    
         
            -
            - spec/controllers/admin/review_settings_controller_spec.rb
         
     | 
| 
       352 
     | 
    
         
            -
            - spec/controllers/admin/reviews_controller_spec.rb
         
     | 
| 
       353 
     | 
    
         
            -
            - spec/controllers/feedback_reviews_controller_spec.rb
         
     | 
| 
       354 
     | 
    
         
            -
            - spec/controllers/products_controller_spec.rb
         
     | 
| 
       355 
     | 
    
         
            -
            - spec/controllers/reviews_controller_spec.rb
         
     | 
| 
      
 344 
     | 
    
         
            +
            - spec/controllers/spree/admin/feedback_reviews_controller_spec.rb
         
     | 
| 
      
 345 
     | 
    
         
            +
            - spec/controllers/spree/admin/review_settings_controller_spec.rb
         
     | 
| 
      
 346 
     | 
    
         
            +
            - spec/controllers/spree/admin/reviews_controller_spec.rb
         
     | 
| 
       356 
347 
     | 
    
         
             
            - spec/controllers/spree/api/reviews_controller_spec.rb
         
     | 
| 
      
 348 
     | 
    
         
            +
            - spec/controllers/spree/feedback_reviews_controller_spec.rb
         
     | 
| 
      
 349 
     | 
    
         
            +
            - spec/controllers/spree/products_controller_spec.rb
         
     | 
| 
      
 350 
     | 
    
         
            +
            - spec/controllers/spree/reviews_controller_spec.rb
         
     | 
| 
       357 
351 
     | 
    
         
             
            - spec/features/admin_spec.rb
         
     | 
| 
       358 
352 
     | 
    
         
             
            - spec/features/reviews_spec.rb
         
     | 
| 
       359 
353 
     | 
    
         
             
            - spec/helpers/review_helper_spec.rb
         
     | 
| 
         @@ -389,13 +383,13 @@ signing_key: 
     | 
|
| 
       389 
383 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       390 
384 
     | 
    
         
             
            summary: Basic review and ratings facility for Solidus
         
     | 
| 
       391 
385 
     | 
    
         
             
            test_files:
         
     | 
| 
       392 
     | 
    
         
            -
            - spec/controllers/admin/feedback_reviews_controller_spec.rb
         
     | 
| 
       393 
     | 
    
         
            -
            - spec/controllers/admin/review_settings_controller_spec.rb
         
     | 
| 
       394 
     | 
    
         
            -
            - spec/controllers/admin/reviews_controller_spec.rb
         
     | 
| 
       395 
     | 
    
         
            -
            - spec/controllers/feedback_reviews_controller_spec.rb
         
     | 
| 
       396 
     | 
    
         
            -
            - spec/controllers/products_controller_spec.rb
         
     | 
| 
       397 
     | 
    
         
            -
            - spec/controllers/reviews_controller_spec.rb
         
     | 
| 
      
 386 
     | 
    
         
            +
            - spec/controllers/spree/admin/feedback_reviews_controller_spec.rb
         
     | 
| 
      
 387 
     | 
    
         
            +
            - spec/controllers/spree/admin/review_settings_controller_spec.rb
         
     | 
| 
      
 388 
     | 
    
         
            +
            - spec/controllers/spree/admin/reviews_controller_spec.rb
         
     | 
| 
       398 
389 
     | 
    
         
             
            - spec/controllers/spree/api/reviews_controller_spec.rb
         
     | 
| 
      
 390 
     | 
    
         
            +
            - spec/controllers/spree/feedback_reviews_controller_spec.rb
         
     | 
| 
      
 391 
     | 
    
         
            +
            - spec/controllers/spree/products_controller_spec.rb
         
     | 
| 
      
 392 
     | 
    
         
            +
            - spec/controllers/spree/reviews_controller_spec.rb
         
     | 
| 
       399 
393 
     | 
    
         
             
            - spec/features/admin_spec.rb
         
     | 
| 
       400 
394 
     | 
    
         
             
            - spec/features/reviews_spec.rb
         
     | 
| 
       401 
395 
     | 
    
         
             
            - spec/helpers/review_helper_spec.rb
         
     | 
    
        data/.travis.yml
    DELETED
    
    | 
         @@ -1,31 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            cache: bundler
         
     | 
| 
       2 
     | 
    
         
            -
            dist: trusty
         
     | 
| 
       3 
     | 
    
         
            -
            language: ruby
         
     | 
| 
       4 
     | 
    
         
            -
            rvm:
         
     | 
| 
       5 
     | 
    
         
            -
              - 2.4.3
         
     | 
| 
       6 
     | 
    
         
            -
            addons:
         
     | 
| 
       7 
     | 
    
         
            -
              chrome: stable
         
     | 
| 
       8 
     | 
    
         
            -
              apt:
         
     | 
| 
       9 
     | 
    
         
            -
                packages:
         
     | 
| 
       10 
     | 
    
         
            -
                  - chromium-chromedriver
         
     | 
| 
       11 
     | 
    
         
            -
            before_install:
         
     | 
| 
       12 
     | 
    
         
            -
              - ln -s /usr/lib/chromium-browser/chromedriver ~/bin/chromedriver
         
     | 
| 
       13 
     | 
    
         
            -
            before_script:
         
     | 
| 
       14 
     | 
    
         
            -
              - export DISPLAY=:99.0
         
     | 
| 
       15 
     | 
    
         
            -
              - sh -e /etc/init.d/xvfb start
         
     | 
| 
       16 
     | 
    
         
            -
              - sleep 3 # give xvfb some time to start
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
            env:
         
     | 
| 
       19 
     | 
    
         
            -
              matrix:
         
     | 
| 
       20 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.5 DB=postgres
         
     | 
| 
       21 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.6 DB=postgres
         
     | 
| 
       22 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.7 DB=postgres
         
     | 
| 
       23 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.8 DB=postgres
         
     | 
| 
       24 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.9 DB=postgres
         
     | 
| 
       25 
     | 
    
         
            -
                - SOLIDUS_BRANCH=master DB=postgres
         
     | 
| 
       26 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.5 DB=mysql
         
     | 
| 
       27 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.6 DB=mysql
         
     | 
| 
       28 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.7 DB=mysql
         
     | 
| 
       29 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.8 DB=mysql
         
     | 
| 
       30 
     | 
    
         
            -
                - SOLIDUS_BRANCH=v2.9 DB=mysql
         
     | 
| 
       31 
     | 
    
         
            -
                - SOLIDUS_BRANCH=master DB=mysql
         
     | 
| 
         @@ -1,21 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # frozen_string_literal: true
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            Spree::Api::ApiHelpers.module_eval do
         
     | 
| 
       4 
     | 
    
         
            -
              @@review_attributes = [
         
     | 
| 
       5 
     | 
    
         
            -
                :id, :product_id, :name, :location, :rating, :title, :review, :approved,
         
     | 
| 
       6 
     | 
    
         
            -
                :created_at, :updated_at, :user_id, :ip_address, :locale, :show_identifier,
         
     | 
| 
       7 
     | 
    
         
            -
                :verified_purchaser
         
     | 
| 
       8 
     | 
    
         
            -
              ]
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
              @@feedback_review_attributes = [
         
     | 
| 
       11 
     | 
    
         
            -
                :id, :user_id, :review_id, :rating, :comment, :created_at, :updated_at, :locale
         
     | 
| 
       12 
     | 
    
         
            -
              ]
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
              def review_attributes
         
     | 
| 
       15 
     | 
    
         
            -
                @@review_attributes
         
     | 
| 
       16 
     | 
    
         
            -
              end
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
              def feedback_review_attributes
         
     | 
| 
       19 
     | 
    
         
            -
                @@feedback_review_attributes
         
     | 
| 
       20 
     | 
    
         
            -
              end
         
     | 
| 
       21 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,22 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # frozen_string_literal: true
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            # Add access to reviews/ratings to the product model
         
     | 
| 
       4 
     | 
    
         
            -
            Spree::Product.class_eval do
         
     | 
| 
       5 
     | 
    
         
            -
              has_many :reviews
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
              def stars
         
     | 
| 
       8 
     | 
    
         
            -
                avg_rating.try(:round) || 0
         
     | 
| 
       9 
     | 
    
         
            -
              end
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
              def recalculate_rating
         
     | 
| 
       12 
     | 
    
         
            -
                reviews_count = reviews.reload.default_approval_filter.count
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
                self.reviews_count = reviews_count
         
     | 
| 
       15 
     | 
    
         
            -
                if reviews_count > 0
         
     | 
| 
       16 
     | 
    
         
            -
                  self.avg_rating = '%.1f' % (reviews.default_approval_filter.sum(:rating).to_f / reviews_count)
         
     | 
| 
       17 
     | 
    
         
            -
                else
         
     | 
| 
       18 
     | 
    
         
            -
                  self.avg_rating = 0
         
     | 
| 
       19 
     | 
    
         
            -
                end
         
     | 
| 
       20 
     | 
    
         
            -
                save
         
     | 
| 
       21 
     | 
    
         
            -
              end
         
     | 
| 
       22 
     | 
    
         
            -
            end
         
     |