gpt-mock

Test library for mocking out Google Publisher Tags

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
gpt-mock
1121.0.28 years ago8 years agoMinified + gzip package size for gpt-mock in KB

Readme

Overview
Version License Build Status Code Climate Coverage Dependencies Commitizen friendly semantic-release
A test library to mock out the Google Publisher Tag library.

Installation

You can include gpt-mock using npm:
npm install --save-dev gpt-mock

Accessing

ES6/ES2015

import GPT from 'gpt-mock';

AMD

define(['gpt-mock'], function(GPT) {

});

CommonJS

var GPT = require('gpt-mock');

Usage

This library is used to mock out the Google Publisher Tag (GPT) library, so the most natural way to use this would be:
window.googletag = new GPT();

Note that the instance is left as "unloaded", meaning apiReady will be false, and googletag.cmd.push will only accumulate the functions.
To mark the tag library as having been loaded, use the following:
window.googletag._loaded();

This library is intended to be as API-compatible as possible with the production code. Any member that starts with an underscore (_) is not part of the API and is a mock implementation detail.
Help/Bugs/Requests
We ♥ bug reports.
Have a problem? Need help? Would you like additional functionality added? We use GitHub's ticket system for keeping track of these requests.
Please check out the existing issues, and if you don't see that your problem is already being worked on, please file a new issue. The more information the better to describe your problem.
Contributing
We ♥ forks and pull requests.
Please see CONTRIBUTING.md for full details.

Environment

The project requires nodejs (>=5.6) and npm (>=3.6.0) for development. It has no runtime dependencies.

Developing

Check the code out and install the development dependencies using:
npm install

Building

To build the code, run
npm run build

Linting

We use ESLint and JSCS to do static analysis of the JavaScript and keep things smelling good. To run both, use:
npm run lint

Testing

Using travis-ci, the Mocha unit tests are run on every commit using PhantomJS to run the tests with a real browser.
To test the code locally, you can use:
npm test

To run tests in Test-Driven-Development mode, where the test will be run after every change, use:
npm run tdd

Issue Guidelines

Please add a failing bug test and create a Pull Request.
License
See LICENSE.
Some of the documentation incorporated into this source code is based on the Google documentation which is licensed under the Creative Commons Attribution 3.0 License. Some of the material may have been modified for use in this library. Copyright of the incorporated documentation remains Google, Inc. Google is a registered trademark of Google and/or its affiliates and this project is not intended to represent that Google endorses this library.