class TestRedisBayesPrideAndPrejudice(unittest.TestCase):

    def setUp(self):
        self.classifier = RedisBayesWorkClassifier(
            name="Pride and Prejudice",
            datastore=TEST_REDIS)
        self.labels = [False, # b1629290
                       False, # b2006265
                       True, # b1276421
                       True, # b1313597
                       True, # b1329008
                       True, # b1143215
                       True, # b1177629
                       False, # b1224585
                       True, # b1009861
                       True, # b1605863
                       True, # b1685471
                       False, # b1724262
                       False, # b1724269
                       False, # b1285281
                       False, # b1629141
                       False, # b1636638
                       False, # b1636639
                       False, # b1285281
                       True, # b2033293
                       False, # b1724269
                       False, # b1724262
                       False, # b1629141
                       False, # b1238652
                       False, # b1433978
                       False, # b1628582
                       False, # b1022859
                       False, # b1773251
                       False, # b2089950
                       False, # b1146944
                       False] # b1675906
        self.classifier.load_training_marc(
            os.path.join('ColoradoCollege',
                         'pride-and-prejudice.mrc'),
            self.labels)

    def test_init(self):
        self.assert_(self.classifier is not None)
        self.assertEquals(len(self.labels), 30)

        
    def test_classify_(self):
        false_tokens = ["infinite jest david foster wallace",
                        "jane austen sense sensibility"]
        true_tokens = ["pride prejudice jane austen",
                       "pride prejudice jane austen 1775 1817"]
        for tokens in false_tokens:
            print("{0} is {1}".format(tokens,
                                      self.classifier.__classify__(tokens)))
            self.assert_(not self.classifier.__classify__(tokens))
        for tokens in true_tokens:
            self.assert_(self.classifier.__classify__(tokens))
 
    def tearDown(self):
        TEST_REDIS.flushdb()
class TestRedisBayesMobyDick(unittest.TestCase):

    def setUp(self):
        self.classifier = RedisBayesWorkClassifier(
            name="Moby Dick",
            datastore=TEST_REDIS)
        self.labels = [False, False, False, True, True, False, True, False,
                       True, False, True, False, False, False, True, True, True,
                       True, True, True, False, False]
        self.classifier.load_training_marc(os.path.join('ColoradoCollege',
                                                        'moby-dick.mrc'),
                                           self.labels)

    def test_init(self):
        self.assert_(self.classifier is not None)
        self.assertEquals(len(self.labels), 22) 

    def test_classify(self):
        false_tokens = ["pride prejudice jane austen",
                        "infinite jest david foster wallace",
                        "jane eyre emily bronte"]
        true_tokens = ["moby dick hermin melville 1841 1891",
                       "moby dick herman melville"]
        for tokens in false_tokens:
            self.assert_(not self.classifier.__classify__(tokens))
        for tokens in true_tokens:
            self.assert_(self.classifier.__classify__(tokens))

     
    def tearDown(self):
        TEST_REDIS.flushdb()
 def setUp(self):
     self.classifier = RedisBayesWorkClassifier(
         name="Moby Dick",
         datastore=TEST_REDIS)
     self.labels = [False, False, False, True, True, False, True, False,
                    True, False, True, False, False, False, True, True, True,
                    True, True, True, False, False]
     self.classifier.load_training_marc(os.path.join('ColoradoCollege',
                                                     'moby-dick.mrc'),
                                        self.labels)
