# Copyright 2020 Google LLC
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Things are easiest for everyone if these source paths are absolute.
_tests = get_path_info("../tests", "abspath")

sksl_fp_error_tests = [
  "$_tests/sksl/errors/GrBadIn.fp",
  "$_tests/sksl/errors/GrBothExplicitReturnAndSkOutColor.fp",
  "$_tests/sksl/errors/GrCannotReturnWithSkOutColor.fp",
  "$_tests/sksl/errors/GrMainParameterWrongType.fp",
  "$_tests/sksl/errors/GrMainTooManyParameters.fp",
  "$_tests/sksl/errors/GrNoFragmentProcessorConstruction.fp",
  "$_tests/sksl/errors/GrNoFragmentProcessorExpressions.fp",
  "$_tests/sksl/errors/GrNoFragmentProcessorLocals.fp",
  "$_tests/sksl/errors/GrNoFragmentProcessorParams.fp",
  "$_tests/sksl/errors/GrNoFragmentProcessorReturn.fp",
  "$_tests/sksl/errors/GrRecursion.fp",
]

sksl_fp_tests = [
  "$_tests/sksl/fp/GrChildProcessorAndGlobal.fp",
  "$_tests/sksl/fp/GrChildProcessorFieldAccess.fp",
  "$_tests/sksl/fp/GrChildProcessorInlineFieldAccess.fp",
  "$_tests/sksl/fp/GrChildProcessorSampleCoords.fp",
  "$_tests/sksl/fp/GrChildProcessorSampleMatrixAndCoords.fp",
  "$_tests/sksl/fp/GrChildProcessorSampleMatrixConstant.fp",
  "$_tests/sksl/fp/GrChildProcessorSampleMatrixConstantAndCoords.fp",
  "$_tests/sksl/fp/GrChildProcessorSampleMatrixMultipleUniforms.fp",
  "$_tests/sksl/fp/GrChildProcessorSampleMatrixSingleInUniform.fp",
  "$_tests/sksl/fp/GrChildProcessorSampleMatrixSingleUniform.fp",
  "$_tests/sksl/fp/GrChildProcessorSampleMatrixSingleUniformExpr.fp",
  "$_tests/sksl/fp/GrChildProcessorWithInputExpression.fp",
  "$_tests/sksl/fp/GrChildProcessors.fp",
  "$_tests/sksl/fp/GrChildProcessorsWithInput.fp",
  "$_tests/sksl/fp/GrConditionalInUniform.fp",
  "$_tests/sksl/fp/GrFunction.fp",
  "$_tests/sksl/fp/GrGrSLTypesAreSupported.fp",
  "$_tests/sksl/fp/GrHelloWorld.fp",
  "$_tests/sksl/fp/GrInUniform.fp",
  "$_tests/sksl/fp/GrInUniformCType.fp",
  "$_tests/sksl/fp/GrInlinedFunction.fp",
  "$_tests/sksl/fp/GrKeyIn.fp",
  "$_tests/sksl/fp/GrLayoutWhen.fp",
  "$_tests/sksl/fp/GrMainCoords.fp",
  "$_tests/sksl/fp/GrNestedChildProcessors.fp",
  "$_tests/sksl/fp/GrNonInlinedInUniform.fp",
  "$_tests/sksl/fp/GrNullableChildProcessor.fp",
  "$_tests/sksl/fp/GrSectionClass.fp",
  "$_tests/sksl/fp/GrSectionConstructor.fp",
  "$_tests/sksl/fp/GrSectionConstructorParams.fp",
  "$_tests/sksl/fp/GrSectionCpp.fp",
  "$_tests/sksl/fp/GrSectionDumpInfo.fp",
  "$_tests/sksl/fp/GrSectionEmitCode.fp",
  "$_tests/sksl/fp/GrSectionFields.fp",
  "$_tests/sksl/fp/GrSectionHeader.fp",
  "$_tests/sksl/fp/GrSectionInitializers.fp",
  "$_tests/sksl/fp/GrSectionMake.fp",
  "$_tests/sksl/fp/GrSectionSetData.fp",
  "$_tests/sksl/fp/GrSectionTest.fp",
  "$_tests/sksl/fp/GrTrackedInUniform.fp",
  "$_tests/sksl/fp/GrUniform.fp",
  "$_tests/sksl/fp/GrUniformArrays.fp",
  "$_tests/sksl/fp/GrUseExplicitReturn.fp",
]

