# Copyright 2018 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

################################################################################
# This file contains the Metrics and EncodingConfigs used in encoder_test.cc
#
# It is compiled into encoder_test_config.h which is included into the test.
################################################################################

################################################################################
#  Metrics
################################################################################
metric_configs:
# Metric 1 has one string part, and local time_zone_policy.
- id: 1
  name: "SingleString"
  time_zone_policy: LOCAL
  parts:
    "Part1":

# Metric 2 has one integer part, and UTC time_zone_policy.
- id: 2
  name: "SingleInt"
  time_zone_policy: UTC
  parts:
    "Part1":
      data_type: INT

# Metric 3 has one blob part, and local time_zone_policy.
- id: 3
  name: "SingleBlob"
  time_zone_policy: LOCAL
  parts:
    "Part1":
      data_type: BLOB

# Metric 4 has one String part and one int part, and UTC time_zone_policy.
- id: 4
  name: "CityRating"
  time_zone_policy: UTC
  parts:
    "city":
      data_type: STRING
    "rating":
      data_type: INT

# Metric 5 is missing a time_zone_policy
- id: 5
  name: "NoTimeZone"
  parts:
    "Part1":

# Metric 6 has an INDEX part.
- id: 6
  name: "IndexPart"
  time_zone_policy: UTC
  parts:
    "Part1":
      data_type: INDEX

# Metric 7 has a DOUBLE part.
- id: 7
  name: "DoublePart"
  time_zone_policy: UTC
  parts:
    "Part1":
      data_type: DOUBLE

# Metric 8 has an int distribution part.
- id: 8
  name: "IntDistribution"
  time_zone_policy: UTC
  parts:
    "Part1":
      data_type: INT
      int_buckets:
        linear:
          floor: 0
          num_buckets: 10
          step_size: 5

# Metric 9 has a single string part and a system_profile_field selector.
- id: 9
  name: "OneSystemProfileField"
  time_zone_policy: LOCAL
  parts:
    "Part1":
  system_profile_field:
    - BOARD_NAME

 # Metric 10 has a single string part and 2 system_profile_field selectors.
- id: 10
  name: "TwoSystemProfileFields"
  time_zone_policy: LOCAL
  parts:
    "Part1":
  system_profile_field:
    - BOARD_NAME
    - ARCH

# Metric 11 has a single string part and 3 system_profile_field selectors.
- id: 11
  name: "ThreeSystemProfileFields"
  time_zone_policy: LOCAL
  parts:
    "Part1":
  system_profile_field:
    - BOARD_NAME
    - ARCH
    - OS

# Metric 12 has a single string part and 4 system_profile_field selectors.
- id: 12
  name: "FourSystemProfileFields"
  time_zone_policy: LOCAL
  parts:
    "Part1":
  system_profile_field:
    - BOARD_NAME
    - ARCH
    - OS
    - PRODUCT_NAME

################################################################################
#  EncodingConfigs
################################################################################
encoding_configs:

# EncodingConfig 1 is Forculus.
- id: 1
  name: "Forculus"
  forculus:
    threshold: 20

# EncodingConfig 2 is String RAPPOR.
- id: 2
  name: "Rappor"
  rappor:
    num_bloom_bits: 8
    num_hashes: 2
    num_cohorts: 20
    prob_0_becomes_1: 0.25
    prob_1_stays_1: 0.75

# EncodingConfig 3 is Basic RAPPOR with string categories.
- id: 3
  name: "BasicStringRappor"
  basic_rappor:
    prob_0_becomes_1: 0.25
    prob_1_stays_1: 0.75
    string_categories:
      category:
      - "Apple"
      - "Banana"
      - "Cantaloupe"

# EncodingConfig 4 is Basic RAPPOR with int categories.
- id: 4
  name: "BasicIntRappor"
  basic_rappor:
    prob_0_becomes_1: 0.25
    prob_1_stays_1: 0.75
    int_range_categories:
      first: 123
      last:  234

# EncodingConfig 5 is Forculus with a missing threshold.
- id: 5
  name: "InvalidForculus"
  forculus:

# EncodingConfig 6 is String RAPPOR with many missing values.
- id: 6
  name: "InvalidRappor"
  rappor:

# EncodingConfig 7 is the NoOp encoding.
- id: 7
  name: "NoOp"
  no_op_encoding:

# EncodingConfig 8 is Basic RAPPOR with 5 INDEXed categories.
- id: 8
  name: "BasicRappor5Categories"
  basic_rappor:
    prob_0_becomes_1: 0.25
    prob_1_stays_1: 0.75
    indexed_categories:
      num_categories: 5
