prefab-cloud-ruby 0.23.4 → 0.23.5

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: 74e19eed1d40cad8e3ea9b99a8755c90864a97b4a00e08d2df6a9fe5226f5ad0
4
- data.tar.gz: 4ad94565a39139d01795007077128d8f997c05e6a8b785e019ca8b66308df5c5
3
+ metadata.gz: 24a51f70838a78fdb76b79565fa4c8a28983d95cba2faa486e6bfdd71e095a98
4
+ data.tar.gz: b559a16d49be776460fe65df55791ff1aa95a2d2a7b655698f9cc434306514ba
5
5
  SHA512:
6
- metadata.gz: 7a10679fe049175ebaf01f12194f91bea1a98ce226bf0e0f3e87aea3ab299c888fb7cebfe67b942e77dc46367c9b05cc5acaf995870e1d6ee1f2b8aa744f2fa3
7
- data.tar.gz: c6e506da285ae5f7913f81891e7f32a1b5365f1071bc90323f317aa2523fddb0bd41c2d8a53decf2afec000e234d535713e198f3ac8b4c98259c7904f03ce7ad
6
+ metadata.gz: a9365864e53a40214bce51cd9ce0ddc887def06a02a689263d62328964b8344911021363468ec0b5e1bb02568fc07f66ba8f9247cadf8b8215ad1fc628323db9
7
+ data.tar.gz: 68e93df7c02776894411605d3fbc48d16828bd94d0ae6a7034b713d601916a496a0218b5f76f29f9110661cd2d98a7dc55a3e0118890456e75d80004178b0323
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.23.4
1
+ 0.23.5
@@ -87,7 +87,9 @@ module Prefab
87
87
 
88
88
  case criterion_value_or_values
89
89
  when Google::Protobuf::RepeatedField
90
- criterion_value_or_values.include?(value_from_properties)
90
+ # we to_s the value from properties for comparison because the
91
+ # criterion_value_or_values is a list of strings
92
+ criterion_value_or_values.include?(value_from_properties.to_s)
91
93
  else
92
94
  criterion_value_or_values == value_from_properties
93
95
  end
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: prefab-cloud-ruby 0.23.4 ruby lib
5
+ # stub: prefab-cloud-ruby 0.23.5 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "prefab-cloud-ruby".freeze
9
- s.version = "0.23.4"
9
+ s.version = "0.23.5"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib".freeze]
13
13
  s.authors = ["Jeff Dwyer".freeze]
14
- s.date = "2023-04-12"
14
+ s.date = "2023-04-13"
15
15
  s.description = "Feature Flags, Live Config, and Dynamic Log Levels as a service".freeze
16
16
  s.email = "jdwyer@prefab.cloud".freeze
17
17
  s.extra_rdoc_files = [
@@ -505,6 +505,43 @@ class TestCriteriaEvaluator < Minitest::Test
505
505
  assert_equal DEFAULT_VALUE, evaluator.evaluate({ email: 'example@gmail.com', admin: true, deleted: true }).string
506
506
  end
507
507
 
508
+ def test_stringifying_property_values_and_names
509
+ config = Prefab::Config.new(
510
+ key: KEY,
511
+ rows: [
512
+ DEFAULT_ROW,
513
+ Prefab::ConfigRow.new(
514
+ project_env_id: PROJECT_ENV_ID,
515
+ values: [
516
+ Prefab::ConditionalValue.new(
517
+ criteria: [
518
+ Prefab::Criterion.new(
519
+ operator: Prefab::Criterion::CriterionOperator::PROP_IS_ONE_OF,
520
+ value_to_match: string_list(%w[1 true hello]),
521
+ property_name: 'team_name'
522
+ )
523
+ ],
524
+ value: Prefab::ConfigValue.new(string: DESIRED_VALUE)
525
+ )
526
+ ]
527
+ )
528
+ ]
529
+ )
530
+
531
+ evaluator = Prefab::CriteriaEvaluator.new(config, project_env_id: PROJECT_ENV_ID, resolver: nil,
532
+ base_client: nil)
533
+
534
+ assert_equal DEFAULT_VALUE, evaluator.evaluate({}).string
535
+ assert_equal DEFAULT_VALUE, evaluator.evaluate({ team_name: 'prefab.cloud' }).string
536
+
537
+ [1, true, :hello].each do |value|
538
+ [:team_name, 'team_name'].each do |property_name|
539
+ assert_equal DESIRED_VALUE, evaluator.evaluate({ property_name => value }).string
540
+ assert_equal DESIRED_VALUE, evaluator.evaluate({ property_name => value.to_s }).string
541
+ end
542
+ end
543
+ end
544
+
508
545
  private
509
546
 
510
547
  def string_list(values)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prefab-cloud-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.23.4
4
+ version: 0.23.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Dwyer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-04-12 00:00:00.000000000 Z
11
+ date: 2023-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby