# 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",
]

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/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/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/Derivatives.sksl",
  "$_tests/sksl/shared/DerivativesFlipY.sksl",
  "$_tests/sksl/shared/CrossIntrinsic.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
