Skip to content

Instantly share code, notes, and snippets.

@markhamilton1
markhamilton1 / AlgoLinkedListTests
Created March 1, 2015 15:47
Unit tests for AlgoLinkedList.py
import unittest
import AlgoLinkedList
class Test_LinkedList(unittest.TestCase):
def setUp(self):
pass
def test_list_new(self):
@markhamilton1
markhamilton1 / AlgoLinkedList.py
Created March 1, 2015 15:46
A basic linked list implementation.
import types
class Node(object):
"""
Used to hold the data used by the LinkedList class.
"""
def __init__(self, data=None, prev=None, next=None):
"""
@markhamilton1
markhamilton1 / AlgoQueueTests.py
Created February 15, 2015 17:29
UnitTests to test the queue class.
import unittest
import AlgoQueue
class Test_AlgoQueue(unittest.TestCase):
def setUp(self):
self.queue = AlgoQueue.Queue()
@markhamilton1
markhamilton1 / AlgoQueue.py
Created February 15, 2015 17:28
A simple implementation of a queue algorithm
class Element(object):
"""Used to hold a data item in the Queue."""
def __init__(self, data, prev):
"""Construct a new Element for the Queue.
data: the data to add to the Queue
prev: the previous Element in the Queue
"""
self.data = data
self.prev = prev
@markhamilton1
markhamilton1 / AlgoStackTests.py
Last active August 29, 2015 14:15
Unit tests for AlgoStack.py.
import unittest
import AlgoStack
class Test_AlgoStack(unittest.TestCase):
def setUp(self):
self.stack = AlgoStack.Stack()
def test_push(self):
@markhamilton1
markhamilton1 / AlgoStack.py
Last active August 29, 2015 14:15
A simple implementation of a stack in python
class Element(object):
"""Used to hold a data item on the Stack."""
def __init__(self, data, next):
"""Construct a new Element for the Stack.
data: the data to push onto the Stack
next: the next Element on the stack
"""
self.data = data
self.next = next
@markhamilton1
markhamilton1 / astrodatetests.py
Created December 30, 2014 02:25
Unit tests for astrodate.py.
import unittest
import astrodate
class Test_Date(unittest.TestCase):
def setUp(self):
self.lng0 = 64
self.zc0 = 4
self.dst0 = True
self.lct0 = (2012, 7, 23, 3, 37, 0, 'lct')
@markhamilton1
markhamilton1 / astrodate.py
Created December 30, 2014 02:23
The date time module for my AstroScript library.
import math
import sio
import time
DATE_DELIMITER = ','
DATE_PROMPT = "Enter a date"
DATE_FORMAT = "yr, mo, dy"
DATE_HELP = "No help available."
DATE_INVALID = "The entered date is invalid!"
DATETIME_PROMPT = "Enter a date-time"
import sio
sio.TITLE_CENTER = 15
sio.PROMPT_LENGTH = 25
sio.print_title('Simple IO Examples')
sio.print_newline()
sio.print_title('make_float_readable Examples')
sio.print_text(sio.make_float_readable(1))
@markhamilton1
markhamilton1 / sio.py
Last active August 29, 2015 13:58
sio
"""
The "sio" module provides support for basic interaction through command-line prompts and input.
"""
import sys
DOT_LEADER = '.'
HYP_LEADER = '-'
PROMPT_LENGTH = 55
TITLE_CENTER = 30