2014-07-22 12 views
5

मेरे एप्लिकेशन का परीक्षण करने के लिए कोशिश कर रहा हूँ, लेकिन यकीन है कि परीक्षण परिवेश में Django-allauth कॉन्फ़िगर कैसे नहीं। मैं हो रही है:परीक्षण Django allauth

ImproperlyConfigured: No Facebook app configured: please add a SocialApp using the Django admin

मेरे दृष्टिकोण अब तक एप्लिकेशन वस्तुओं tests.py अंदर वास्तविक फेसबुक ऐप मानकों के साथ है, जो काम करता है एक अनुप्रयोग सही ढंग से स्थानीय स्तर पर ब्राउज़र में दृष्टांत के लिए है:

from allauth.socialaccount.models import SocialApp 

apper = SocialApp.objects.create(provider=u'facebook', 
    name=u'fb1', client_id=u'7874132722290502', 
    secret=u'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') 
apper.sites.create(domain='localhost:8000', name='creyu.org') 

मैं कैसे कर सकते हैं इन परीक्षणों को चलाना? धन्यवाद

उत्तर

3

कहाँ tests.py अंदर आप इस एप्लिकेशन को वस्तु का दृष्टांत करते हैं? यदि यह setUpModule() विधि के अंदर है, तो कोई समस्या नहीं होनी चाहिए।

व्यक्तिगत रूप से, मैं प्रासंगिक जानकारी के साथ एक दृढ़ init_facebook_app.json बन जाएगा और उसके बाद tests.py अंदर (परीक्षण मामलों से पहले) को परिभाषित:

from django.core.management import call_command  

def setUpModule(): 
    call_command('loaddata', 'init_facebook_app.json', verbosity=0) 

यह सुनिश्चित करता है कि स्थिरता में डेटा से पहले परीक्षण चलाए जा रहे हैं लोड किए गए हैं , और वे केवल एक बार लोड होते हैं, यानी प्रत्येक परीक्षण से पहले नहीं। Call_command के संबंध में reference के लिए इसे देखें।

अन्त में, इंटरनेट पर कहीं भी अपने फेसबुक ऐप गुप्त कुंजी पोस्टिंग एक अच्छा विचार नहीं है - मैं इसे रीसेट होगा अगर मैं तुम्हें थे।

+1

मैं एक testcase 'def' के अंदर एप्लिकेशन वस्तु instantiated था। फिक्स्चर, बहुत अच्छा होगा सिवाय मैं की तर्ज पर अनंत संकट हो रही है: http://stackoverflow.com/questions/19857406/django-unable-to-load-test-fixtures-integrityerror है जो मैं जब मिल अपने setUp मॉड्यूल समाधान का उपयोग कर। कोई अन्य विचार? पुन: गुप्त कुंजी: मैं चिंता की सराहना करता हूं लेकिन पोस्टिंग से पहले मैंने इसे यादृच्छिक बना दिया था। – KindOfGuy

+1

हम्म, मुझे नुकसान हो रहा है। यह देखने के लिए कि क्या यह काम करता है, मैन्युअल रूप से स्थिरता बनाने का प्रयास करें। '[{" पीके ": 1," मॉडल ":" साइट्ससाइट "," फ़ील्ड "की पंक्तियों के साथ कुछ: {" डोमेन ":" 127.0.0.1:8000 "," name ":" creyu.org " }}, {"पीके": 1, "मॉडल": "socialaccount.socialapp", "फ़ील्ड": {"नाम": "फेसबुक", "साइट्स": [1], "गुप्त": "XXX", " client_id ":" XXX "," key ":" "," प्रदाता ":" facebook "}}]' – kreld

+0

फिर से, 'अनुचित रूप से कॉन्फ़िगर' के साथ चुटकुले। मैंने वैधता सुनिश्चित करने के लिए डेटा डंप से सीधे विशिष्ट स्थिरता खंड लिया। इसे किसी और तरह की आवश्यकता होनी चाहिए। शायद मुझे ऊपर उल्लिखित मुख्य स्थिरता त्रुटियों का सामना करना पड़ेगा। कोई अन्य विचार? धन्यवाद! – KindOfGuy

0

मैं एक प्रवास बनाना होगा ताकि आपकी सभी वातावरण डेटा

है जैसे

import os 
from django.db import models, migrations 
from django.core.management import call_command 
from django.conf import settings 

class Migration(migrations.Migration): 

    def add_initial_providers(apps, schema_editor): 
     import pdb;pdb.set_trace() 
     call_command(
      'loaddata', 
      os.path.join(settings.BASE_DIR,   'fixtures/social_auth.json'), 
     verbosity=0) 

dependencies = [ 
    ('my_app', '001_auto_20160128_1846'), 
] 


operations = [ 
    migrations.RunPython(add_initial_providers), 
] 
संबंधित मुद्दे