In [13]:
from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

from django.conf import settings
from django.contrib.auth import BACKEND_SESSION_KEY, SESSION_KEY, get_user_model
from django.contrib.sessions.backends.db import SessionStore
from django.contrib.staticfiles.testing import StaticLiveServerTestCase

from demoslogic.users.models import User
class Dump:
    pass
self = Dump()
self.user = User.objects.get(username = 'fredd')
self.user.delete()
user = User.objects.get_or_create(username = 'fredd', email = 'al@fons.com', password = 'tdsadaop-secretary5456')
session = SessionStore()
session[SESSION_KEY] = self.user.pk
session[BACKEND_SESSION_KEY] = settings.AUTHENTICATION_BACKENDS[0]
session.save()

In [ ]:
## to set a cookie we need to first visit the domain.
## 404 pages load the quickest!
self.browser.get(self.live_server_url + "/404_no_such_url/")
self.browser.add_cookie(dict(
    name=settings.SESSION_COOKIE_NAME,
    value=session.session_key,
    path='/',
))
self.browser.get(self.live_server_url + "/selenium/")

In [5]:
import datetime

from django.utils import timezone
from django.test import TestCase
from django.core.urlresolvers import resolve
from django.core.urlresolvers import reverse
from django.http import HttpRequest
from django.test import RequestFactory

from demoslogic.premises.models import Premise
from demoslogic.users.models import User
class TemplateTest(TestCase):

    def setUp(self):
        self.user = User.objects.create_user(username = 'Alfons', email = 'al@fons.com', password = 'top-secretary')
        self.new_premise = Premise.objects.create(user= self.user)
        time = timezone.now() - datetime.timedelta(days = 30)
        self.old_premise  =  Premise.objects.create(user = self.user, pub_date = time)
        self.otheruser = User.objects.create_user(username = 'Fred', email = 'f@red.com', password = 'top-secretary')

In [2]:
from demoslogic.premises.models import Premise
from demoslogic.arguments.models import Argument
argument_count = Premise.objects.all().latest()


---------------------------------------------------------------------------
AssertionError                            Traceback (most recent call last)
<ipython-input-2-2797fefe6c2c> in <module>()
      1 from demoslogic.premises.models import Premise
      2 from demoslogic.arguments.models import Argument
----> 3 argument_count = Premise.objects.all().latest()

C:\Tools\Anaconda\envs\demoslogic\lib\site-packages\django\db\models\query.py in latest(self, field_name)
    548 
    549     def latest(self, field_name=None):
--> 550         return self._earliest_or_latest(field_name=field_name, direction="-")
    551 
    552     def first(self):

C:\Tools\Anaconda\envs\demoslogic\lib\site-packages\django\db\models\query.py in _earliest_or_latest(self, field_name, direction)
    534         """
    535         order_by = field_name or getattr(self.model._meta, 'get_latest_by')
--> 536         assert bool(order_by), "earliest() and latest() require either a "\
    537             "field_name parameter or 'get_latest_by' in the model"
    538         assert self.query.can_filter(), \

AssertionError: earliest() and latest() require either a field_name parameter or 'get_latest_by' in the model

In [10]:
from demoslogic.premises.models import Premise
a = Premise.objects.get(id = 1)
a.key_object


Out[10]:
<django.db.models.fields.related_descriptors.create_reverse_many_to_one_manager.<locals>.RelatedManager at 0x2b7f1e46d30>

In [36]:
from demoslogic.users.models import User
from django.db.models import CharField, Value as V
from demoslogic.premises.models import Premise, CategorizationVote
from demoslogic.premises.forms import CategorizationVoteForm
from django.db.models.functions import Concat
p = Premise.objects.extra(where=["CONCAT(subject, \' \', predicate) = \'Pizza is\'"])
print(p.__dict__)


{'_prefetch_related_lookups': [], '_known_related_objects': {}, '_sticky_filter': False, '_db': None, '_prefetch_done': False, 'query': <django.db.models.sql.query.Query object at 0x00000138A71BE668>, '_fields': None, '_result_cache': None, '_hints': {}, '_for_write': False, '_iterable_class': <class 'django.db.models.query.ModelIterable'>, 'model': <class 'demoslogic.premises.models.Premise'>}

In [38]:
page_text.count('<circle') == (argument_count + premise_count)
print('class="link"')


class="link"

In [4]:
a = {"a": 1, "b":2 }
a.__iter__


Out[4]:
<method-wrapper '__iter__' of dict object at 0x000002D8A1F95848>

In [24]:
b = [1, 2]
c = ['a', 'b']
zipped = zip(b,c)
list(zipped)


Out[24]:
[(1, 'a'), (2, 'b')]

In [22]:
['Footballs is/are a type of Balls', 'Footballs is/are a type of Balls'] + ["sdfsd"]


Out[22]:
['Footballs is/are a type of Balls',
 'Footballs is/are a type of Balls',
 'sdfsd']

In [ ]: