Automated Testing in Microsoft Dynamics 365 Business Central by Luc van Vugt

Automated Testing in Microsoft Dynamics 365 Business Central by Luc van Vugt

Author:Luc van Vugt [Luc van Vugt]
Language: eng
Format: epub
Tags: COM005030 - COMPUTERS / Enterprise Applications / Business Intelligence Tools, COM051310 - COMPUTERS / Programming Languages / C#, COM051330 - COMPUTERS / Software Development and Engineering / Quality Assurance and Testing
Publisher: Packt Publishing
Published: 2019-04-30T15:07:55+00:00


//[WHEN] Set non-existing lookup value on customer

asserterror SetLookupValueOnCustomer(

Customer,

LookupValueCode);

//[THEN] Non existing lookup value error thrown

VerifyNonExistingLookupValueError(LookupValueCode);

end;

Construct the real code

Reusing the SetLookupValueOnCustomer function, we only need to create one new helper function.

VerifyNonExistingLookupValueError

Like in our first verification function, we make use of a function from the standard library codeunit Assert (130000) called ExpectedError. We only need to provide ExpectedError the expected error text. The actual error will be retrieved by ExpectedError using the GetLastErrorText system function as follows:

local procedure VerifyNonExistingLookupValueError(

LookupValueCode: Code[10])

var

Customer: Record Customer;

LookupValue: Record LookupValue;

ValueCannotBeFoundInTableTxt: Label

'The field %1 of table %2 contains a value (%3) that

cannot be found in the related table (%4).';

begin

with Customer do

Assert.ExpectedError(

StrSubstNo(

ValueCannotBeFoundInTableTxt

FieldCaption("Lookup Value Code"),

TableCaption(),

LookupValueCode,

LookupValue.TableCaption()));

end;

Note how the expected error text is constructed by using the StrSubstNo system method in conjunction with the ValueCannotBeFoundInTableTxt label.



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.