public void PropertiesPartialExclusionsWithCalculation() { var input = new TestModelPartialExclusions(); var calculator = A.Fake <ISignatureCalculator>(); A.CallTo(() => calculator.Calculate(A <string> ._, A <string> ._)) .ReturnsLazily((string name, string key) => new SignatureCalculation(string.Empty, name)); var sut = new InstanceSignatureBuilder(calculator); var actual = sut.Compute(input, knownKey); actual.PayloadAsASCIIString().Should() .Be( "Field3Ifalistenernodshisheadwhenyou'reexplainingyourprogram,wakehimup.Field42147483647Field5trueField6true"); }
public void PropertiesPartialExclusionsWithCalculation() { //Online HMAC tester: https://www.devglan.com/online-tools/hmac-sha256-online var expected = new SignatureCalculation( "9bac02d1fb108ec1581000627cf4b4edf99976761012a56a44d9bbb4829edba4", "Field3Ifalistenernodshisheadwhenyou'reexplainingyourprogram,wakehimup.Field42147483647Field5trueField6true" ); var input = new TestModelPartialExclusions(); var calculator = new HMACSHA256SignatureCalculator(); var sut = new InstanceSignatureBuilder(calculator); var actual = sut.Compute(input, knownKey); actual.Should().BeEquivalentTo(expected); }