class

python – List all base classes in a hierarchy of given class?


See the __bases__ property available on a python class, which contains a tuple of the bases classes:

>>> def classlookup(cls):
...     c = list(cls.__bases__)
...     for base in c:
...         c.extend(classlookup(base))
...     return c
...
>>> class A: pass
...
>>> class B(A): pass
...
>>> class C(object, B): pass
...
>>> classlookup(C)
[<type 'object'>, <class __main__.B at 0x00AB7300>, <class __main__.A at 0x00A6D630>]



لینک منبع

javascript – Mocking external class dependencies within Jest


I’m really really struggling with this so please any kind of help is very appreciated….

I have an ExternalDependency module exporting a class.

TestSubject is another class module.
When TestSubject will be instantiated, an ExternalDependency instance will be composite inside this.

I would like to selectively swap between a mocked and a real version of the ExternalDependency class, for testing purposes.

ExternalDependency.js

module.exports = class ExternalDependency {
  constructor () {
    this.isMocked = false
  }
}

TestSubject.js

const ExternalDependency = require('./ExternalDependency')

module.exports = class TestSubject {
  constructor () {
    this.externalDependency = new ExternalDependency()
  }

  isExternalDependencyMocked () {
    return this.externalDependency.isMocked
  }
}

Test.js

const TestSubject = require('./TestSubject')

const MockedExternalDependency = class ExternalDependency {
  constructor () {
    this.isMocked = true
  }
}

describe ('TestSubject', () => {
  it ('will require and instantiate the real ExternalDependency', () => {
    const testSubject = new TestSubject()
    expect(testSubject.isExternalDependencyMocked()).toEqual(false)
  })
  it ('or the mocked one here', () => {
    jest.mock('./ExternalDependency', MockedExternalDependency) 
        // Failing with: 
        // babel-plugin-jest-hoist: The second argument
        // of `jest.mock` must be a function.
    const testSubject = new TestSubject()
    expect(testSubject.isExternalDependencyMocked()).toEqual(true)
  })
  it ('and back to the real', () => {
    jest.unmock('./ExternalDependency')
    const testSubject = new TestSubject()
    expect(testSubject.isExternalDependencyMocked()).toEqual(false)
  })
})

Ok, I know this is wrong.
But, how can I achieve a similar behaviour???



لینک منبع

ios – EXC_BAD_ACCESS when assigning a NSDecimalNumber to the class property from a function in Objective C


iOS App is being crashed in Xcode simulator assigning a NSDecimalNumber to the property of a class, following is the code:

CardData *cd = (CardData *)[swipeHQ getContext:contextCardData];
cd.amount   = chargeAmount; // issue here

amount is used in the class CardData as instance and property as well with the same name. Property is defined as follows:

@property (nonatomic, strong) NSDecimalNumber *amount;

Please suggest. Thanks in advanced.



لینک منبع

angularjs – Angular update class when data changes


So, I’m using firebase to store my data, so we have a realtime database;

And I’m setting a class like this:

[ngClass]=”isReserved(slot) ? ‘reserved-slot’: ‘free-slot'”

This checks an array if it exists, that array is populated in construct, and uses subscribe.

The data is updating live, if I click on an item, but if I got into firebase and delete a slot manually the class doesn’t change.

So how can I make the class change in realtime too, when change is
detected?

isReserved(dateTimeBusinessID) {
        if(typeof this.reservedSlots[dateTimeBusinessID] === "undefined" ) return false;
        return true;
}

This is how I populate the array on construct

private getReservedSlots() {

    this.firebase.database.list('/reservations', { query: { orderByChild: 'DateBusinessID', equalTo: this.formattedDateBusinessID } })
   .subscribe((data) => {
        if (data.length > 0) {
            for (var i = 0; i < data.length; i++) {
                var keyArray = data[i].time;
                this.reservedSlots[keyArray] = { 'class': 'false' }
            }
            console.log('changed detected');
        }
    });
}

The thing is I get “changed detected” when I manually delete data from firebase, so I guess I’m doing something wrong in the html;



لینک منبع

ios – Swift making copies of passed class instances


