// salesforce test data for OrderSummary
@IsTest(SeeAllData=true)
public class Dummyordersummary {
@IsTest
static void testInventoryCheck() {
// --- Product & Pricebook ---
Product2 prod = new Product2(
Name = 'Test Product',
IsActive = true
);
insert prod;
Pricebook2 stdPb = [SELECT Id FROM Pricebook2 WHERE IsStandard = true LIMIT 1];
PricebookEntry pbe = new PricebookEntry(
Pricebook2Id = stdPb.Id,
Product2Id = prod.Id,
UnitPrice = 1,
IsActive = true
);
insert pbe;
// --- Account ---
Account acc = new Account(
Name = 'Test Account'
);
insert acc;
// --- Order ---
Order ord = new Order(
AccountId = acc.Id,
Status = 'Draft',
OrderedDate = System.today(),
EffectiveDate= System.today(),
Pricebook2Id = stdPb.Id
);
insert ord;
// --- Order Delivery Method ---
OrderDeliveryMethod odm = new OrderDeliveryMethod(
Name = 'Standard Shipping',
ProductId = prod.Id
);
insert odm;
// --- Order Delivery Group ---
OrderDeliveryGroup odg = new OrderDeliveryGroup(
DeliverToName = 'Test User',
DeliverToStreet = '123 Test St',
DeliverToCity = 'LONDON',
DeliverToState = '',
DeliverToPostalCode= 'SE1 2UP',
DeliverToCountry = 'United Kingdom',
OrderId = ord.Id,
OrderDeliveryMethodId = odm.Id
);
insert odg;
// --- Order Item (link to delivery group) ---
OrderItem oi = new OrderItem(
OrderId = ord.Id,
PricebookEntryId = pbe.Id,
Product2Id = prod.Id,
Quantity = 1,
UnitPrice = 1,
OrderDeliveryGroupId = odg.Id
);
insert oi;
// Activate Order
ord.Status = 'Activated';
update ord;
// --- ConnectApi: create OrderSummary ---
ConnectApi.OrderSummaryInputRepresentation osir = new ConnectApi.OrderSummaryInputRepresentation();
osir.orderId = ord.Id;
osir.orderLifeCycleType = 'UNMANAGED'; // or MANAGED if needed
Test.startTest();
ConnectApi.OrderSummaryOutputRepresentation osor =
ConnectApi.OrderSummaryCreation.createOrderSummary(osir);
Test.stopTest();
System.assertNotEquals(null, osor, 'OrderSummaryOutputRepresentation should not be null');
System.assertNotEquals(null, osor.orderSummaryId, 'OrderSummaryId should not be null');
// --- Example Assertion ---
Boolean orderSummaryExists = [
SELECT COUNT()
FROM OrderSummary
WHERE Id = :osor.orderSummaryId
] > 0;
System.assert(orderSummaryExists, 'OrderSummary should exist after ConnectApi call');
}
}