mirror of https://github.com/swig/swig
41 lines
860 B
JavaScript
41 lines
860 B
JavaScript
var abstract_inherit = require("abstract_inherit");
|
|
|
|
// Shouldn't be able to instantiate any of these classes
|
|
// since none of them implements the pure virtual function
|
|
// declared in the base class (Foo).
|
|
var Foo = abstract_inherit.Foo;
|
|
var Bar = abstract_inherit.Bar;
|
|
var Spam = abstract_inherit.Spam;
|
|
|
|
var caughtException = false;
|
|
try {
|
|
new Foo();
|
|
} catch (err) {
|
|
caughtException = true;
|
|
}
|
|
if (!caughtException) {
|
|
throw new Error("Foo should be instantiated as it is abstract");
|
|
}
|
|
|
|
caughtException = false;
|
|
try {
|
|
new Bar();
|
|
} catch (err) {
|
|
caughtException = true;
|
|
}
|
|
|
|
if (!caughtException) {
|
|
throw new Error("Bar should be instantiated as it is abstract");
|
|
}
|
|
|
|
caughtException = false;
|
|
try {
|
|
new Spam();
|
|
} catch (err) {
|
|
caughtException = true;
|
|
}
|
|
|
|
if (!caughtException) {
|
|
throw new Error("Spam should be instantiated as it is abstract");
|
|
}
|