appsignal 1.0.6.beta.1 → 1.0.6.beta.2

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
  SHA1:
3
- metadata.gz: acdf1abaf8e28ece92633d3811f1507e3ca47be7
4
- data.tar.gz: 01d1115a37e6211d864d84fcd8f51860a1f42b1f
3
+ metadata.gz: b979db89166d70acac33e58f33f912dde356aa06
4
+ data.tar.gz: 1b2dcab9192b2301bfc5e770f77a745d78698e74
5
5
  SHA512:
6
- metadata.gz: 857b968f8a8f579832cb38c295e57e91c6b5b9a5a6804b5958d4f294632e9830784aa4700501a07189a79477aa3a69898867dae284a43a58536eaad197365fe4
7
- data.tar.gz: 0d9ddad04d854d97990818e5c128b95f073293158ef0cc53fb6680b1b96b440954f9356c39e8569c227cd6ddb4e54bf7636ca439d207c1475e7c5980442d878f
6
+ metadata.gz: f3da81c4fc05f43e93cf8d45acdc782c0864a62a7d32e9022d1cb874677816dcb4a4f8c9b0d97cdddae8f86c01c944d9cc2bbd607e1c8dc32b0248b9d97b11a9
7
+ data.tar.gz: 0396a94b49280e5ab31b196bf783e88d8edec2ea62e9512c4f96844b5f3e026322186fbe7c485f69b7bda6fbedb7e51b1afab346ca0faed6ea33b32d06cb921c
@@ -5,7 +5,11 @@ module Appsignal
5
5
  register 'sql.active_record'
6
6
 
7
7
  def format(payload)
8
- [payload[:name], payload[:sql], SQL_BODY_FORMAT]
8
+ [
9
+ payload[:name],
10
+ Appsignal::Utils.encode_utf8(payload[:sql]),
11
+ SQL_BODY_FORMAT
12
+ ]
9
13
  end
10
14
  end
11
15
  end
@@ -38,11 +38,7 @@ module Appsignal
38
38
  def self.jsonify(value)
39
39
  case value
40
40
  when String
41
- value.encode(
42
- 'utf-8',
43
- :invalid => :replace,
44
- :undef => :replace
45
- )
41
+ encode_utf8(value)
46
42
  when Numeric, NilClass, TrueClass, FalseClass
47
43
  value
48
44
  when Hash
@@ -53,5 +49,13 @@ module Appsignal
53
49
  jsonify(value.to_s)
54
50
  end
55
51
  end
52
+
53
+ def self.encode_utf8(value)
54
+ value.encode(
55
+ 'utf-8'.freeze,
56
+ :invalid => :replace,
57
+ :undef => :replace
58
+ )
59
+ end
56
60
  end
57
61
  end
@@ -1,5 +1,5 @@
1
1
  require 'yaml'
2
2
 
3
3
  module Appsignal
4
- VERSION = '1.0.6.beta.1'
4
+ VERSION = '1.0.6.beta.2'
5
5
  end
@@ -90,4 +90,14 @@ describe Appsignal::Utils do
90
90
  it { should == "{\"field_one\":\"aa\",\"field_two\":\"aa�\",\"field_three\":[\"one\",\"aa�\"],\"field_four\":{\"one\":\"aa�\"}}" }
91
91
  end
92
92
  end
93
+
94
+ describe ".encode_utf8" do
95
+ subject { Appsignal::Utils.encode_utf8(value) }
96
+
97
+ context "value with invalid utf-8 content" do
98
+ let(:value) { [0x61, 0x61, 0x85].pack('c*') }
99
+
100
+ it { should == "aa�" }
101
+ end
102
+ end
93
103
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appsignal
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6.beta.1
4
+ version: 1.0.6.beta.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Beekman