/**
 * Copyright 2017, Google, Inc.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

'use strict';

const proxyquire = require(`proxyquire`).noCallThru();
const sinon = require(`sinon`);
const test = require(`ava`);
const tools = require(`@google-cloud/nodejs-repo-tools`);

test.before(tools.stubConsole);
test.after.always(tools.restoreConsole);

test.cb(`should create a task`, (t) => {
  const responseMock = {
    name: 'foo'
  };
  const cloudtasksMock = {
    projects: {
      locations: {
        queues: {
          tasks: {
            create: sinon.stub().yields(responseMock)
          }
        }
      }
    }
  };
  const authClientMock = {};

  const util = proxyquire(`../createTask`, {
    googleapis: {
      cloudtasks: sinon.stub().returns(cloudtasksMock),
      auth: {
        getApplicationDefault: sinon.stub().yields(null, authClientMock)
      }
    }
  });

  util.createTask('p', 'l', 'q', {});

  setTimeout(() => {
    t.true(console.log.called);
    t.is(cloudtasksMock.projects.locations.queues.tasks.create.callCount, 1);
    t.end();
  }, 500);
});

@@ -1222,24 +1222,42 @@
 ogleapis: %7B%0A
+      google: %7B%0A  
       cloudt
@@ -1310,16 +1310,18 @@
     
+  
 auth: %7B%0A
     
@@ -1312,24 +1312,26 @@
     auth: %7B%0A
+  
         getA
@@ -1387,24 +1387,34 @@
 ClientMock)%0A
+        %7D%0A
       %7D%0A    

Fix test