sksl_error_tests = [
  "$_tests/sksl/errors/ArgumentCountMismatch.sksl",
  "$_tests/sksl/errors/ArgumentMismatch.sksl",
  "$_tests/sksl/errors/ArgumentModifiers.sksl",
  "$_tests/sksl/errors/AssignmentTypeMismatch.sksl",
  "$_tests/sksl/errors/BadCaps.sksl",
  "$_tests/sksl/errors/BadFieldAccess.sksl",
  "$_tests/sksl/errors/BadIndex.sksl",
  "$_tests/sksl/errors/BadModifiers.sksl",
  "$_tests/sksl/errors/BinaryTypeCoercion.sksl",
  "$_tests/sksl/errors/BinaryTypeMismatch.sksl",
  "$_tests/sksl/errors/BitShiftFloat.sksl",
  "$_tests/sksl/errors/BitShiftFloatMatrix.sksl",
  "$_tests/sksl/errors/BitShiftFloatVector.sksl",
  "$_tests/sksl/errors/BreakOutsideLoop.sksl",
  "$_tests/sksl/errors/CallNonFunction.sksl",
  "$_tests/sksl/errors/CanExitWithoutReturningValue.sksl",
  "$_tests/sksl/errors/ConstructorArgumentCount.sksl",
  "$_tests/sksl/errors/ConstructorTypeMismatch.sksl",
  "$_tests/sksl/errors/ContinueOutsideLoop.sksl",
  "$_tests/sksl/errors/DivideByZero.sksl",
  "$_tests/sksl/errors/DoTypeMismatch.sksl",
  "$_tests/sksl/errors/DuplicateFunction.sksl",
  "$_tests/sksl/errors/DuplicateOutput.sksl",
  "$_tests/sksl/errors/DuplicateSymbol.sksl",
  "$_tests/sksl/errors/EnumValueMustBeConstInt.sksl",
  "$_tests/sksl/errors/ErrorsInDeadCode.sksl",
  "$_tests/sksl/errors/FieldAfterRuntimeArray.sksl",
  "$_tests/sksl/errors/ForTypeMismatch.sksl",
  "$_tests/sksl/errors/GenericArgumentMismatch.sksl",
  "$_tests/sksl/errors/IfTypeMismatch.sksl",
  "$_tests/sksl/errors/InterfaceBlockScope.sksl",
  "$_tests/sksl/errors/InterfaceBlockStorageModifiers.sksl",
  "$_tests/sksl/errors/InvalidAssignment.sksl",
  "$_tests/sksl/errors/InvalidOutParams.sksl",
  "$_tests/sksl/errors/InvalidUnary.sksl",
  "$_tests/sksl/errors/ModifiersInStruct.sksl",
  "$_tests/sksl/errors/OpenArray.sksl",
  "$_tests/sksl/errors/ReturnDifferentType.sksl",
  "$_tests/sksl/errors/ReturnFromVoid.sksl",
  "$_tests/sksl/errors/ReturnMissingValue.sksl",
  "$_tests/sksl/errors/ReturnTypeMismatch.sksl",
  "$_tests/sksl/errors/SelfReferentialInitializerExpression.sksl",
  "$_tests/sksl/errors/SpuriousFloat.sksl",
  "$_tests/sksl/errors/StaticIfTest.sksl",
  "$_tests/sksl/errors/StaticSwitchConditionalBreak.sksl",
  "$_tests/sksl/errors/StaticSwitchTest.sksl",
  "$_tests/sksl/errors/SwitchDuplicateCase.sksl",
  "$_tests/sksl/errors/SwitchTypes.sksl",
  "$_tests/sksl/errors/SwizzleConstantOutput.sksl",
  "$_tests/sksl/errors/SwizzleMatrix.sksl",
  "$_tests/sksl/errors/SwizzleOnlyLiterals.sksl",
  "$_tests/sksl/errors/SwizzleOutOfBounds.sksl",
  "$_tests/sksl/errors/SwizzleTooManyComponents.sksl",
  "$_tests/sksl/errors/TernaryMismatch.sksl",
  "$_tests/sksl/errors/UndefinedFunction.sksl",
  "$_tests/sksl/errors/UndefinedSymbol.sksl",
  "$_tests/sksl/errors/Unreachable.sksl",
  "$_tests/sksl/errors/UnsupportedGLSLIdentifiers.sksl",
  "$_tests/sksl/errors/UseWithoutInitializeArrayIndex.sksl",
  "$_tests/sksl/errors/UseWithoutInitializeBinaryExpr.sksl",
  "$_tests/sksl/errors/UseWithoutInitializeDeadIf.sksl",
  "$_tests/sksl/errors/UseWithoutInitializeDeadSwitch.sksl",
  "$_tests/sksl/errors/UseWithoutInitializeReturnValue.sksl",
  "$_tests/sksl/errors/UseWithoutInitializeVarDecl.sksl",
  "$_tests/sksl/errors/UsingInvalidValue.sksl",
  "$_tests/sksl/errors/WhileTypeMismatch.sksl",
]