class TestRedisBayesPrideAndPrejudice(unittest.TestCase):
    def setUp(self):
        self.classifier = RedisBayesWorkClassifier(name="Pride and Prejudice", datastore=TEST_REDIS)
        self.labels = [
            False,  # b1629290
            False,  # b2006265
            True,  # b1276421
            True,  # b1313597
            True,  # b1329008
            True,  # b1143215
            True,  # b1177629
            False,  # b1224585
            True,  # b1009861
            True,  # b1605863
            True,  # b1685471
            False,  # b1724262
            False,  # b1724269
            False,  # b1285281
            False,  # b1629141
            False,  # b1636638
            False,  # b1636639
            False,  # b1285281
            True,  # b2033293
            False,  # b1724269
            False,  # b1724262
            False,  # b1629141
            False,  # b1238652
            False,  # b1433978
            False,  # b1628582
            False,  # b1022859
            False,  # b1773251
            False,  # b2089950
            False,  # b1146944
            False,
        ]  # b1675906
        self.classifier.load_training_marc(os.path.join("ColoradoCollege", "pride-and-prejudice.mrc"), self.labels)

    def test_init(self):
        self.assert_(self.classifier is not None)
        self.assertEquals(len(self.labels), 30)

    def test_classify_(self):
        false_tokens = ["infinite jest david foster wallace", "jane austen sense sensibility"]
        true_tokens = ["pride prejudice jane austen", "pride prejudice jane austen 1775 1817"]
        for tokens in false_tokens:
            print("{0} is {1}".format(tokens, self.classifier.__classify__(tokens)))
            self.assert_(not self.classifier.__classify__(tokens))
        for tokens in true_tokens:
            self.assert_(self.classifier.__classify__(tokens))

    def tearDown(self):
        TEST_REDIS.flushdb()
 def setUp(self):
     self.classifier = RedisBayesWorkClassifier(name="Pride and Prejudice", datastore=TEST_REDIS)
     self.labels = [
         False,  # b1629290
         False,  # b2006265
         True,  # b1276421
         True,  # b1313597
         True,  # b1329008
         True,  # b1143215
         True,  # b1177629
         False,  # b1224585
         True,  # b1009861
         True,  # b1605863
         True,  # b1685471
         False,  # b1724262
         False,  # b1724269
         False,  # b1285281
         False,  # b1629141
         False,  # b1636638
         False,  # b1636639
         False,  # b1285281
         True,  # b2033293
         False,  # b1724269
         False,  # b1724262
         False,  # b1629141
         False,  # b1238652
         False,  # b1433978
         False,  # b1628582
         False,  # b1022859
         False,  # b1773251
         False,  # b2089950
         False,  # b1146944
         False,
     ]  # b1675906
     self.classifier.load_training_marc(os.path.join("ColoradoCollege", "pride-and-prejudice.mrc"), self.labels)
 def setUp(self):
     self.classifier = RedisBayesWorkClassifier(name="Moby Dick", datastore=TEST_REDIS)
     self.labels = [
         False,
         False,
         False,
         True,
         True,
         False,
         True,
         False,
         True,
         False,
         True,
         False,
         False,
         False,
         True,
         True,
         True,
         True,
         True,
         True,
         False,
         False,
     ]
     self.classifier.load_training_marc(os.path.join("ColoradoCollege", "moby-dick.mrc"), self.labels)
class TestRedisBayesMobyDick(unittest.TestCase):
    def setUp(self):
        self.classifier = RedisBayesWorkClassifier(name="Moby Dick", datastore=TEST_REDIS)
        self.labels = [
            False,
            False,
            False,
            True,
            True,
            False,
            True,
            False,
            True,
            False,
            True,
            False,
            False,
            False,
            True,
            True,
            True,
            True,
            True,
            True,
            False,
            False,
        ]
        self.classifier.load_training_marc(os.path.join("ColoradoCollege", "moby-dick.mrc"), self.labels)

    def test_init(self):
        self.assert_(self.classifier is not None)
        self.assertEquals(len(self.labels), 22)

    def test_classify(self):
        false_tokens = ["pride prejudice jane austen", "infinite jest david foster wallace", "jane eyre emily bronte"]
        true_tokens = ["moby dick hermin melville 1841 1891", "moby dick herman melville"]
        for tokens in false_tokens:
            self.assert_(not self.classifier.__classify__(tokens))
        for tokens in true_tokens:
            self.assert_(self.classifier.__classify__(tokens))

    def tearDown(self):
        TEST_REDIS.flushdb()
 def setUp(self):
     self.classifier = RedisBayesWorkClassifier(
         name="Pride and Prejudice",
         datastore=TEST_REDIS)
     self.labels = [False, # b1629290
                    False, # b2006265
                    True, # b1276421
                    True, # b1313597
                    True, # b1329008
                    True, # b1143215
                    True, # b1177629
                    False, # b1224585
                    True, # b1009861
                    True, # b1605863
                    True, # b1685471
                    False, # b1724262
                    False, # b1724269
                    False, # b1285281
                    False, # b1629141
                    False, # b1636638
                    False, # b1636639
                    False, # b1285281
                    True, # b2033293
                    False, # b1724269
                    False, # b1724262
                    False, # b1629141
                    False, # b1238652
                    False, # b1433978
                    False, # b1628582
                    False, # b1022859
                    False, # b1773251
                    False, # b2089950
                    False, # b1146944
                    False] # b1675906
     self.classifier.load_training_marc(
         os.path.join('ColoradoCollege',
                      'pride-and-prejudice.mrc'),
         self.labels)