Skip to content

Commit

Permalink
test createStripeSample
Browse files Browse the repository at this point in the history
  • Loading branch information
kliu-stripe committed Aug 12, 2024
1 parent d903320 commit bbf60ba
Showing 1 changed file with 40 additions and 0 deletions.
40 changes: 40 additions & 0 deletions test/suite/commands.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -490,4 +490,44 @@ suite('commands', function () {
assert.deepStrictEqual(telemetrySpy.args[0], ['openTriggerCustomizedEvent']);
});
});

suite('createStripeSample', () => {
let stripeSamples: any;
let stripeCommands: Commands;

setup(() => {
stripeSamples = {
selectAndCloneSample: sinon.stub().resolves()
};
stripeCommands = new Commands(telemetry, terminal, extensionContext);
});

test('calls selectAndCloneSample with no arguments when no sample is provided', async () => {
await stripeCommands.createStripeSample(stripeSamples);
assert.strictEqual(stripeSamples.selectAndCloneSample.calledOnce, true);
assert.deepStrictEqual(stripeSamples.selectAndCloneSample.firstCall.args, ['','']);
});

test('calls selectAndCloneSample with sample name when provided', async () => {
const sampleName = 'accept-a-payment';
await stripeCommands.createStripeSample(stripeSamples, sampleName);
assert.strictEqual(stripeSamples.selectAndCloneSample.calledOnce, true);
assert.deepStrictEqual(stripeSamples.selectAndCloneSample.firstCall.args, [sampleName, '']);
});

test('calls selectAndCloneSample with sample and integration when both are provided', async () => {
const sampleName = 'accept-a-payment';
const integration = 'payment-element';
await stripeCommands.createStripeSample(stripeSamples, sampleName, integration);
assert.strictEqual(stripeSamples.selectAndCloneSample.calledOnce, true);
assert.deepStrictEqual(stripeSamples.selectAndCloneSample.firstCall.args, [sampleName, integration]);
});

test('sends telemetry event when called', async () => {
const telemetrySpy = sandbox.spy(telemetry, 'sendEvent');
await stripeCommands.createStripeSample(stripeSamples);
assert.strictEqual(telemetrySpy.calledOnce, true);
assert.deepStrictEqual(telemetrySpy.firstCall.args, ['createStripeSample']);
});
});
});

0 comments on commit bbf60ba

Please sign in to comment.