1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
| [
| {
| "name": "scalar",
| "expression": "sample_weight_a1 * factor_b2 / volume_c3",
| "slots": {"sample_weight_a1": "DECIMAL", "factor_b2": "DECIMAL", "volume_c3": "DECIMAL"},
| "inputs": {"sample_weight_a1": "10", "factor_b2": "2", "volume_c3": "4"},
| "expectedRaw": "5"
| },
| {
| "name": "condition",
| "expression": "IF(IS_BLANK(observed_a1), fallback_b2, observed_a1)",
| "slots": {"observed_a1": "DECIMAL", "fallback_b2": "DECIMAL"},
| "inputs": {"observed_a1": null, "fallback_b2": "7"},
| "expectedRaw": "7"
| },
| {
| "name": "rounding",
| "expression": "measured_a1 / divisor_b2",
| "slots": {"measured_a1": "DECIMAL", "divisor_b2": "DECIMAL"},
| "inputs": {"measured_a1": "10", "divisor_b2": "3"},
| "roundScale": 2,
| "roundMode": "HALF_UP",
| "expectedRaw": "3.333333333333333333333333333333333",
| "expectedRounded": "3.33"
| },
| {
| "name": "mean",
| "expression": "MEAN(replicates_a1)",
| "slots": {"replicates_a1": "DECIMAL_LIST"},
| "inputs": {"replicates_a1": ["1", "2", "3"]},
| "expectedRaw": "2"
| },
| {
| "name": "stddev",
| "expression": "STDDEV_S(replicates_a1)",
| "slots": {"replicates_a1": "DECIMAL_LIST"},
| "inputs": {"replicates_a1": ["1", "2", "3"]},
| "expectedRaw": "1"
| },
| {
| "name": "rsd",
| "expression": "RSD(replicates_a1)",
| "slots": {"replicates_a1": "DECIMAL_LIST"},
| "inputs": {"replicates_a1": ["1", "2", "3"]},
| "expectedRaw": "50"
| },
| {
| "name": "linear_curve",
| "expression": "(absorbance_a1 - intercept_b2) / slope_c3 * dilution_d4",
| "slots": {"absorbance_a1": "DECIMAL", "intercept_b2": "DECIMAL", "slope_c3": "DECIMAL", "dilution_d4": "DECIMAL"},
| "inputs": {"absorbance_a1": "0.9", "intercept_b2": "0.1", "slope_c3": "0.2", "dilution_d4": "2"},
| "expectedRaw": "8"
| },
| {
| "name": "lookup_exact",
| "expression": "LOOKUP_EXACT(level_a1, 1, 10, 2, 20, 3, 30)",
| "slots": {"level_a1": "DECIMAL"},
| "inputs": {"level_a1": "2"},
| "expectedRaw": "20"
| },
| {
| "name": "lookup_linear",
| "expression": "LOOKUP_LINEAR(level_a1, 0, 0, 10, 0.8, 20, 1.6)",
| "slots": {"level_a1": "DECIMAL"},
| "inputs": {"level_a1": "5"},
| "expectedRaw": "0.4"
| },
| {
| "name": "unit",
| "expression": "CONVERT(weight_mg_a1, \"mg\", \"g\")",
| "slots": {"weight_mg_a1": "DECIMAL"},
| "inputs": {"weight_mg_a1": "1500"},
| "expectedRaw": "1.5"
| },
| {
| "name": "specified_base_logarithm",
| "expression": "LOG(8, 2)",
| "slots": {},
| "inputs": {},
| "expectedRaw": "3"
| },
| {
| "name": "odd_root",
| "expression": "NTH_ROOT(-27, 3)",
| "slots": {},
| "inputs": {},
| "expectedRaw": "-3"
| },
| {
| "name": "population_variance",
| "expression": "VAR_P(replicates_a1)",
| "slots": {"replicates_a1": "DECIMAL_LIST"},
| "inputs": {"replicates_a1": ["1", "3"]},
| "expectedRaw": "1"
| },
| {
| "name": "geometric_mean",
| "expression": "GEOMEAN(replicates_a1)",
| "slots": {"replicates_a1": "DECIMAL_LIST"},
| "inputs": {"replicates_a1": ["1", "4"]},
| "expectedRaw": "2"
| },
| {
| "name": "weighted_mean",
| "expression": "WEIGHTED_MEAN(results_a1, weights_b2)",
| "slots": {"results_a1": "DECIMAL_LIST", "weights_b2": "DECIMAL_LIST"},
| "inputs": {"results_a1": ["10", "20"], "weights_b2": ["1", "3"]},
| "expectedRaw": "17.5"
| },
| {
| "name": "linear_prediction",
| "expression": "LINEAR_PREDICT(4, x_values_a1, y_values_b2)",
| "slots": {"x_values_a1": "DECIMAL_LIST", "y_values_b2": "DECIMAL_LIST"},
| "inputs": {"x_values_a1": ["1", "2", "3"], "y_values_b2": ["3", "5", "7"]},
| "expectedRaw": "9"
| },
| {
| "name": "significant_digits_rounding",
| "expression": "ROUND_SIG_HALF_EVEN(1.245, 3)",
| "slots": {},
| "inputs": {},
| "expectedRaw": "1.24"
| },
| {
| "name": "missing_input",
| "expression": "required_a1 + 1",
| "slots": {"required_a1": "DECIMAL"},
| "inputs": {},
| "errorCode": "MISSING_INPUT"
| },
| {
| "name": "divide_zero",
| "expression": "1 / zero_a1",
| "slots": {"zero_a1": "DECIMAL"},
| "inputs": {"zero_a1": "0"},
| "errorCode": "DIVIDE_BY_ZERO"
| },
| {
| "name": "type_mismatch",
| "expression": "text_a1 + 1",
| "slots": {"text_a1": "TEXT"},
| "inputs": {"text_a1": "abc"},
| "errorCode": "TYPE_MISMATCH"
| },
| {
| "name": "unknown_parameter",
| "expression": "unknown_a1 + 1",
| "slots": {},
| "inputs": {},
| "errorCode": "UNKNOWN_PARAMETER"
| },
| {
| "name": "unknown_function",
| "expression": "EXECUTE(1)",
| "slots": {},
| "inputs": {},
| "errorCode": "UNKNOWN_FUNCTION"
| },
| {
| "name": "unordered_lookup",
| "expression": "LOOKUP_LINEAR(5, 10, 1, 0, 0)",
| "slots": {},
| "inputs": {},
| "errorCode": "LOOKUP_POINTS_NOT_INCREASING"
| },
| {
| "name": "insufficient_sample",
| "expression": "STDDEV_S(replicates_a1)",
| "slots": {"replicates_a1": "DECIMAL_LIST"},
| "inputs": {"replicates_a1": ["1"]},
| "errorCode": "INSUFFICIENT_SAMPLE"
| },
| {
| "name": "resource_limit",
| "expression": "(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((1)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",
| "slots": {},
| "inputs": {},
| "errorCode": "AST_DEPTH_EXCEEDED"
| }
| ]
|
|