Angular.js: لم تعد الزاوي السخيفة تسخر من ملفات تعريف الارتباط بالمتصفح

تم إنشاؤها على ٢٧ أغسطس ٢٠١٥  ·  3تعليقات  ·  مصدر: angular/angular.js

لقد انتقلنا مؤخرًا إلى angular 1.4 ، ولاحظنا فشل بعض الاختبارات بشكل متقطع بسبب الحالة المتبقية بين الاختبارات في ملفات تعريف الارتباط. يبدو أن الاستهزاء بملفات تعريف الارتباط قد أزيل من الزاوي في الإصدارات الأحدث. لدي زوجان من الغطس لتوضيح هذه النقطة.

هنا ، في angular 1.3 ، يتم تعيين ملف تعريف الارتباط في $ cookieStore في اختبار واحد ، ولم يتم تحديده في $ cookieStore في الاختبارات اللاحقة:
http://plnkr.co/edit/WbRKACxBvJkHUmJwntN4؟p=preview

ومع ذلك ، في Angular 1.4 ، لا يزال ملف تعريف الارتباط مضبوطًا على اختبارات لاحقة ، مما يؤدي إلى فشلها:
http://plnkr.co/edit/c6jpOmmSuufSYvQysdTQ؟p=preview

هل تمت إزالة هذه الوظيفة عن قصد ، وإذا كان الأمر كذلك ، فهل يمكنك إخباري بما هو الحل البديل المقصود؟

ngCookies investigation

التعليق الأكثر فائدة

هل يعتقد فريق Angular أنه لا أحد يحتاج إلى اختبار الإعداد والحصول على ملفات تعريف الارتباط باستخدام ngCookies؟ لقد صدمت عندما اكتشفت أنه بعد مرور عام على إصدار 1.4 ، لم يتم التعامل مع هذا الأمر بعد.

ال 3 كومينتر

shahata هل تعرف بأي فرصة لماذا هناك فرق؟

Narretz في الإصدارات السابقة من Angular ، تمت السخرية من $browser.cookies() تمامًا بواسطة ngMock وكتابة ملف تعريف ارتباط من خلال $cookies كتب إلى خريطة في الذاكرة وليس المتصفح. لقد ناقشنا هذا في الماضي ونظرنا في إضافة مجموعة أدوات اختبار ترتبط بآلية ملفات تعريف الارتباط الجديدة وتوفر أدوات للتحقق من أن ملفات تعريف الارتباط مكتوبة بالمعلمات الصحيحة (لم يعد الأمر يتعلق فقط بقيمة ملفات تعريف الارتباط) ، لكنني لا أعتقد هذا أمر بالغ الأهمية.

butchpeters أعتقد أن أفضل طريقة للذهاب هي أن تسخر من $cookies في الاختبار:

module({$cookies: {
  store:{},
  put: function (key, value) { this.store[key] = value; },
  get: function (key) { return this.store[key]; }
}});

ها هو برنامج plunker الثابت: http://plnkr.co/edit/LTQHDtDM5FOiTiXl2waT؟p=preview

هل يعتقد فريق Angular أنه لا أحد يحتاج إلى اختبار الإعداد والحصول على ملفات تعريف الارتباط باستخدام ngCookies؟ لقد صدمت عندما اكتشفت أنه بعد مرور عام على إصدار 1.4 ، لم يتم التعامل مع هذا الأمر بعد.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات