def test_is_control(self):
        exp = Experiment("trololo", ["yes", "no"], redis=self.redis)
        exp.save()

        alt = Alternative("yes", exp, redis=self.redis)
        self.assertTrue(alt.is_control())
        exp.delete()
Beispiel #2
0
    def test_is_control(self):
        exp = Experiment('trololo', ['yes', 'no'], redis=self.redis)
        exp.save()

        alt = Alternative('yes', exp, redis=self.redis)
        self.assertTrue(alt.is_control())
        exp.delete()
    def test_is_not_valid(self):
        not_valid = Alternative.is_valid(1)
        self.assertFalse(not_valid)

        not_valid = Alternative.is_valid(":123:name")
        self.assertFalse(not_valid)

        not_valid = Alternative.is_valid("_123name")
        self.assertFalse(not_valid)

        not_valid = Alternative.is_valid("&123name")
        self.assertFalse(not_valid)
Beispiel #4
0
    def test_is_not_valid(self):
        not_valid = Alternative.is_valid(1)
        self.assertFalse(not_valid)

        not_valid = Alternative.is_valid(':123:name')
        self.assertFalse(not_valid)

        not_valid = Alternative.is_valid('_123name')
        self.assertFalse(not_valid)

        not_valid = Alternative.is_valid('&123name')
        self.assertFalse(not_valid)
Beispiel #5
0
 def test_convert(self, mock_find):
     exp = Experiment("test", ["no", "yes"], winner=None)
     exp.convert = Mock(return_value=Alternative("yes", exp))
     mock_find.return_value = exp
     alternative = convert("test", "id1")
     self.assertEqual("yes", alternative.name)
     self.assertEqual("test", alternative.experiment.name)
Beispiel #6
0
 def test_participate_with_client_chosen_alternative(self, mock_find_or_create):
     exp = Experiment("test", ["no", "yes"], winner=None)
     exp.get_alternative = Mock(return_value=Alternative("yes", exp))
     mock_find_or_create.return_value = exp
     alternative = participate("test", ["no", "yes"], "id1", alternative="yes")
     exp.get_alternative.assert_called_once()
     self.assertEqual("yes", alternative.name)
Beispiel #7
0
 def test_participate(self, mock_find_or_create):
     exp = Experiment("test", ["no", "yes"], winner=None)
     exp.get_alternative = Mock(return_value=Alternative("yes", exp))
     mock_find_or_create.return_value = exp
     alternative = participate("test", ["no", "yes"], "id1")
     self.assertEqual("yes", alternative.name)
     self.assertEqual("test", alternative.experiment.name)
Beispiel #8
0
 def test_convert_with_kpi(self, mock_find):
     exp = Experiment("test", ["no", "yes"], winner=None)
     exp.convert = Mock(return_value=Alternative("yes", exp))
     mock_find.return_value = exp
     alternative = convert("test", "id1", kpi="goal1")
     # TODO: we're not really asserting anything about the KPI
     self.assertEqual("yes", alternative.name)
     self.assertEqual("test", alternative.experiment.name)
Beispiel #9
0
    def test_participate_with_bucket(self, mock_find_or_create, mock_record_participation):
        exp = Experiment("test", ["no", "yes"], winner=None)
        exp.is_archived = Mock(return_value=False)
        exp.existing_alternative = Mock(return_value=False)
        exp.is_client_excluded = Mock(return_value=False)
        mock_find_or_create.return_value = exp

        mock_record_participation.return_value = Alternative("no", exp)

        alternative = participate("test", ["no", "yes"], "id1", bucket="no")
        self.assertEqual("no", alternative.name)
    def test_is_valid(self):
        valid = Alternative.is_valid("1")
        self.assertTrue(valid)

        unicode_valid = Alternative.is_valid(u"valid")
        self.assertTrue(unicode_valid)
    def test_key(self):
        exp = Experiment("show-something", ["yes", "no"], redis=self.redis)

        alt = Alternative("yes", exp, redis=self.redis)
        key = alt.key()
        self.assertEqual(key, "sxp:show-something:yes")
Beispiel #12
0
    def test_is_valid(self):
        valid = Alternative.is_valid('1')
        self.assertTrue(valid)

        unicode_valid = Alternative.is_valid(u'valid')
        self.assertTrue(unicode_valid)
Beispiel #13
0
    def test_key(self):
        exp = Experiment('show-something', ['yes', 'no'], redis=self.redis)

        alt = Alternative('yes', exp, redis=self.redis)
        key = alt.key()
        self.assertEqual(key, 'sxp:show-something:yes')