activecube 0.1.6 → 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 369247513801c454ee5bddd94d9d16b5e76a09a564b1461fd6910aeff50f512f
4
- data.tar.gz: eb104eb20d315005026cde81d06d465aa68d4d450f0c27450afb44e6c6aa8d3d
3
+ metadata.gz: 58abc46788d6405f4264021a2d44ec5c32897320f3e638a4bef488d6d1f8623e
4
+ data.tar.gz: 1983aed78ff1620d4a245c8331eea914799858767a4cefca709ca712ebaa1ba9
5
5
  SHA512:
6
- metadata.gz: f69aa684221fa54d01d8010816b895aa625a5454f02f4571757aec758dcb574121eca001bd7a6dbf2eac2579e6197829bafd8e983218af975868f15cff54c277
7
- data.tar.gz: 91edb538973ff684ef2bc0eaeeee508176396802d3e48179b18644e084fc744793dbf3fa0f71f2a2b77f018d59b503b12727ad7e76e8f0374f13caaf0644f1f1
6
+ metadata.gz: a873534468c55ba0589e654fb4be15a97af8bca6c325a0d7a760e743745d83aaa2155d05b6d5c89f5bbdcb2bbc21b3cd643c87786055a2a9c56a1fa974f649f4
7
+ data.tar.gz: '04028fcae1197fcc7fecb586f1c081a8a6d4b87dd9a59c31471388ea9686fe3a972a73f0e28ee05bb750e47071e7e4be175ba7dd4de827a5fdc038d56dd701b3'
@@ -9,7 +9,7 @@ GIT
9
9
  PATH
10
10
  remote: .
11
11
  specs:
12
- activecube (0.1.5)
12
+ activecube (0.1.6)
13
13
  activerecord (>= 5.2)
14
14
 
15
15
  GEM
@@ -9,7 +9,7 @@ module Activecube
9
9
  attr_reader :column_names
10
10
 
11
11
  def column_name
12
- raise "Not defined column for a a dimension or metric #{self.name}" if column_names.empty?
12
+ raise "Not defined column for a dimension or metric #{self.name}" if !column_names || column_names.empty?
13
13
  raise "Defined more than one column for a dimension or metric #{self.name}" if column_names.count>1
14
14
  column_names.first
15
15
  end
@@ -64,7 +64,7 @@ module Activecube::Processor
64
64
  }.sort_by(&:cardinality).last
65
65
  by.add_table table, max_cardinality_index
66
66
  }
67
- raise "Metric #{measure.key} #{measure.definition.name} can not be measured by any of tables #{tables.map(&:name).join(',')}" if by.tables.empty?
67
+ raise "Metric #{measure.key} #{measure.definition.try(:name) || measure.class.name} can not be measured by any of tables #{tables.map(&:name).join(',')}" if by.tables.empty?
68
68
  by
69
69
  end
70
70
  end
@@ -9,10 +9,18 @@ module Activecube
9
9
  end
10
10
 
11
11
  def append_query _model, _cube_query, _table, query
12
- text = argument.to_s.split(',').map{|s| "`#{s}`"}.join(',')
12
+ text = argument.to_s.split(',').map{|s| quote s}.join(',')
13
13
  query.order(::Arel.sql(text).send(direction))
14
14
  end
15
15
 
16
+ def quote s
17
+ if s =~ /^[\w\.]+$/
18
+ "`#{s}`"
19
+ else
20
+ s
21
+ end
22
+ end
23
+
16
24
  end
17
25
  end
18
26
  end
@@ -1,3 +1,3 @@
1
1
  module Activecube
2
- VERSION = "0.1.6"
2
+ VERSION = "0.1.7"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activecube
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aleksey Studnev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-03-05 00:00:00.000000000 Z
11
+ date: 2020-03-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord