Sha256: 4f07544c33adf5795ce3d5c6aa2f309e6c396dbb34a6cdcf6a0ca8991734784c

Contents?: true

Size: 1.46 KB

Versions: 62

Compression:

Stored size: 1.46 KB

Contents

require 'test_helper'

module Workarea
  module Insights
    class MostDiscountedProductsTest < TestCase
      def test_generate_weekly!
        create_product_by_week(
          product_id: 'foo',
          orders: 1,
          discount_rate: 0,
          reporting_on: Time.current.last_week
        )
        create_product_by_week(
          product_id: 'bar',
          orders: 4,
          average_discount: 0.1,
          discount_rate: 0.25,
          reporting_on: Time.current.last_week
        )
        create_product_by_week(
          product_id: 'baz',
          orders: 4,
          average_discount: 0.07,
          discount_rate: 0.25,
          reporting_on: Time.current.last_week
        )
        create_product_by_week(
          product_id: 'qoo',
          orders: 4,
          average_discount: 0.1,
          discount_rate: 0.3,
          reporting_on: 2.weeks.ago
        )

        MostDiscountedProducts.generate_weekly!
        assert_equal(1, MostDiscountedProducts.count)

        most_discounted_products = MostDiscountedProducts.first
        assert_equal(2, most_discounted_products.results.size)
        assert_equal('bar', most_discounted_products.results.first['product_id'])
        assert_equal(0.1, most_discounted_products.results.first['average_discount'])
        assert_equal('baz', most_discounted_products.results.second['product_id'])
        assert_equal(0.07, most_discounted_products.results.second['average_discount'])
      end
    end
  end
end

Version data entries

62 entries across 62 versions & 1 rubygems

Version Path
workarea-core-3.5.27 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.26 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.4.45 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.25 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.23 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.4.44 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.22 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.4.43 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.21 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.4.42 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.20 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.4.41 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.19 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.4.40 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.18 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.4.39 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.17 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.4.38 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.5.16 test/models/workarea/insights/most_discounted_products_test.rb
workarea-core-3.4.37 test/models/workarea/insights/most_discounted_products_test.rb