Skip to content

Commit

Permalink
Boolean CTs
Browse files Browse the repository at this point in the history
  • Loading branch information
yoelhor committed Feb 15, 2022
1 parent ab07610 commit 68aa13a
Show file tree
Hide file tree
Showing 7 changed files with 253 additions and 55 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,25 @@
<ClaimType Id="boolean1">
<DisplayName>Boolean 1</DisplayName>
<DataType>boolean</DataType>
<UserInputType>DropdownSingleSelect</UserInputType>
<Restriction>
<Enumeration Text="True" Value="true" SelectByDefault="true" />
<Enumeration Text="False" Value="false" />
</Restriction>
</ClaimType>
<ClaimType Id="boolean2">
<DisplayName>Boolean 2</DisplayName>
<DataType>boolean</DataType>
<UserInputType>DropdownSingleSelect</UserInputType>
<Restriction>
<Enumeration Text="True" Value="true" />
<Enumeration Text="False" Value="false" SelectByDefault="true" />
</Restriction>
</ClaimType>
<ClaimType Id="result">
<DisplayName>The result of this claims transformation (result)</DisplayName>
<DataType>boolean</DataType>
<UserInputType>Readonly</UserInputType>
</ClaimType>
</ClaimsSchema>

Expand All @@ -42,13 +53,13 @@
<ClaimsProvider>
<DisplayName>Unit tests</DisplayName>
<TechnicalProfiles>
<!--Experimental technical profile (first page)-->
<TechnicalProfile Id="ExperimentalTechnicalProfile">
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.ClaimsTransformationProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<InputClaims>
<InputClaim ClaimTypeReferenceId="boolean1" DefaultValue="false" AlwaysUseDefaultValue="true" />
<InputClaim ClaimTypeReferenceId="boolean2" DefaultValue="true" AlwaysUseDefaultValue="true" />
</InputClaims>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
</Metadata>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="boolean1" />
<OutputClaim ClaimTypeReferenceId="boolean2" />
Expand All @@ -58,6 +69,22 @@
</OutputClaimsTransformations>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>

<!--Result technical profile (last page)-->
<TechnicalProfile Id="ResultTechnicalProfile">
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="result" />
</InputClaims>
<DisplayClaims>
<DisplayClaim ClaimTypeReferenceId="result" />
</DisplayClaims>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>
</TechnicalProfiles>
</ClaimsProvider>
</ClaimsProviders>
Expand All @@ -70,7 +97,12 @@
<ClaimsExchange Id="ExperimentalTechnicalProfile" TechnicalProfileReferenceId="ExperimentalTechnicalProfile" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="2" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
<OrchestrationStep Order="2" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="ResultTechnicalProfile" TechnicalProfileReferenceId="ResultTechnicalProfile" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="3" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
</OrchestrationSteps>
</UserJourney>
</UserJourneys>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,32 +11,29 @@

<BuildingBlocks>
<ClaimsSchema>
<ClaimType Id="containsTest">
<DisplayName>Contains the word test</DisplayName>
<ClaimType Id="boolean1">
<DisplayName>Boolean 1</DisplayName>
<DataType>boolean</DataType>
<UserInputType>DropdownSingleSelect</UserInputType>
<Restriction>
<Enumeration Text="True" Value="true" SelectByDefault="true" />
<Enumeration Text="False" Value="false" />
</Restriction>
</ClaimType>
<ClaimType Id="result">
<DisplayName>The result of this claims transformation (result)</DisplayName>
<DataType>boolean</DataType>
<UserInputType>Readonly</UserInputType>
</ClaimType>
</ClaimsSchema>

<ClaimsTransformations>
<ClaimsTransformation Id="CheckIfDisplayNameContainsTest" TransformationMethod="StringContains">
<InputClaims>
<InputClaim ClaimTypeReferenceId="displayName" TransformationClaimType="inputClaim" />
</InputClaims>
<InputParameters>
<InputParameter Id="contains" DataType="string" Value="test" />
<InputParameter Id="ignoreCase" DataType="string" Value="true" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="containsTest" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>

