Fixes #395. Test for scope completed
diff --git a/LanguageFeatures/Extension-methods/scope_baz_lib.dart b/LanguageFeatures/Extension-methods/scope_baz_lib.dart
deleted file mode 100644
index 61e3033..0000000
--- a/LanguageFeatures/Extension-methods/scope_baz_lib.dart
+++ /dev/null
@@ -1,15 +0,0 @@
-/*
- * Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file
- * for details. All rights reserved. Use of this source code is governed by a
- * BSD-style license that can be found in the LICENSE file.
- */
-/**
- * @author sgrekhov@unipro.ru
- */
-// SharedOptions=--enable-experiment=extension-methods
-library scope_baz_lib;
-
-extension Baz<T> on List<T> {
-  String baz() => "baz";
-  static String staticBaz = "staticBaz";
-}
diff --git a/LanguageFeatures/Extension-methods/scope_t01.dart b/LanguageFeatures/Extension-methods/scope_t01.dart
index af8e5ed..a4dd85a 100644
--- a/LanguageFeatures/Extension-methods/scope_t01.dart
+++ b/LanguageFeatures/Extension-methods/scope_t01.dart
@@ -21,5 +21,5 @@
   List<String> list = ["Lily", "was", "here"];
   Foo();
   Expect.equals("foo", list.foo());
-  Expect.equals("staticFoo", List.staticFoo);
+  Expect.equals("staticFoo", Foo.staticFoo);
 }
diff --git a/LanguageFeatures/Extension-methods/scope_t02.dart b/LanguageFeatures/Extension-methods/scope_t02.dart
index ca35248..b7b7e66 100644
--- a/LanguageFeatures/Extension-methods/scope_t02.dart
+++ b/LanguageFeatures/Extension-methods/scope_t02.dart
@@ -18,4 +18,6 @@
 
 main() {
   List<String> list = ["Lily", "was", "here"];
+  Bar(list).bar();      //# 01: compile-time error
+  Bar.staticBar;      //# 01: compile-time error
 }
diff --git a/LanguageFeatures/Extension-methods/scope_t03.dart b/LanguageFeatures/Extension-methods/scope_t03.dart
new file mode 100644
index 0000000..333ae1d
--- /dev/null
+++ b/LanguageFeatures/Extension-methods/scope_t03.dart
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file
+ * for details. All rights reserved. Use of this source code is governed by a
+ * BSD-style license that can be found in the LICENSE file.
+ */
+/**
+ * @assertion An extension is in scope if the name is shadowed by another
+ * declaration
+ *
+ * @description Check that if there is no naming conflict then extension is in
+ * scope
+ * @author sgrekhov@unipro.ru
+ */
+// SharedOptions=--enable-experiment=extension-methods
+import "../../Utils/expect.dart";
+import "scope_all_lib.dart";
+import "scope_bar_lib.dart";
+
+main() {
+  List<String> list = ["Lily", "was", "here"];
+  Expect.equals("baz", list.baz());
+  Expect.equals("staticBaz", Baz.staticBaz);
+}
diff --git a/LanguageFeatures/Extension-methods/scope_t04.dart b/LanguageFeatures/Extension-methods/scope_t04.dart
new file mode 100644
index 0000000..b385a9e
--- /dev/null
+++ b/LanguageFeatures/Extension-methods/scope_t04.dart
@@ -0,0 +1,25 @@
+/*
+ * Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file
+ * for details. All rights reserved. Use of this source code is governed by a
+ * BSD-style license that can be found in the LICENSE file.
+ */
+/**
+ * @assertion An extension is in scope if the name is shadowed by another
+ * declaration
+ *
+ * @description Check that name conflict can be solved by import a library with
+ * the prefix
+ * @author sgrekhov@unipro.ru
+ */
+// SharedOptions=--enable-experiment=extension-methods
+import "../../Utils/expect.dart";
+import "scope_all_lib.dart";
+import "scope_bar_lib.dart" as b;
+
+main() {
+  List<String> list = ["Lily", "was", "here"];
+  Expect.equals("bar", Bar(list).bar());
+  Expect.equals("staticBar", Bar.staticBar);
+  Expect.equals("bar-bar", b.Bar(list).bar());
+  Expect.equals("staticBar-Bar", b.Bar.staticBar);
+}