def test_foo(self): goz = Gozokia() goz.initialize() goz.set_io(input_type="value", output_type="value") value = "foo" self.assertEqual(goz.api(value), "bar") value = "foo" self.assertEqual(goz.api(value), "bar second") value = "foo" self.assertEqual(goz.api(value), "No rules. you said: foo")
def test_greetings(self): goz = Gozokia() goz.rule(name='greeting', type=goz.RAISE_COND, rank=100)(GreetingRaise) goz.initialize() goz.set_io(input_type="value", output_type="value") value = "foo" self.assertEqual(goz.api(value), "bar") value = "Bacon" self.assertEqual(goz.api(value), "No rules. you said: Bacon") value = "Hi" self.assertEqual(goz.api(value), "Hi, who are you?") value = "i am Alberto" self.assertEqual(goz.api(value), "Hi, alberto")
def api(request): # Initialize if request.user.is_authenticated(): goz = Gozokia(user=request.user.id, session=request.session.session_key) # goz.rule(name='greeting', type=goz.OBJETIVE_COND, rank=100)(GreetingObjetive) goz.rule(name='greeting', type=goz.RAISE_COND, rank=100)(GreetingRaise) goz.rule(name='whoami', type=goz.RAISE_COND, rank=1)(Whoami) goz.initialize(model=GozokiaChat) return JsonResponse({'input': request.GET.get('input'), 'session': request.session.session_key, 'output': goz.api(request.GET.get('input')), }) else: return HttpResponse("No login")
def get(self, request, *args, **kwargs): # Initialize if request.user.is_authenticated(): goz = Gozokia(user=request.user.id, session=request.session.session_key) goz.rule(name='greeting', type=goz.RAISE_COND, rank=100)(GreetingRaise) goz.rule(name='whoami', type=goz.RAISE_COND, rank=1)(Whoami) goz.initialize(model=GozokiaChat) return render(request, self.template_name, {'input': request.GET.get('input'), 'session': request.session.session_key, 'output': goz.api(request.GET.get('input')), }) else: return HttpResponse("No login")
#!/usr/bin/env python3 # encoding: utf-8 import os import sys sys.path.insert(0, os.getcwd()) from gozokia import Gozokia # First, declare our settings file: os.environ.setdefault("GOZOKIA_SETTINGS_MODULE", "settings") # Initialize goz = Gozokia() # Run Gozokia console if __name__ == '__main__': goz.initialize() input = "qwerty" goz.api(input) input = "alberto" goz.api(input) input = "foo" goz.api(input) input = "foo" goz.api(input) input = "foo" goz.api(input)