sksl_glsl_tests = [
  "$_tests/sksl/glsl/ForceHighPrecision.sksl",
  "$_tests/sksl/glsl/IncompleteShortIntPrecision.sksl",
  "$_tests/sksl/glsl/LayoutQualifiers.sksl",
  "$_tests/sksl/glsl/ShortIntPrecision.sksl",
  "$_tests/sksl/glsl/TextureSharpenVersion110.sksl",
  "$_tests/sksl/glsl/TextureVersion110.sksl",
  "$_tests/sksl/glsl/UsesPrecisionModifiers.sksl",
  "$_tests/sksl/glsl/Version110.sksl",
  "$_tests/sksl/glsl/Version450Core.sksl",
]

sksl_shared_tests = [
  "$_tests/sksl/shared/ArrayConstructors.sksl",
  "$_tests/sksl/shared/ArrayIndexTypes.sksl",
  "$_tests/sksl/shared/ArrayTypes.sksl",
  "$_tests/sksl/shared/Assignment.sksl",
  "$_tests/sksl/shared/BoolFolding.sksl",
  "$_tests/sksl/shared/Caps.sksl",
  "$_tests/sksl/shared/CastsRoundTowardZero.sksl",
  "$_tests/sksl/shared/Clockwise.sksl",
  "$_tests/sksl/shared/ComplexDelete.sksl",
  "$_tests/sksl/shared/ConstArray.sksl",
  "$_tests/sksl/shared/ConstVariableComparison.sksl",
  "$_tests/sksl/shared/ConstantIf.sksl",
  "$_tests/sksl/shared/Control.sksl",
  "$_tests/sksl/shared/DeadDoWhileLoop.sksl",
  "$_tests/sksl/shared/DeadLoopVariable.sksl",
  "$_tests/sksl/shared/DependentInitializers.sksl",
  "$_tests/sksl/shared/DerivativesUnused.sksl",
  "$_tests/sksl/shared/Discard.sksl",
  "$_tests/sksl/shared/FloatFolding.sksl",
  "$_tests/sksl/shared/FrExp.sksl",
  "$_tests/sksl/shared/FragCoordsFlipY.sksl",
  "$_tests/sksl/shared/FragCoordsNew.sksl",
  "$_tests/sksl/shared/FragCoordsOld.sksl",
  "$_tests/sksl/shared/FunctionArgumentMatch.sksl",
  "$_tests/sksl/shared/FunctionPrototype.sksl",
  "$_tests/sksl/shared/Functions.sksl",
  "$_tests/sksl/shared/Geometry.geom",
  "$_tests/sksl/shared/GeometryExtension.geom",
  "$_tests/sksl/shared/GeometryGSInvocations.geom",
  "$_tests/sksl/shared/GeometryNoGSInvocations.geom",
  "$_tests/sksl/shared/GeometryNoGSInvocationsReorder.geom",
  "$_tests/sksl/shared/Height.sksl",
  "$_tests/sksl/shared/HelloWorld.sksl",
  "$_tests/sksl/shared/Hex.sksl",
  "$_tests/sksl/shared/InstanceID.vert",
  "$_tests/sksl/shared/IntFolding.sksl",
  "$_tests/sksl/shared/InterfaceBlockAnonymous.sksl",
  "$_tests/sksl/shared/InterfaceBlockArray.sksl",
  "$_tests/sksl/shared/InterfaceBlockNamed.sksl",
  "$_tests/sksl/shared/Matrices.sksl",
  "$_tests/sksl/shared/MatrixFolding.sksl",
  "$_tests/sksl/shared/MultipleAssignments.sksl",
  "$_tests/sksl/shared/NegatedVectorLiteral.sksl",
  "$_tests/sksl/shared/NoFragCoordsPos.vert",
  "$_tests/sksl/shared/NoFragCoordsPosRT.vert",
  "$_tests/sksl/shared/NormalizationGeo.geom",
  "$_tests/sksl/shared/NormalizationVert.vert",
  "$_tests/sksl/shared/NumberConversions.sksl",
  "$_tests/sksl/shared/Offset.sksl",
  "$_tests/sksl/shared/Operators.sksl",
  "$_tests/sksl/shared/Ossfuzz26167.sksl",
  "$_tests/sksl/shared/OutParams.sksl",
  "$_tests/sksl/shared/OutParamsTricky.sksl",
  "$_tests/sksl/shared/RectangleTexture.sksl",
  "$_tests/sksl/shared/ResizeMatrix.sksl",
  "$_tests/sksl/shared/SampleMask.sksl",
  "$_tests/sksl/shared/ScopedSymbol.sksl",
  "$_tests/sksl/shared/ShortCircuitBoolFolding.sksl",
  "$_tests/sksl/shared/StackingVectorCasts.sksl",
  "$_tests/sksl/shared/StaticIf.sksl",
  "$_tests/sksl/shared/StaticSwitch.sksl",
  "$_tests/sksl/shared/StaticSwitchWithBreak.sksl",
  "$_tests/sksl/shared/StaticSwitchWithBreakInsideBlock.sksl",
  "$_tests/sksl/shared/StaticSwitchWithConditionalBreak.sksl",
  "$_tests/sksl/shared/StaticSwitchWithConditionalBreakInsideBlock.sksl",
  "$_tests/sksl/shared/StaticSwitchWithFallthroughA.sksl",
  "$_tests/sksl/shared/StaticSwitchWithFallthroughB.sksl",
  "$_tests/sksl/shared/StaticSwitchWithStaticConditionalBreak.sksl",
  "$_tests/sksl/shared/StaticSwitchWithStaticConditionalBreakInsideBlock.sksl",
  "$_tests/sksl/shared/Structs.sksl",
  "$_tests/sksl/shared/Switch.sksl",
  "$_tests/sksl/shared/SwitchContainingDeadCode.sksl",
  "$_tests/sksl/shared/SwitchWithFallthrough.sksl",
  "$_tests/sksl/shared/SwizzleBoolConstants.sksl",
  "$_tests/sksl/shared/SwizzleConstants.sksl",
  "$_tests/sksl/shared/SwizzleLTRB.sksl",
  "$_tests/sksl/shared/SwizzleOpt.sksl",
  "$_tests/sksl/shared/SwizzleScalar.sksl",
  "$_tests/sksl/shared/TernaryAsLValueEntirelyFoldable.sksl",
  "$_tests/sksl/shared/TernaryAsLValueFoldableTest.sksl",
  "$_tests/sksl/shared/Texture.sksl",
  "$_tests/sksl/shared/TextureSharpen.sksl",
  "$_tests/sksl/shared/UnaryPositiveNegative.sksl",
  "$_tests/sksl/shared/UnusedVariables.sksl",
  "$_tests/sksl/shared/VectorConstructors.sksl",
  "$_tests/sksl/shared/VectorFolding.sksl",
  "$_tests/sksl/shared/VertexID.vert",
  "$_tests/sksl/shared/Width.sksl",
]