<ClaimsTransformation Id="AssertContainsTest" TransformationMethod="AssertBooleanClaimIsEqualToValue">
<ClaimsTransformation Id="AssertBoolean1IsTrue" TransformationMethod="AssertBooleanClaimIsEqualToValue">
<InputClaims>
<InputClaim ClaimTypeReferenceId="containsTest" TransformationClaimType="inputClaim" />
<InputClaim ClaimTypeReferenceId="boolean1" TransformationClaimType="inputClaim" />
</InputClaims>
<InputParameters>
<InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
<InputParameter Id="valueToCompareTo" DataType="boolean" Value="false" />
</InputParameters>
</ClaimsTransformation>
</ClaimsTransformations>
Expand All @@ -46,17 +43,17 @@
<ClaimsProvider>
<DisplayName>Unit tests</DisplayName>
<TechnicalProfiles>
<!--Self-asserted technical profile-->
<!--Experimental technical profile (first page)-->
<TechnicalProfile Id="ExperimentalTechnicalProfile">
<DisplayName>User ID signup</DisplayName>
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
<Item Key="UserMessageIfClaimsTransformationBooleanValueIsNotEqual">Error message if display name does NOT contain 'test'.</Item>
<Item Key="UserMessageIfClaimsTransformationBooleanValueIsNotEqual">Error the 'boolean1' claim must be false.</Item>
</Metadata>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="displayName" Required="true" />
<OutputClaim ClaimTypeReferenceId="containsTest" />
<OutputClaim ClaimTypeReferenceId="boolean1" />
<OutputClaim ClaimTypeReferenceId="result" />
</OutputClaims>
<ValidationTechnicalProfiles>
<ValidationTechnicalProfile ReferenceId="ExperimentalValidation" />
Expand All @@ -69,14 +66,29 @@
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.ClaimsTransformationProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="containsTest" />
<OutputClaim ClaimTypeReferenceId="result" DefaultValue="true" />
</OutputClaims>
<OutputClaimsTransformations>
<OutputClaimsTransformation ReferenceId="CheckIfDisplayNameContainsTest" />
<OutputClaimsTransformation ReferenceId="AssertContainsTest" />
<OutputClaimsTransformation ReferenceId="AssertBoolean1IsTrue" />
</OutputClaimsTransformations>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>

<!--Result technical profile (last page)-->
<TechnicalProfile Id="ResultTechnicalProfile">
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="result" />
</InputClaims>
<DisplayClaims>
<DisplayClaim ClaimTypeReferenceId="result" />
</DisplayClaims>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>
</TechnicalProfiles>
</ClaimsProvider>
</ClaimsProviders>
Expand All @@ -89,7 +101,12 @@
<ClaimsExchange Id="ExperimentalTechnicalProfile" TechnicalProfileReferenceId="ExperimentalTechnicalProfile" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="2" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
<OrchestrationStep Order="2" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="ResultTechnicalProfile" TechnicalProfileReferenceId="ResultTechnicalProfile" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="3" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
</OrchestrationSteps>
</UserJourney>
</UserJourneys>
Expand All @@ -104,8 +121,8 @@
<OutputClaim ClaimTypeReferenceId="tenantId" AlwaysUseDefaultValue="true" DefaultValue="{Policy:TenantObjectId}" />

<!-- Unit test claims-->
<OutputClaim ClaimTypeReferenceId="displayName" />
<OutputClaim ClaimTypeReferenceId="containsTest" />
<OutputClaim ClaimTypeReferenceId="boolean1" />
<OutputClaim ClaimTypeReferenceId="result" />
</OutputClaims>
<SubjectNamingInfo ClaimType="sub" />
</TechnicalProfile>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,26 @@
<ClaimType Id="boolean1">
<DisplayName>Boolean 1</DisplayName>
<DataType>boolean</DataType>
<UserInputType>DropdownSingleSelect</UserInputType>
<Restriction>
<Enumeration Text="True" Value="true" SelectByDefault="true" />
<Enumeration Text="False" Value="false" />
</Restriction>
</ClaimType>
<ClaimType Id="result">
<DisplayName>The result of this claims transformation (result)</DisplayName>
<DataType>boolean</DataType>
<UserInputType>Readonly</UserInputType>
</ClaimType>
</ClaimsSchema>