I have an init that takes in an instance of a class (which I hope everyone knows that that means it’s pass-by-reference)

I want to be able to copy the object and store in on two class instance variables, such that, I have a function that is meant to act as a “reset” where it will set any changes I had made up to a certain point go back to what it was before.

so something like:

convenience init(_ item:Item?){
    self.init()
    self.item = item
    self.undoItem = item
}


func reset(){
    self.item = self.undoItem
    self.reloadInfo()
}

I haven’t had much success with what should be a relatively straight forward solution. I’m just too new to Swift and iOS development.



لینک منبع

java – Error instantiating servlet class when using Intellij


I just moved this project from to my windows machine and I cannot get it to work using IntelliJ, previously using eclipse on a mac where it was working properly. The tomcat server runs but throws the exception:

 javax.servlet.ServletException: Error instantiating servlet class [com.soshal.web.LoginServlet]

The main difference I see is that IntelliJ changes the output folder structure, before it was just:

WEB-INF
-classes
--com

Now its like the following:
enter image description here



لینک منبع

خبرگزاری آريا – طوفان S CLASS؛ تجربه رانندگي با لوکس ترين محصول مرسدس بنز


طوفان S CLASS؛ تجربه رانندگي با لوکس ترين محصول مرسدس بنز

خبرگزاري آريا – مرسدس براي حفظ موقعيت خود در بازار خودروهاي لوکس، که با عرضه نسل جديد پرچمداران ديگر کمپاني ها اکنون رقابتي تر از گذشته شده، با بروزرساني ميان نسلي کلاس S، به اين پرچمدار فوق لوکس جاني دوباره بخشيده است. کلاس S، حامل اصلي دي ان اي طراحي محصولات اين کمپاني اشتوتگارتي حالا با دست پر به ميدان باز گشته است.

تغييرات ظاهري فقط بخش کوچکي از بهينه ازي هايي هستند که مرسدس بنز بر روي اين مدل انجام داده است، اما جزئيات و دقت بکار رفته در آن ها شگفت انگيزند. چراغ هاي اصلي جديد به همراه سه خط از لامپ هاي LED درون آن ها و ورودي هاي هواي متصل به هم، ظاهري پرادعا براي S کلاس جديد فراهم کرده اند.

براي اعمال اين تغييرات تعدادي از ريزه کاري هاي موجود در مدل قبل قرباني شده اند؛ اما S کلاس همچنان در کنار شکوه خود از ظرافت فوق العاده اي بهره مند است. تغيير جزيي چراغ ها در بخش عقب و رينگ هاي جديد که براي تمامي تريم ها عرضه شده، از ديگر نکات قابل ذکر هستند.

بروزرساني هاي کلاس S مرسدس تنها به ظاهر اين خودرو ختم نمي شوند بلکه پيشرانه ها نيز دستخوش تغيير شده اند. مدل هاي S450 و S450 4Matic، به وسيله موتور ۳ ليتري V6 به قدرت ۳۶۲ اسب بخار تغذيه مي شوند. در مدل هاي بالارده S560 و S560 4Matic، از پيشرانه ۴ ليتري V8 استفاده شده در S63 AMG با اندکي تقليل در قدرت خروجي استفاده خواهد شد. مدل هاي Maybach S650 و S65 AMG نيز به همراه موتور V12 عرضه خواهند شد. براي بازارهاي خارج از ايالات متحده، مدل S500 با پيشرانه جديد و بهتر از انواع بکار رفته در نمونه S450، تدارک ديده شده است.

در اين بررسي اوليه، نمونه ديفرانسيل عقب مدل S560 با توان توليد ۷۰۰ نيوتون متر گشتاور و ۴۶۳ اسب بخار نيرو حاضر شده بود که در مقايسه با مدل S550 افزايش قدرت ۱۴ اسب بخاري را تجربه کرده است.
برخلاف ظاهر نجيب و آرام، S560 به واسطه بهره گيري از پيشرانه توسعه يافته توسط مجموعه AMG بسياري از شاخصه هاي رفتاري مشابه با محصولات AMG را از خود بروز مي دهد. کار با غرشي جذاب آغاز شده و با انتقال نرم و يکنواخت گشتاور به چرخ ها ادامه مي يابد.

