Преглед на файлове

remove xml dependency from client

master
Wito Chandra преди 8 години
родител
ревизия
8e1dd85ed6
променени са 3 файла, в които са добавени 5 реда и са изтрити 8 реда
  1. +1
    -3
      lib/client.dart
  2. +2
    -1
      lib/domain/rss_feed.dart
  3. +2
    -4
      test/rss_test.dart

+ 1
- 3
lib/client.dart Целия файл

@@ -2,7 +2,6 @@ import 'dart:async';

import 'package:http/http.dart' as http;
import 'package:webfeedclient/domain/rss_feed.dart';
import 'package:xml/xml.dart' as xml;

class WebFeedClient {
http.Client client;
@@ -17,8 +16,7 @@ class WebFeedClient {
print("Response Body: ${response.body}");
return response.body;
}).then((bodyString) {
var document = xml.parse(bodyString);
var channel = new RssFeed.parse(document);
var channel = new RssFeed.parse(bodyString);
return channel;
});
}


+ 2
- 1
lib/domain/rss_feed.dart Целия файл

@@ -45,7 +45,8 @@ class RssFeed {
this.webMaster,
this.ttl});

factory RssFeed.parse(XmlDocument document) {
factory RssFeed.parse(String xmlString) {
XmlDocument document = parse(xmlString);
XmlElement channelElement;
try {
channelElement = document.findAllElements("channel").first;


+ 2
- 4
test/rss_test.dart Целия файл

@@ -7,18 +7,16 @@ import 'package:xml/xml.dart' as xml;
void main() {
test("parsing Invalid.xml", () {
var xmlString = new File("test/xml/Invalid.xml").readAsStringSync();
var doc = xml.parse(xmlString);

try {
new RssFeed.parse(doc);
new RssFeed.parse(xmlString);
fail("Should throw Argument Error");
} on ArgumentError {}
});
test("parsing RSS.xml", () {
var xmlString = new File("test/xml/RSS.xml").readAsStringSync();
var doc = xml.parse(xmlString);

var feed = new RssFeed.parse(doc);
var feed = new RssFeed.parse(xmlString);

expect(feed.title, "News - Foo bar News");
expect(feed.description, "Foo bar News and Updates feed provided by Foo bar, Inc.");


Зареждане…
Отказ
Запис