Skip to content

Instantly share code, notes, and snippets.

View delfick's full-sized avatar

Stephen Moore delfick

View GitHub Profile
@delfick
delfick / a_readme.rst
Last active July 25, 2021 07:35
An example photons script that creates a flicker effect on one or more devices.

To setup download flicker.py somewhere and in that folder:

# Using a version of python greater or equal to 3.6
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install lifx-photons-core
$ python flicker.py

To run against all devices on the network with default options:

@delfick
delfick / flicker.py
Created December 16, 2019 09:34
An example photons script that creates a flicker effect on one or more devices.
from photons_app.actions import an_action
from photons_app import helpers as hp
from photons_control.script import FromGeneratorPerSerial
from photons_messages import LightMessages
from delfick_project.norms import sb, Meta, BadSpecValue
from delfick_project.addons import addon_hook
import logging
import asyncio
function run() {
for (var i = 0; i < 10; i++) {
var response;
if (i % 2 == 0) {
response = "a";
}
console.log(response)
}
}
# coding: spec
from convex_scheduler.db import DatabaseConnection
from convex_scheduler import hooks
from photons_app.test_helpers import TestCase
from contextlib import contextmanager
from datetime import datetime
import uuid
@delfick
delfick / dates.py
Last active September 11, 2018 13:31
Something to group django orm models by month
from itertools import groupby, izip
from django.db import connections
from monthdelta import MonthDelta
import operator
import datetime
def months(startdate):
"""Yield all months since start"""
date = datetime.date(startdate.year, startdate.month, 1)
while True:
@delfick
delfick / test.py
Created March 25, 2012 11:46
Simple contextmanager to test for flask.abort()
'''
A context manager that checks for an exception to be raised
And an example of it being used to check that flask.abort() is called
Consists of
* Method for getting a dictionary of {http status code : werkzeug exception}
* Context manager for asserting something is raised (AssertRaises)
* unittest2.TestCase subclass that exposes API to access AssertRaises
AssertRaises is similar to what unittest2.assertRaises uses (unittest2.case._AssertRaisesContext)