اين توزيع منظم گشتاور و نيرو در کنار گيربکس ۹ سرعته اي که حتي در سخت ترين شرايط رانندگي کوچکترين خطايي از خود بروز نمي دهد،  رسيدن به شتاب صفر تا صد ۴٫۵ ثانيه اي را براي پرچمدار ستاره سه پر ميسر مي کند. با وجود پتانسيل و قدرت بالا، گيربکس ۹G Tronic مرسدس بنز اجازه نمي دهد تا پيشرانه ي قدرتمند AMG بر هدف اصلي ساخت اين خودرو که نهايت آسايش و راحتي است، غلبه کند.

به عبارت ديگر نبايد پيشرانه  AMG اين خودرو گولتان بزند؛ اين خودرو همچنان يک سدان درجه يک لوکس است تا يک خودروي اسپرت. حرکات بدنه کاملاً در پيچ ها کنترل مي شوند، فرمان با وجود توازن خوبش حس خاصي از سطح جاده منتقل نمي کند و سيستم تعليق بادي تا جاي ممکن تکان هاي حاصل از دست انداز ها را پوشش مي دهد. البته S560 کاملاً کنترل شده نيست و در مواقع لزوم مي تواند هيجان انگيز هم باشد.

در کنار ارائه رانندگي لذت بخش، S کلاس مي تواند بسياري از امور را بجاي راننده بر عهده بگيرد. ليست امکانات اين خودرو در اين زمينه بسيار بلند بالاست؛ جدا از کروز کنترل تطبيق پذير مرسدس، سيستم هاي کمکي رانندگي، ترمز اضطراري، رادار تعويض خطوط، شناسايي محدوديت سرعت، سيستم تشخيص نقاط کور، سيستم حفظ خودرو بين خطوط و همين طور سامانه پيشبيني احتمال وقوع تصادفات، ايمني سرنشينان را تامين مي کنند.

سامانه COMAND مرسدس بنز نيز به لطف بروزرساني هايي که دريافت کرده هم اکنون از اپل کارپلي و اندرويد Auto نيز پشتيباني مي کند. به دليل وجود منو هاي پيچيده، کار با رابط کاربري اين سامانه چندان راحت نيست و عادت کردن به آن کمي زمان خواهد برد.

ولي از طرفي تمامي دستگيره ها و دکمه ها از بهترين متريال ممکن ساخته شده و همين امر موجب مي شود با اشتياق زياد از آن ها استفاده کرده و جزئيات زيباي ايجاد شده روي سطوح فلزي صيقل خورده را لمس کنيد.

کيفيت کابين کلاس S استانداردي در بين خودروهاي لوکس محسوب مي شود؛ بطوريکه امروزه بنتلي به سختي ميتواند با آن رقابت کند.چرم ناپا و نورپردازي کابين در ۶۴ رنگ به صورت استاندارد تنها بخشي از امکانات اين خودرو هستند.

مرسدس حتي پا را فراتر از مرز مي گذارد و سيستم Energize Comfort controls را به همراه اين خودرو عرضه مي کند که مجموعه اي از تنظيمات از پيش تعيين شده است که موجب تامين انرژي، سلامت و هوشياري راننده مي شوند.

چنين مواردي، دقت فوق العاده مرسدس بنز در پرداختن به جزئيات را نشان مي دهند. هنگامي که فکر مي کنيد همه چيز در يک خودرو موجود است، مرسدس با ارائه آپشن هايي از اين قبيل شگفت زده تان مي کند. با اين فيس ليفت تمام وجوه کلاس S به دقيق ترين شکل ممکن ارتقا يافته و به مرحله بالاتري در کيفيت رسيده اند.

پاسخ به اين پرسش که آيا کلاس S لوکس ترين خودروي جهان است بسيار دشوار است. اما وقتي به دنبال خودرويي مي گرديد که همانند اين مرسدس همه جوانب را پوشش دهد و بي عيب باشد، به مشکل بر خواهيد خورد.



لینک منبع