Skip to content

Conversation

DFrenkel
Copy link
Contributor

@DFrenkel DFrenkel commented May 6, 2025

Also: implementing internal.member_3 for compliance testing

Resolves #12

Also: implementing internal.member_3 for compliance testing

Resolves open-policy-agent#12

Signed-off-by: Dmitry Frenkel <[email protected]>
@DFrenkel
Copy link
Contributor Author

DFrenkel commented May 6, 2025

Compliance tests contain two failures and the rest are passing:

Build complete! (0.19s)
	✅ aggregates/test-aggregates-0003.json: aggregates/count keys -> eval
	✅ aggregates/test-aggregates-0001.json: aggregates/count -> eval
	✅ aggregates/test-aggregates-0004.json: aggregates/count keys virtual -> eval
	✅ aggregates/test-aggregates-0005.json: aggregates/count set -> eval
	✅ aggregates/test-aggregates-0016.json: aggregates/max virtual set -> eval
	✅ aggregates/test-aggregates-0009.json: aggregates/sum virtual set -> eval
	✅ aggregates/test-aggregates-0015.json: aggregates/max virtual -> eval
	✅ aggregates/test-aggregates-0002.json: aggregates/count virtual -> eval
	✅ aggregates/test-aggregates-0008.json: aggregates/sum virtual -> eval
	✅ aggregates/test-aggregates-0006.json: aggregates/sum -> eval
	✅ aggregates/test-aggregates-0014.json: aggregates/max set -> eval
	✅ aggregates/test-aggregates-0013.json: aggregates/max -> eval
	✅ aggregates/test-aggregates-0012.json: aggregates/product set -> eval
	✅ aggregates/test-aggregates-0011.json: aggregates/product -> eval
	✅ aggregates/test-aggregates-0010.json: aggregates/bug 2469 - precision -> eval
	✅ aggregates/test-aggregates-0007.json: aggregates/sum set -> eval
	✅ aggregates/test-aggregates-0017.json: aggregates/min -> eval
	✅ aggregates/test-aggregates-0020.json: aggregates/min set -> eval
	✅ aggregates/test-aggregates-0018.json: aggregates/min dups -> eval
	✅ aggregates/test-aggregates-0019.json: aggregates/min out-of-order -> eval
	✅ aggregates/test-aggregates-0023.json: aggregates/reduce ref dest -> eval
	✅ aggregates/test-aggregates-0021.json: aggregates/min virtual -> eval
	✅ aggregates/test-aggregates-0025.json: aggregates/sort -> eval
	✅ aggregates/test-aggregates-0024.json: aggregates/reduce ref dest (2) -> eval
	✅ aggregates/test-aggregates-0022.json: aggregates/min virtual set -> eval
	✅ aggregates/test-aggregates-0027.json: aggregates/count string -> eval
	✅ aggregates/test-aggregates-0026.json: aggregates/sort set -> eval
	✅ aggregates/test-aggregates-0028.json: aggregates/count error null -> eval
	✅ aggregates/test-aggregates-0027.json: aggregates/count string -> eval
↳ 	❌ aggregates/test-aggregates-bad-utf8-runes.json: aggregates/count with invalid utf-8 chars (0xFFFD) -> eval: testAssertionFailed(expected: AST.RegoValue.array([AST.RegoValue.object([AST.RegoValue.string("x"): AST.RegoValue.array([AST.RegoValue.number(30)])])]), actual: AST.RegoValue.array([AST.RegoValue.object([AST.RegoValue.string("x"): AST.RegoValue.array([])])]))
	✅ aggregates/test-membership.json: aggregates/member simple, set -> eval
	✅ aggregates/test-aggregates-0028.json: aggregates/count error number -> eval
	✅ aggregates/test-membership.json: aggregates/member simple, array -> eval
	✅ aggregates/test-membership.json: aggregates/member simple, object -> eval
	✅ aggregates/test-membership.json: aggregates/member array with index -> eval
	✅ aggregates/test-membership.json: aggregates/member array with index, nested -> eval
	✅ aggregates/test-membership.json: aggregates/member object with key, nested, associativity without parens -> eval
	✅ aggregates/test-membership.json: aggregates/member array with index, nested, associativity without parens -> eval
	✅ aggregates/test-membership.json: aggregates/member object with key -> eval
	✅ aggregates/test-membership.json: aggregates/member object with key, nested -> eval
	✅ aggregates/test-membership.json: aggregates/member simple false, array -> eval
	✅ aggregates/test-membership.json: aggregates/member simple false, set -> eval
	✅ aggregates/test-membership.json: aggregates/member operator precedence with other infix operator (+) -> eval
	✅ aggregates/test-membership.json: aggregates/member with not -> eval
	✅ aggregates/test-membership.json: aggregates/member simple false, object -> eval
	✅ aggregates/test-membership.json: aggregates/member chained -> eval
	✅ aggregates/test-membership.json: aggregates/member with vars -> eval
	✅ aggregates/test-membership.json: aggregates/member operator precedence in list (set) -> eval
	✅ aggregates/test-membership.json: aggregates/member operator precedence in list with parens (set) -> eval
	✅ aggregates/test-membership.json: aggregates/member operator precedence in list with parens (array) -> eval
	✅ aggregates/test-membership.json: aggregates/member operator precedence in list (array) -> eval
	✅ aggregates/test-membership.json: aggregates/member operator precedence in list (fun args) -> eval
	✅ aggregates/test-membership.json: aggregates/member non-collection string -> eval
	✅ aggregates/test-membership.json: aggregates/member operator precedence in list with parens (fun args) -> eval
	✅ aggregates/test-membership.json: aggregates/member composite containee -> eval
	✅ aggregates/test-membership.json: aggregates/member non-collection number -> eval
	✅ aggregates/test-membership.json: aggregates/member+some ground value -> eval
	✅ aggregates/test-membership.json: aggregates/member with key in non-collection (number) -> eval
	✅ aggregates/test-membership.json: aggregates/member+some simple, array -> eval
↳ 	❌ aggregates/test-membership.json: aggregates/member+some containee is call -> eval: testFailed(reason: "unexpected evaluation error: builtinNotFound(name: \"numbers.range\")", error: Optional(Rego.BuiltinRegistry.RegistryError.builtinNotFound(name: "numbers.range")))
	✅ aggregates/test-membership.json: aggregates/member+some ground composite containee -> eval
	✅ aggregates/test-membership.json: aggregates/member+some non-ground composite containee -> eval
	✅ aggregates/test-membership.json: aggregates/member+some ground composite containee (false) -> eval
	✅ aggregates/test-membership.json: aggregates/member+some+key non-ground value -> eval
	✅ aggregates/test-membership.json: aggregates/member+some+key non-ground key -> eval
	✅ aggregates/test-membership.json: aggregates/member+some non-ground composite containee, multiple bindings -> eval
	✅ aggregates/test-membership.json: aggregates/member+some+key non-ground key+value -> eval
	✅ aggregates/test-membership.json: aggregates/member+some+key non-ground, composite key -> eval
	✅ aggregates/test-membership.json: aggregates/member+some+ref -> eval
	✅ aggregates/test-membership.json: aggregates/member+some+key+ref -> eval
	✅ aggregates/test-membership.json: aggregates/member+some+key+ref with other variable -> eval
	✅ aggregates/test-membership.json: aggregates/member+some+with -> eval
make: *** [test-compliance] Error 1

@DFrenkel DFrenkel marked this pull request as ready for review May 6, 2025 20:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

builtins: implement aggregates sum, product and sort
1 participant