sksl_inliner_tests = [
  "$_tests/sksl/inliner/DoWhileBodyMustBeInlinedIntoAScope.sksl",
  "$_tests/sksl/inliner/DoWhileTestCannotBeInlined.sksl",
  "$_tests/sksl/inliner/ForBodyMustBeInlinedIntoAScope.sksl",
  "$_tests/sksl/inliner/ForInitializerExpressionsCanBeInlined.sksl",
  "$_tests/sksl/inliner/ForWithReturnInsideCannotBeInlined.sksl",
  "$_tests/sksl/inliner/ForWithoutReturnInsideCanBeInlined.sksl",
  "$_tests/sksl/inliner/IfBodyMustBeInlinedIntoAScope.sksl",
  "$_tests/sksl/inliner/IfElseBodyMustBeInlinedIntoAScope.sksl",
  "$_tests/sksl/inliner/IfElseChainWithReturnsCanBeInlined.sksl",
  "$_tests/sksl/inliner/IfTestCanBeInlined.sksl",
  "$_tests/sksl/inliner/IfWithReturnsCanBeInlined.sksl",
  "$_tests/sksl/inliner/InlineKeywordOverridesThreshold.sksl",
  "$_tests/sksl/inliner/InlineThreshold.sksl",
  "$_tests/sksl/inliner/InlineWithInoutArgument.sksl",
  "$_tests/sksl/inliner/InlineWithModifiedArgument.sksl",
  "$_tests/sksl/inliner/InlineWithNestedBigCalls.sksl",
  "$_tests/sksl/inliner/InlineWithNestedCalls.sksl",
  "$_tests/sksl/inliner/InlineWithUnmodifiedArgument.sksl",
  "$_tests/sksl/inliner/InlineWithUnnecessaryBlocks.sksl",
  "$_tests/sksl/inliner/InlinerAvoidsVariableNameOverlap.sksl",
  "$_tests/sksl/inliner/InlinerManglesNames.sksl",
  "$_tests/sksl/inliner/ShortCircuitEvaluationsCannotInlineRightHandSide.sksl",
  "$_tests/sksl/inliner/SwitchWithCastCanBeInlined.sksl",
  "$_tests/sksl/inliner/SwitchWithReturnInsideCannotBeInlined.sksl",
  "$_tests/sksl/inliner/SwitchWithoutReturnInsideCanBeInlined.sksl",
  "$_tests/sksl/inliner/SwizzleCanBeInlinedDirectly.sksl",
  "$_tests/sksl/inliner/TernaryResultsCannotBeInlined.sksl",
  "$_tests/sksl/inliner/TernaryTestCanBeInlined.sksl",
  "$_tests/sksl/inliner/TrivialArgumentsInlineDirectly.sksl",
  "$_tests/sksl/inliner/WhileBodyMustBeInlinedIntoAScope.sksl",
  "$_tests/sksl/inliner/WhileTestCannotBeInlined.sksl",
]