<ClaimsTransformations>
<ClaimsTransformation Id="CheckBoolean1Value" TransformationMethod="CompareBooleanClaimToValue">
<ClaimsTransformation Id="CheckBoolean1IsTrue" TransformationMethod="CompareBooleanClaimToValue">
<InputClaims>
<InputClaim ClaimTypeReferenceId="boolean1" TransformationClaimType="inputClaim" />
</InputClaims>
<InputParameters>
<InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
<InputParameter Id="valueToCompareTo" DataType="boolean" Value="false" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="compareResult" />
Expand All @@ -40,20 +46,38 @@
<ClaimsProvider>
<DisplayName>Unit tests</DisplayName>
<TechnicalProfiles>
<!--Experimental technical profile (first page)-->
<TechnicalProfile Id="ExperimentalTechnicalProfile">
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.ClaimsTransformationProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<InputClaims>
<InputClaim ClaimTypeReferenceId="boolean1" DefaultValue="TRUE" AlwaysUseDefaultValue="true" />
</InputClaims>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
</Metadata>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="boolean1" />
</OutputClaims>
<OutputClaimsTransformations>
<OutputClaimsTransformation ReferenceId="CheckBoolean1Value" />
<OutputClaimsTransformation ReferenceId="CheckBoolean1IsTrue" />
</OutputClaimsTransformations>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>

<!--Result technical profile (last page)-->
<TechnicalProfile Id="ResultTechnicalProfile">
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="result" />
</InputClaims>
<DisplayClaims>
<DisplayClaim ClaimTypeReferenceId="result" />
</DisplayClaims>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>

</TechnicalProfiles>
</ClaimsProvider>
</ClaimsProviders>
Expand All @@ -66,7 +90,12 @@
<ClaimsExchange Id="ExperimentalTechnicalProfile" TechnicalProfileReferenceId="ExperimentalTechnicalProfile" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="2" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
<OrchestrationStep Order="2" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="ResultTechnicalProfile" TechnicalProfileReferenceId="ResultTechnicalProfile" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="3" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
</OrchestrationSteps>
</UserJourney>
</UserJourneys>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,16 @@
<ClaimType Id="boolean1">
<DisplayName>Boolean 1</DisplayName>
<DataType>boolean</DataType>
<UserInputType>DropdownSingleSelect</UserInputType>
<Restriction>
<Enumeration Text="True" Value="true" SelectByDefault="true" />
<Enumeration Text="False" Value="false" />
</Restriction>
</ClaimType>
<ClaimType Id="result">
<DisplayName>The result of this claims transformation (result)</DisplayName>
<DataType>boolean</DataType>
<UserInputType>Readonly</UserInputType>
</ClaimType>
</ClaimsSchema>

Expand All @@ -23,7 +33,7 @@
<InputClaim ClaimTypeReferenceId="boolean1" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="boolean1" TransformationClaimType="outputClaim" />
<OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
</ClaimsTransformations>
Expand All @@ -33,12 +43,13 @@
<ClaimsProvider>
<DisplayName>Unit tests</DisplayName>
<TechnicalProfiles>
<!--Experimental technical profile (first page)-->
<TechnicalProfile Id="ExperimentalTechnicalProfile">
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.ClaimsTransformationProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<InputClaims>
<InputClaim ClaimTypeReferenceId="boolean1" DefaultValue="true" AlwaysUseDefaultValue="true" />
</InputClaims>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
</Metadata>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="boolean1" />
</OutputClaims>
Expand All @@ -47,6 +58,22 @@
</OutputClaimsTransformations>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>

<!--Result technical profile (last page)-->
<TechnicalProfile Id="ResultTechnicalProfile">
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="result" />
</InputClaims>
<DisplayClaims>
<DisplayClaim ClaimTypeReferenceId="result" />
</DisplayClaims>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>
</TechnicalProfiles>
</ClaimsProvider>
</ClaimsProviders>
Expand All @@ -59,7 +86,12 @@
<ClaimsExchange Id="ExperimentalTechnicalProfile" TechnicalProfileReferenceId="ExperimentalTechnicalProfile" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="2" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
<OrchestrationStep Order="2" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="ResultTechnicalProfile" TechnicalProfileReferenceId="ResultTechnicalProfile" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="3" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
</OrchestrationSteps>
</UserJourney>
</UserJourneys>
Expand All @@ -74,6 +106,7 @@
<OutputClaim ClaimTypeReferenceId="tenantId" AlwaysUseDefaultValue="true" DefaultValue="{Policy:TenantObjectId}" />

<!-- Unit test claims-->
<OutputClaim ClaimTypeReferenceId="result" />
<OutputClaim ClaimTypeReferenceId="boolean1" />
</OutputClaims>
<SubjectNamingInfo ClaimType="sub" />
Expand Down
Loading

0 comments on commit 68aa13a

Please sign in to comment.