Skip to content

Instantly share code, notes, and snippets.

function findSuitableRepacements(j, code) {
return j(code).find(j.ExpressionStatement, {
expression: {
type: 'CallExpression',
callee: {
type: 'MemberExpression',
property: {
type: 'Identifier',
name: 'mockjax',
},
import Ember from 'ember';
import HookMixin from '../my-mixin';
export default Ember.Component.extend(HookMixin, {
didInsertElement() {
this._super(...arguments);
console.log('main');
}
});
@patocallaghan
patocallaghan / ember-model-belongs-to-test.js
Last active May 15, 2019 11:15
Ember Model -> Ember Data Transforms
import { setupTest } from 'ember-qunit';
import { setupFactoryGuy } from 'ember-data-factory-guy';
import { module, test } from 'qunit';
import EmberModelBelongsTo from 'embercom/transforms/ember-model-belongs-to';
import { attr } from 'ember-model';
import IntercomModel from 'embercom/models/types/intercom-model';
import sinon from 'sinon';
let FakeModel = IntercomModel.extend({
id: attr(),
@patocallaghan
patocallaghan / controllers.application.js
Created March 14, 2019 22:53
Throttle Debounce 3.4
import Ember from 'ember';
export default Ember.Controller.extend({
emberVersion: '3.4',
count: 0,
init() {
Ember.run.debounce(this, this.someFunction, 0);
Ember.run.throttle(this, this.someFunction, 0);
},
someFunction() {
@patocallaghan
patocallaghan / controllers.application.js
Last active March 14, 2019 22:53
Throttle Debounce 3.3
import Ember from 'ember';
export default Ember.Controller.extend({
emberVersion: '3.3',
count: 0,
init() {
Ember.run.debounce(this, this.someFunction, 0);
Ember.run.throttle(this, this.someFunction, 0);
},
someFunction() {
function checkTestsOpen() {
if (attempts > 50) { return; }
openedJobs = document.querySelectorAll('.build-details-pipeline-job.build-details-pipeline-job-expanded');
if (openedJobs.length === buildJobs) {
getDeprecationWarnings();
} else {
setTimeout(checkTestsOpen, 200);
}
}
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
const ESLINT_RULE_NAME = 'intercom/no-mockjax';
const AST_TYPE = 'MemberExpression';
function shouldAddDisableComment(path) {
return path.object && path.object.name === '$' && path.property.name === 'mockjax';
}
function closestAncestorOfType(startPath, typeRegex) {
let current = startPath.parentPath;
while (current.parentPath && !typeRegex.test(current.value.type)) {
function checkTestsOpen() {
if (attempts > 50) { return; }
openedJobs = document.querySelectorAll('.build-details-pipeline-job-state-failed.build-details-pipeline-job-expanded');
if (openedJobs.length === failedJobs) {
getFailedTests();
getTimedOutJobs();
} else {
setTimeout(checkTestsOpen, 200);
}
}
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
count: 0,
someValue: Ember.computed('count', function() {
let value = `Count: ${this.get('count')}`;
return Ember.inspect(value);
}),
});