sksl_blend_tests = [
  "$_tests/sksl/blend/BlendClear.sksl",
  "$_tests/sksl/blend/BlendColor.sksl",
  "$_tests/sksl/blend/BlendColorBurn.sksl",
  "$_tests/sksl/blend/BlendColorDodge.sksl",
  "$_tests/sksl/blend/BlendDarken.sksl",
  "$_tests/sksl/blend/BlendDifference.sksl",
  "$_tests/sksl/blend/BlendDst.sksl",
  "$_tests/sksl/blend/BlendDstAtop.sksl",
  "$_tests/sksl/blend/BlendDstIn.sksl",
  "$_tests/sksl/blend/BlendDstOut.sksl",
  "$_tests/sksl/blend/BlendDstOver.sksl",
  "$_tests/sksl/blend/BlendExclusion.sksl",
  "$_tests/sksl/blend/BlendHardLight.sksl",
  "$_tests/sksl/blend/BlendHue.sksl",
  "$_tests/sksl/blend/BlendLighten.sksl",
  "$_tests/sksl/blend/BlendLuminosity.sksl",
  "$_tests/sksl/blend/BlendModulate.sksl",
  "$_tests/sksl/blend/BlendMultiply.sksl",
  "$_tests/sksl/blend/BlendOverlay.sksl",
  "$_tests/sksl/blend/BlendPlus.sksl",
  "$_tests/sksl/blend/BlendSaturation.sksl",
  "$_tests/sksl/blend/BlendScreen.sksl",
  "$_tests/sksl/blend/BlendSoftLight.sksl",
  "$_tests/sksl/blend/BlendSrc.sksl",
  "$_tests/sksl/blend/BlendSrcAtop.sksl",
  "$_tests/sksl/blend/BlendSrcIn.sksl",
  "$_tests/sksl/blend/BlendSrcOut.sksl",
  "$_tests/sksl/blend/BlendSrcOver.sksl",
  "$_tests/sksl/blend/BlendXor.sksl",
]

