Skip to content

Commit 866f717

Browse files
Ace Nassrifhinkel
Ace Nassri
authored andcommitted
AppEngine: add region tags (#1504)
1 parent 37ba2f2 commit 866f717

File tree

10 files changed

+374
-342
lines changed

10 files changed

+374
-342
lines changed

appengine/cloudsql/test/createTables.test.js

+63-61
Original file line numberDiff line numberDiff line change
@@ -61,72 +61,74 @@ const getSample = () => {
6161
beforeEach(tools.stubConsole);
6262
afterEach(tools.restoreConsole);
6363

64-
it('should create a table', async () => {
65-
const sample = getSample();
66-
const expectedResult = `Successfully created 'visits' table.`;
67-
68-
proxyquire(SAMPLE_PATH, {
69-
knex: sample.mocks.Knex,
70-
prompt: sample.mocks.prompt,
64+
describe('gae_flex_mysql_create_tables', () => {
65+
it('should create a table', async () => {
66+
const sample = getSample();
67+
const expectedResult = `Successfully created 'visits' table.`;
68+
69+
proxyquire(SAMPLE_PATH, {
70+
knex: sample.mocks.Knex,
71+
prompt: sample.mocks.prompt,
72+
});
73+
74+
assert.ok(sample.mocks.prompt.start.calledOnce);
75+
assert.ok(sample.mocks.prompt.get.calledOnce);
76+
assert.deepStrictEqual(
77+
sample.mocks.prompt.get.firstCall.args[0],
78+
exampleConfig
79+
);
80+
81+
await new Promise(r => setTimeout(r, 10));
82+
assert.ok(sample.mocks.Knex.calledOnce);
83+
assert.deepStrictEqual(sample.mocks.Knex.firstCall.args, [
84+
{
85+
client: 'mysql',
86+
connection: exampleConfig,
87+
},
88+
]);
89+
90+
assert.ok(sample.mocks.knex.schema.createTable.calledOnce);
91+
assert.strictEqual(
92+
sample.mocks.knex.schema.createTable.firstCall.args[0],
93+
'visits'
94+
);
95+
96+
assert.ok(console.log.calledWith(expectedResult));
97+
assert.ok(sample.mocks.knex.destroy.calledOnce);
7198
});
7299

73-
assert.ok(sample.mocks.prompt.start.calledOnce);
74-
assert.ok(sample.mocks.prompt.get.calledOnce);
75-
assert.deepStrictEqual(
76-
sample.mocks.prompt.get.firstCall.args[0],
77-
exampleConfig
78-
);
79-
80-
await new Promise(r => setTimeout(r, 10));
81-
assert.ok(sample.mocks.Knex.calledOnce);
82-
assert.deepStrictEqual(sample.mocks.Knex.firstCall.args, [
83-
{
84-
client: 'mysql',
85-
connection: exampleConfig,
86-
},
87-
]);
88-
89-
assert.ok(sample.mocks.knex.schema.createTable.calledOnce);
90-
assert.strictEqual(
91-
sample.mocks.knex.schema.createTable.firstCall.args[0],
92-
'visits'
93-
);
94-
95-
assert.ok(console.log.calledWith(expectedResult));
96-
assert.ok(sample.mocks.knex.destroy.calledOnce);
97-
});
100+
it('should handle prompt error', async () => {
101+
const error = new Error('error');
102+
const sample = getSample();
103+
sample.mocks.prompt.get = sinon.stub().yields(error);
98104

99-
it('should handle prompt error', async () => {
100-
const error = new Error('error');
101-
const sample = getSample();
102-
sample.mocks.prompt.get = sinon.stub().yields(error);
105+
proxyquire(SAMPLE_PATH, {
106+
knex: sample.mocks.Knex,
107+
prompt: sample.mocks.prompt,
108+
});
103109

104-
proxyquire(SAMPLE_PATH, {
105-
knex: sample.mocks.Knex,
106-
prompt: sample.mocks.prompt,
110+
await new Promise(r => setTimeout(r, 10));
111+
assert.ok(console.error.calledOnce);
112+
assert.ok(console.error.calledWith(error));
113+
assert.ok(sample.mocks.Knex.notCalled);
107114
});
108115

109-
await new Promise(r => setTimeout(r, 10));
110-
assert.ok(console.error.calledOnce);
111-
assert.ok(console.error.calledWith(error));
112-
assert.ok(sample.mocks.Knex.notCalled);
113-
});
114-
115-
it('should handle knex creation error', async () => {
116-
const error = new Error('error');
117-
const sample = getSample();
118-
sample.mocks.knex.schema.createTable = sinon
119-
.stub()
120-
.returns(Promise.reject(error));
121-
122-
proxyquire(SAMPLE_PATH, {
123-
knex: sample.mocks.Knex,
124-
prompt: sample.mocks.prompt,
116+
it('should handle knex creation error', async () => {
117+
const error = new Error('error');
118+
const sample = getSample();
119+
sample.mocks.knex.schema.createTable = sinon
120+
.stub()
121+
.returns(Promise.reject(error));
122+
123+
proxyquire(SAMPLE_PATH, {
124+
knex: sample.mocks.Knex,
125+
prompt: sample.mocks.prompt,
126+
});
127+
await new Promise(r => setTimeout(r, 10));
128+
assert.ok(console.error.calledOnce);
129+
assert.ok(
130+
console.error.calledWith(`Failed to create 'visits' table:`, error)
131+
);
132+
assert.ok(sample.mocks.knex.destroy.calledOnce);
125133
});
126-
await new Promise(r => setTimeout(r, 10));
127-
assert.ok(console.error.calledOnce);
128-
assert.ok(
129-
console.error.calledWith(`Failed to create 'visits' table:`, error)
130-
);
131-
assert.ok(sample.mocks.knex.destroy.calledOnce);
132134
});

appengine/cloudsql/test/server.test.js

+50-46
Original file line numberDiff line numberDiff line change
@@ -77,59 +77,63 @@ const getSample = () => {
7777
beforeEach(tools.stubConsole);
7878
afterEach(tools.restoreConsole);
7979

80-
it('should set up sample in Postgres', () => {
81-
const sample = getSample();
82-
83-
assert.ok(sample.mocks.express.calledOnce);
84-
assert.ok(sample.mocks.Knex.calledOnce);
85-
assert.deepStrictEqual(sample.mocks.Knex.firstCall.args, [
86-
{
87-
client: 'mysql',
88-
connection: {
89-
user: sample.mocks.process.env.SQL_USER,
90-
password: sample.mocks.process.env.SQL_PASSWORD,
91-
database: sample.mocks.process.env.SQL_DATABASE,
80+
describe('gae_flex_mysql_connect', () => {
81+
it('should set up sample in Postgres', () => {
82+
const sample = getSample();
83+
84+
assert.ok(sample.mocks.express.calledOnce);
85+
assert.ok(sample.mocks.Knex.calledOnce);
86+
assert.deepStrictEqual(sample.mocks.Knex.firstCall.args, [
87+
{
88+
client: 'mysql',
89+
connection: {
90+
user: sample.mocks.process.env.SQL_USER,
91+
password: sample.mocks.process.env.SQL_PASSWORD,
92+
database: sample.mocks.process.env.SQL_DATABASE,
93+
},
9294
},
93-
},
94-
]);
95+
]);
96+
});
9597
});
9698

97-
it('should record a visit', async () => {
98-
const sample = getSample();
99-
const expectedResult = 'Last 10 visits:\nTime: 1234, AddrHash: abcd';
100-
101-
await request(sample.app)
102-
.get('/')
103-
.expect(200)
104-
.expect(response => {
105-
assert.strictEqual(response.text, expectedResult);
106-
});
107-
});
99+
describe('gae_flex_mysql_app', () => {
100+
it('should record a visit', async () => {
101+
const sample = getSample();
102+
const expectedResult = 'Last 10 visits:\nTime: 1234, AddrHash: abcd';
103+
104+
await request(sample.app)
105+
.get('/')
106+
.expect(200)
107+
.expect(response => {
108+
assert.strictEqual(response.text, expectedResult);
109+
});
110+
});
108111

109-
it('should handle insert error', async () => {
110-
const sample = getSample();
111-
const expectedResult = 'insert_error';
112+
it('should handle insert error', async () => {
113+
const sample = getSample();
114+
const expectedResult = 'insert_error';
112115

113-
sample.mocks.knex.limit.returns(Promise.reject(expectedResult));
116+
sample.mocks.knex.limit.returns(Promise.reject(expectedResult));
114117

115-
await request(sample.app)
116-
.get('/')
117-
.expect(500)
118-
.expect(response => {
119-
assert.ok(response.text.includes(expectedResult));
120-
});
121-
});
118+
await request(sample.app)
119+
.get('/')
120+
.expect(500)
121+
.expect(response => {
122+
assert.ok(response.text.includes(expectedResult));
123+
});
124+
});
122125

123-
it('should handle read error', async () => {
124-
const sample = getSample();
125-
const expectedResult = 'read_error';
126+
it('should handle read error', async () => {
127+
const sample = getSample();
128+
const expectedResult = 'read_error';
126129

127-
sample.mocks.knex.limit.returns(Promise.reject(expectedResult));
130+
sample.mocks.knex.limit.returns(Promise.reject(expectedResult));
128131

129-
await request(sample.app)
130-
.get('/')
131-
.expect(500)
132-
.expect(response => {
133-
assert.ok(response.text.includes(expectedResult));
134-
});
132+
await request(sample.app)
133+
.get('/')
134+
.expect(500)
135+
.expect(response => {
136+
assert.ok(response.text.includes(expectedResult));
137+
});
138+
});
135139
});

appengine/cloudsql_postgresql/test/createTables.test.js

+64-62
Original file line numberDiff line numberDiff line change
@@ -61,73 +61,75 @@ const getSample = () => {
6161
beforeEach(tools.stubConsole);
6262
afterEach(tools.restoreConsole);
6363

64-
it('should create a table', async () => {
65-
const sample = getSample();
66-
const expectedResult = `Successfully created 'visits' table.`;
67-
68-
proxyquire(SAMPLE_PATH, {
69-
knex: sample.mocks.Knex,
70-
prompt: sample.mocks.prompt,
64+
describe('gae_flex_postgres_create_tables', () => {
65+
it('should create a table', async () => {
66+
const sample = getSample();
67+
const expectedResult = `Successfully created 'visits' table.`;
68+
69+
proxyquire(SAMPLE_PATH, {
70+
knex: sample.mocks.Knex,
71+
prompt: sample.mocks.prompt,
72+
});
73+
74+
assert.ok(sample.mocks.prompt.start.calledOnce);
75+
assert.ok(sample.mocks.prompt.get.calledOnce);
76+
assert.deepStrictEqual(
77+
sample.mocks.prompt.get.firstCall.args[0],
78+
exampleConfig
79+
);
80+
81+
await new Promise(r => setTimeout(r, 10));
82+
assert.ok(sample.mocks.Knex.calledOnce);
83+
assert.deepStrictEqual(sample.mocks.Knex.firstCall.args, [
84+
{
85+
client: 'pg',
86+
connection: exampleConfig,
87+
},
88+
]);
89+
90+
assert.ok(sample.mocks.knex.schema.createTable.calledOnce);
91+
assert.strictEqual(
92+
sample.mocks.knex.schema.createTable.firstCall.args[0],
93+
'visits'
94+
);
95+
96+
assert.ok(console.log.calledWith(expectedResult));
97+
assert.ok(sample.mocks.knex.destroy.calledOnce);
7198
});
7299

73-
assert.ok(sample.mocks.prompt.start.calledOnce);
74-
assert.ok(sample.mocks.prompt.get.calledOnce);
75-
assert.deepStrictEqual(
76-
sample.mocks.prompt.get.firstCall.args[0],
77-
exampleConfig
78-
);
79-
80-
await new Promise(r => setTimeout(r, 10));
81-
assert.ok(sample.mocks.Knex.calledOnce);
82-
assert.deepStrictEqual(sample.mocks.Knex.firstCall.args, [
83-
{
84-
client: 'pg',
85-
connection: exampleConfig,
86-
},
87-
]);
88-
89-
assert.ok(sample.mocks.knex.schema.createTable.calledOnce);
90-
assert.strictEqual(
91-
sample.mocks.knex.schema.createTable.firstCall.args[0],
92-
'visits'
93-
);
94-
95-
assert.ok(console.log.calledWith(expectedResult));
96-
assert.ok(sample.mocks.knex.destroy.calledOnce);
97-
});
100+
it('should handle prompt error', async () => {
101+
const error = new Error('error');
102+
const sample = getSample();
103+
sample.mocks.prompt.get = sinon.stub().yields(error);
98104

99-
it('should handle prompt error', async () => {
100-
const error = new Error('error');
101-
const sample = getSample();
102-
sample.mocks.prompt.get = sinon.stub().yields(error);
105+
proxyquire(SAMPLE_PATH, {
106+
knex: sample.mocks.Knex,
107+
prompt: sample.mocks.prompt,
108+
});
103109

104-
proxyquire(SAMPLE_PATH, {
105-
knex: sample.mocks.Knex,
106-
prompt: sample.mocks.prompt,
110+
await new Promise(r => setTimeout(r, 10));
111+
assert.ok(console.error.calledOnce);
112+
assert.ok(console.error.calledWith(error));
113+
assert.ok(sample.mocks.Knex.notCalled);
107114
});
108115

109-
await new Promise(r => setTimeout(r, 10));
110-
assert.ok(console.error.calledOnce);
111-
assert.ok(console.error.calledWith(error));
112-
assert.ok(sample.mocks.Knex.notCalled);
113-
});
114-
115-
it('should handle knex creation error', async () => {
116-
const error = new Error('error');
117-
const sample = getSample();
118-
sample.mocks.knex.schema.createTable = sinon
119-
.stub()
120-
.returns(Promise.reject(error));
121-
122-
proxyquire(SAMPLE_PATH, {
123-
knex: sample.mocks.Knex,
124-
prompt: sample.mocks.prompt,
116+
it('should handle knex creation error', async () => {
117+
const error = new Error('error');
118+
const sample = getSample();
119+
sample.mocks.knex.schema.createTable = sinon
120+
.stub()
121+
.returns(Promise.reject(error));
122+
123+
proxyquire(SAMPLE_PATH, {
124+
knex: sample.mocks.Knex,
125+
prompt: sample.mocks.prompt,
126+
});
127+
128+
await new Promise(r => setTimeout(r, 10));
129+
assert.ok(console.error.calledOnce);
130+
assert.ok(
131+
console.error.calledWith(`Failed to create 'visits' table:`, error)
132+
);
133+
assert.ok(sample.mocks.knex.destroy.calledOnce);
125134
});
126-
127-
await new Promise(r => setTimeout(r, 10));
128-
assert.ok(console.error.calledOnce);
129-
assert.ok(
130-
console.error.calledWith(`Failed to create 'visits' table:`, error)
131-
);
132-
assert.ok(sample.mocks.knex.destroy.calledOnce);
133135
});

0 commit comments

Comments
 (0)