sksl_settings_tests = [
  "$_tests/sksl/glsl/TypePrecision.sksl",
  "$_tests/sksl/inliner/InlinerCanBeDisabled.sksl",
  "$_tests/sksl/inliner/InlinerWrapsEarlyReturnsWithDoWhileBlock.sksl",
  "$_tests/sksl/shared/CrossIntrinsic.sksl",
  "$_tests/sksl/shared/Derivatives.sksl",
  "$_tests/sksl/shared/DerivativesFlipY.sksl",
  "$_tests/sksl/workarounds/AbsInt.sksl",
  "$_tests/sksl/workarounds/BlendGuardedDivide.sksl",
  "$_tests/sksl/workarounds/BlendModesAllZeroVec.sksl",
  "$_tests/sksl/workarounds/FractNegative.sksl",
  "$_tests/sksl/workarounds/FragCoords.sksl",
  "$_tests/sksl/workarounds/LoopCondition.sksl",
  "$_tests/sksl/workarounds/MinAndAbsTogether.sksl",
  "$_tests/sksl/workarounds/NegatedAtan.sksl",
  "$_tests/sksl/workarounds/PowWithConstantExponent.sksl",
  "$_tests/sksl/workarounds/RewriteDoWhileLoops.sksl",
  "$_tests/sksl/workarounds/TernaryShortCircuit.sksl",
]

# Tests in sksl_fp_tests_sources will be compiled with --settings on, and are expected to generate
# a .cpp and a .h output file.
sksl_fp_tests_sources = sksl_fp_error_tests + sksl_fp_tests

# Tests in sksl_glsl_tests_sources will be compiled with --settings on, and are expected to generate
# a .glsl output file.
sksl_glsl_tests_sources =
    sksl_error_tests + sksl_glsl_tests + sksl_inliner_tests + sksl_shared_tests

# Tests in sksl_glsl_settings_tests_sources will be compiled twice, once with --settings and once
# using --nosettings. In the latter mode, StandaloneSettings is appended to the output filename.
sksl_glsl_settings_tests_sources = sksl_blend_tests + sksl_settings_tests

# Tests in sksl_metal_tests_sources will be compiled with --settings on, and are expected to
# generate a .metal output file.
sksl_metal_tests_sources = sksl_blend_tests + sksl_shared_tests
